This seems to be missing any kind of changelog. Also the subject should say file_operations. Most of the instances here are not in a file system, and they most certainly aren't callbacks. I think you've also missed a whole lot of maintainers. > +#include "linux/security.h" That's now how we include kernel-wide headers. > #include <linux/blkdev.h> > #include <linux/blk-mq.h> > #include <linux/blk-integrity.h> > @@ -3308,6 +3309,13 @@ static int nvme_dev_release(struct inode *inode, struct file *file) > return 0; > } > > +int nvme_uring_cmd_sec(struct io_uring_cmd *ioucmd, struct security_uring_cmd *sec) Douple white space and overly long line. > +{ > + sec->flags = 0; > + sec->flags = SECURITY_URING_CMD_TYPE_IOCTL; Double initialization of ->flags. But how is this supposed to work to start with?