Commit e014ff8d4285b81f0de0719d8eee72bc50bfd4be

Authored by Oleg Nesterov
Committed by Jens Axboe
1 parent 9f83e45eb5

[PATCH] uninline ioprio_best()

Saves 376 bytes (5 callers) for me.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jens Axboe <axboe@suse.de>

Showing 2 changed files with 24 additions and 22 deletions Side-by-side Diff

... ... @@ -140,6 +140,29 @@
140 140 return ret;
141 141 }
142 142  
  143 +int ioprio_best(unsigned short aprio, unsigned short bprio)
  144 +{
  145 + unsigned short aclass = IOPRIO_PRIO_CLASS(aprio);
  146 + unsigned short bclass = IOPRIO_PRIO_CLASS(bprio);
  147 +
  148 + if (!ioprio_valid(aprio))
  149 + return bprio;
  150 + if (!ioprio_valid(bprio))
  151 + return aprio;
  152 +
  153 + if (aclass == IOPRIO_CLASS_NONE)
  154 + aclass = IOPRIO_CLASS_BE;
  155 + if (bclass == IOPRIO_CLASS_NONE)
  156 + bclass = IOPRIO_CLASS_BE;
  157 +
  158 + if (aclass == bclass)
  159 + return min(aprio, bprio);
  160 + if (aclass > bclass)
  161 + return bprio;
  162 + else
  163 + return aprio;
  164 +}
  165 +
143 166 asmlinkage long sys_ioprio_get(int which, int who)
144 167 {
145 168 struct task_struct *g, *p;
include/linux/ioprio.h
... ... @@ -59,28 +59,7 @@
59 59 /*
60 60 * For inheritance, return the highest of the two given priorities
61 61 */
62   -static inline int ioprio_best(unsigned short aprio, unsigned short bprio)
63   -{
64   - unsigned short aclass = IOPRIO_PRIO_CLASS(aprio);
65   - unsigned short bclass = IOPRIO_PRIO_CLASS(bprio);
66   -
67   - if (!ioprio_valid(aprio))
68   - return bprio;
69   - if (!ioprio_valid(bprio))
70   - return aprio;
71   -
72   - if (aclass == IOPRIO_CLASS_NONE)
73   - aclass = IOPRIO_CLASS_BE;
74   - if (bclass == IOPRIO_CLASS_NONE)
75   - bclass = IOPRIO_CLASS_BE;
76   -
77   - if (aclass == bclass)
78   - return min(aprio, bprio);
79   - if (aclass > bclass)
80   - return bprio;
81   - else
82   - return aprio;
83   -}
  62 +extern int ioprio_best(unsigned short aprio, unsigned short bprio);
84 63  
85 64 #endif