diff options
author | Jens Axboe <axboe@kernel.dk> | 2022-05-11 11:17:45 +0530 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-05-11 07:40:47 -0600 |
commit | ee692a21e9bf8354bd3ec816f1cf4bff8619ed77 (patch) | |
tree | 2477bacf0efd2834593319aafdbb2d97deab9922 /include/linux/fs.h | |
parent | 2bb04df7c2af9dad5d28771c723bc39b01cf7df4 (diff) | |
download | lwn-ee692a21e9bf8354bd3ec816f1cf4bff8619ed77.tar.gz lwn-ee692a21e9bf8354bd3ec816f1cf4bff8619ed77.zip |
fs,io_uring: add infrastructure for uring-cmd
file_operations->uring_cmd is a file private handler.
This is somewhat similar to ioctl but hopefully a lot more sane and
useful as it can be used to enable many io_uring capabilities for the
underlying operation.
IORING_OP_URING_CMD is a file private kind of request. io_uring doesn't
know what is in this command type, it's for the provider of ->uring_cmd()
to deal with.
Co-developed-by: Kanchan Joshi <joshi.k@samsung.com>
Signed-off-by: Kanchan Joshi <joshi.k@samsung.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20220511054750.20432-2-joshi.k@samsung.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r-- | include/linux/fs.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index bbde95387a23..87b5af1d9fbe 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -1953,6 +1953,7 @@ struct dir_context { #define REMAP_FILE_ADVISORY (REMAP_FILE_CAN_SHORTEN) struct iov_iter; +struct io_uring_cmd; struct file_operations { struct module *owner; @@ -1995,6 +1996,7 @@ struct file_operations { struct file *file_out, loff_t pos_out, loff_t len, unsigned int remap_flags); int (*fadvise)(struct file *, loff_t, loff_t, int); + int (*uring_cmd)(struct io_uring_cmd *ioucmd, unsigned int issue_flags); } __randomize_layout; struct inode_operations { |