diff options
author | Adam Manzanares <adam.manzanares@wdc.com> | 2018-05-22 13:52:19 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2018-05-31 10:50:55 -0400 |
commit | d9a08a9e616beeccdbd0e7262b7225ffdfa49e92 (patch) | |
tree | f2f7985aa07ccee2337631273f4b906389649477 /include/linux/fs.h | |
parent | fc28724d67c90ff48b976e0687caf79993160bed (diff) |
fs: Add aio iopriority support
This is the per-I/O equivalent of the ioprio_set system call.
When IOCB_FLAG_IOPRIO is set on the iocb aio_flags field, then we set the
newly added kiocb ki_ioprio field to the value in the iocb aio_reqprio field.
This patch depends on block: add ioprio_check_cap function.
Signed-off-by: Adam Manzanares <adam.manzanares@wdc.com>
Reviewed-by: Jeff Moyer <jmoyer@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r-- | include/linux/fs.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index b432fc3feb93..eef9334b26d1 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -36,6 +36,7 @@ | |||
36 | #include <linux/delayed_call.h> | 36 | #include <linux/delayed_call.h> |
37 | #include <linux/uuid.h> | 37 | #include <linux/uuid.h> |
38 | #include <linux/errseq.h> | 38 | #include <linux/errseq.h> |
39 | #include <linux/ioprio.h> | ||
39 | 40 | ||
40 | #include <asm/byteorder.h> | 41 | #include <asm/byteorder.h> |
41 | #include <uapi/linux/fs.h> | 42 | #include <uapi/linux/fs.h> |
@@ -300,6 +301,7 @@ struct kiocb { | |||
300 | void *private; | 301 | void *private; |
301 | int ki_flags; | 302 | int ki_flags; |
302 | u16 ki_hint; | 303 | u16 ki_hint; |
304 | u16 ki_ioprio; /* See linux/ioprio.h */ | ||
303 | } __randomize_layout; | 305 | } __randomize_layout; |
304 | 306 | ||
305 | static inline bool is_sync_kiocb(struct kiocb *kiocb) | 307 | static inline bool is_sync_kiocb(struct kiocb *kiocb) |
@@ -1944,6 +1946,7 @@ static inline void init_sync_kiocb(struct kiocb *kiocb, struct file *filp) | |||
1944 | .ki_filp = filp, | 1946 | .ki_filp = filp, |
1945 | .ki_flags = iocb_flags(filp), | 1947 | .ki_flags = iocb_flags(filp), |
1946 | .ki_hint = ki_hint_validate(file_write_hint(filp)), | 1948 | .ki_hint = ki_hint_validate(file_write_hint(filp)), |
1949 | .ki_ioprio = IOPRIO_PRIO_VALUE(IOPRIO_CLASS_NONE, 0), | ||
1947 | }; | 1950 | }; |
1948 | } | 1951 | } |
1949 | 1952 | ||