X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=os%2Fos-linux.h;fp=os%2Fos-linux.h;h=12886037dd40ddf5dc3dafbd99be943253e4b78d;hp=16ed525881144cd190eb6457f5b313c6cf5d9188;hb=8d6e8d99c8e080a20c025cf16f98097b630c072e;hpb=04cd8b6fd11cfde50a433ff41c3dc8e9c1032139 diff --git a/os/os-linux.h b/os/os-linux.h index 16ed5258..12886037 100644 --- a/os/os-linux.h +++ b/os/os-linux.h @@ -118,16 +118,21 @@ enum { #define IOPRIO_MIN_PRIO_CLASS 0 #define IOPRIO_MAX_PRIO_CLASS 3 -static inline int ioprio_set(int which, int who, int ioprio_class, int ioprio) +static inline int ioprio_value(int ioprio_class, int ioprio) { /* * If no class is set, assume BE */ - if (!ioprio_class) - ioprio_class = IOPRIO_CLASS_BE; + if (!ioprio_class) + ioprio_class = IOPRIO_CLASS_BE; + + return (ioprio_class << IOPRIO_CLASS_SHIFT) | ioprio; +} - ioprio |= ioprio_class << IOPRIO_CLASS_SHIFT; - return syscall(__NR_ioprio_set, which, who, ioprio); +static inline int ioprio_set(int which, int who, int ioprio_class, int ioprio) +{ + return syscall(__NR_ioprio_set, which, who, + ioprio_value(ioprio_class, ioprio)); } #ifndef CONFIG_HAVE_GETTID