This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository linux.
from 8a5203c630c6 Merge tag 'v7.0-rc-part1-smb3-client-fixes' of git://git.s [...] new 4bfe0692d698 init_mknod(): turn into a trivial wrapper for do_mknodat() new b0f27ace0812 init_mkdir(): turn into a trivial wrapper for do_mkdirat() new 8714a249da48 init_symlink(): turn into a trivial wrapper for do_symlinkat() new 12b5bc2a0d33 init_link(): turn into a trivial wrapper for do_linkat() new 24df85ffb971 allow to use CLASS() for struct filename * new 0cf1149673da do_faccessat(): import pathname only once new 67591df968f4 do_fchmodat(): import pathname only once new 2e2d892fe9b7 do_fchownat(): import pathname only once new b756d8ba8310 do_utimes_path(): import pathname only once new 592ab7fbb83f chdir(2): import pathname only once new c3fa2b7cf5dd chroot(2): import pathname only once new 85a4fe3c99a7 user_statfs(): import pathname only once new cf6b819c229a do_sys_truncate(): import pathname only once new 1ee5220eb364 do_readlinkat(): import pathname only once new 41670a5900a8 get rid of audit_reusename() new ca2a04e84af7 ntfs: ->d_compare() must not block new 8ba29c85e2ef getname_flags() massage, part 1 new 8f2ac8481731 getname_flags() massage, part 2 new c3a3577cdb35 struct filename: use names_cachep only for getname() and friends new 8c888b31903c struct filename: saner handling of long names new 7ca83f8ebe86 fs: hide names_cache behind runtime const machinery new a9900a27dfe5 switch __getname_maybe_null() to CLASS(filename_flags) new 9fa3ec84587c allow incomplete imports of filenames new 741c97fecb6a struct filename ->refcnt doesn't need to be atomic new 58a49cc9ebb1 file_getattr(): filename_lookup() accepts ERR_PTR() as filename new def2a02a4cdc file_setattr(): filename_lookup() accepts ERR_PTR() as filename new 1c38f1f9b0a6 move_mount(): filename_lookup() accepts ERR_PTR() as filename new edefe6bda719 ksmbd_vfs_path_lookup(): vfs_path_parent_lookup() accepts [...] new ba33ac100d3f ksmbd_vfs_rename(): vfs_path_parent_lookup() accepts ERR_P [...] new 2e2d64aea5c5 do_filp_open(): DTRT when getting ERR_PTR() as pathname new 541003b576c3 rename do_filp_open() to do_file_open() new 151e3257d619 do_sys_openat2(): get rid of useless check, switch to CLAS [...] new 47b3b9bf93ec simplify the callers of file_open_name() new 2c941f26c6ab simplify the callers of do_open_execat() new bb850584aaa2 simplify the callers of alloc_bprm() new 88b33614f9ca execve: fold {compat_,}do_execve{,at}() into their sole callers new 194c760b6acd do_execveat_common(): don't consume filename reference new 0697b4f40069 switch {alloc,free}_bprm() to CLASS() new e6d50234ccb9 non-consuming variant of do_renameat2() new 037193b0ae83 non-consuming variant of do_linkat() new da72b76aaeaa non-consuming variant of do_symlinkat() new dc912db15ab1 non-consuming variant of do_mkdirat() new 88fdc2761797 non-consuming variant of do_mknodat() new e50aae1d39ac non-consuming variants of do_{unlinkat,rmdir}() new 5b9d406ff7cf filename_...xattr(): don't consume filename reference new 70772cafff8b file_[gs]etattr(2): switch to CLASS(filename_maybe_null) new 57cd2072bda9 mount_setattr(2): don't mess with LOOKUP_EMPTY new 819cb2c1dd8d do_open_execat(): don't care about LOOKUP_EMPTY new b79b3c1f6613 vfs_open_tree(): use CLASS(filename_uflags) new 154ef7dce6a4 name_to_handle_at(): use CLASS(filename_uflags) new 7f583ad97c6a fspick(2): use CLASS(filename_flags) new f770e4c1a488 do_fchownat(): unspaghettify a bit... new 4e9654c2bb46 chdir(2): unspaghettify a bit... new 7273ed4e780c do_utimes_path(): switch to CLASS(filename_uflags) new 97ed55d2f503 do_sys_truncate(): switch to CLASS(filename) new d4ffeabea744 do_readlinkat(): switch to CLASS(filename_flags) new 33b54bc79989 do_f{chmod,chown,access}at(): use CLASS(filename_uflags) new e9817d5b8c32 namei.c: convert getname_kernel() callers to CLASS(filenam [...] new 904f58b50711 namei.c: switch user pathname imports to CLASS(filename{,_flags}) new cbe9e300a2c1 move_mount(2): switch to CLASS(filename_maybe_null) new 57483461e19c chroot(2): switch to CLASS(filename) new ef7282e84934 quotactl_block(): switch to CLASS(filename) new a4503461fb6b statx: switch to CLASS(filename_maybe_null) new a0c3d1f3de37 user_statfs(): switch to CLASS(filename) new abb0434496c4 mqueue: switch to CLASS(filename) new 39537a335a61 ksmbd: use CLASS(filename_kernel) new 9b323d2f4740 alpha: switch osf_mount() to strndup_user() new 0787a93baa1a sysfs(2): fs_index() argument is _not_ a pathname new 26c9342bb761 Merge tag 'pull-filename' of git://git.kernel.org/pub/scm/ [...] new 3c7d76d6128a io_uring: IOPOLL polling improvements new 48ed70131e4f io_uring: Trim out unused includes new 7a8737e1132f io_uring: use release-acquire ordering for IORING_SETUP_R_ [...] new bcd4c95737d1 io_uring/msg_ring: drop unnecessary submitter_task checks new 130a82760718 io_uring/register: drop io_register_enable_rings() submitt [...] new 51fff55a66d8 io_uring/register: have io_parse_restrictions() return num [...] new e6ed0f051d55 io_uring/register: have io_parse_restrictions() set restri [...] new 09bd84421def io_uring/register: set ctx->restricted when restrictions a [...] new 991fb85a1d43 io_uring: move ctx->restricted check into io_check_restriction() new d6406c45f148 io_uring: track restrictions separately for IORING_OP and [...] new 697a5284ad96 io_uring: fix IOPOLL with passthrough I/O new 8661d0b142bc io_uring/uring_cmd: explicitly disallow cancelations for IOPOLL new 42b12cb5fd45 io_uring/timeout: annotate data race in io_flush_timeouts() new 07f3c3a1cd56 io_uring/eventfd: remove unused ctx->evfd_last_cq_tail member new 649dd18f5598 io_uring/sync: validate passed in offset new dd120bddc43a io_uring: add IO_URING_EXIT_WAIT_MAX definition new 1f293098a313 io_uring/io-wq: don't trigger hung task for syzbot craziness new 7642e6686060 io_uring: split out task work code into tw.c new 0105b0562a5e io_uring: split out CQ waiting code into wait.c new 5247c034a67f io_uring: introduce non-circular SQ new 82dadc8a4947 io_uring/rsrc: take unsigned index in io_rsrc_node_lookup() new 1edf0891d0f4 io_uring: fix bad indentation for setup flags if statement new 816095894c0f io_uring/io-wq: handle !sysctl_hung_task_timeout_secs new 6e0d71c288fd io_uring/futex: use GFP_KERNEL_ACCOUNT for futex data allocation new e26f51f6f687 io_uring/rsrc: use GFP_KERNEL_ACCOUNT consistently new 806ae939c41e io_uring/net: don't continue send bundle if poll was requi [...] new 38aa434ab933 io_uring/io-wq: add exit-on-idle state new 912146614894 io_uring: allow io-wq workers to exit when unused new ccd18ce29072 io_uring: Add SPDX id lines to remaining source files new 442ae406603a io_uring/kbuf: fix memory leak if io_buffer_add_list fails new f5d4feed174c Merge tag 'for-7.0/io_uring-20260206' of git://git.kernel. [...] new d42eb05e60fe io_uring: add support for BPF filtering for opcode restrictions new cff1c26b4223 io_uring/net: allow filtering on IORING_OP_SOCKET data new 8768770cf5d7 io_uring/bpf_filter: allow filtering on contents of struct [...] new e7c30675a7fb io_uring/bpf_filter: cache lookup table in ctx->bpf_filters new e7f67c2be787 io_uring/bpf_filter: add ref counts to struct io_bpf_filter new 9fd99788f3e5 io_uring: add task fork hook new ed82f35b926b io_uring: allow registration of per-task restrictions new 591beb0e3a03 Merge tag 'io_uring-bpf-restrictions.4-20260206' of git:// [...] new 4cef2fcda3ad rnull: replace `kernel::c_str!` with C-Strings new e1418af7660f brd: replace simple_strtol with kstrtoul in ramdisk_size new 9e371032cbf0 null_blk: Constify struct configfs_item_operations and con [...] new 483cbec34223 block/rnbd-proto: Handle PREFLUSH flag properly for IOs new 581cf833cac4 block: rnbd: add .release to rnbd_dev_ktype new ef63e9ef76c8 block/rnbd-proto: Check and retain the NOUNMAP flag for requests new e1384543e85b rnbd-srv: fix the trace format for flags new 4ac9690d4b94 rnbd-srv: Fix server side setting of bi_size for special IOs new 69d26698e4fd rnbd-srv: Zero the rsp buffer before using it new ee623c892aa5 block: use bvec iterator helper for bio_may_need_split() new 641864314866 block: don't initialize bi_vcnt for cloned bio in bio_iov_ [...] new 15f506a77ad6 io_uring: remove nr_segs recalculation in io_import_kbuf() new a31bde687b10 block: use pi_tuple_size in bi_offload_capable() new f7ba87dfa8e4 block: account for bi_bvec_done in bio_may_need_split() new c22756a9978e fscrypt: pass a real sector_t to fscrypt_zeroout_range_inl [...] new bc26e2efa2c5 fscrypt: keep multiple bios in flight in fscrypt_zeroout_r [...] new a3cc978e61f5 blk-crypto: add a bio_crypt_ctx() helper new aefc2a1fa2ed blk-crypto: submit the encrypted bio in blk_crypto_fallbac [...] new b37fbce460ad blk-crypto: optimize bio splitting in blk_crypto_fallback_ [...] new 2f655dcb2d92 blk-crypto: use on-stack skcipher requests for fallback en [...] new 3d939695e682 blk-crypto: use mempool_alloc_bulk for encrypted bio page [...] new 66e5a11d2ed6 blk-crypto: optimize data unit alignment checking new bb8e2019ad61 blk-crypto: handle the fallback above the block layer new 5df832ba5f9d Merge branch 'block-6.19' into for-7.0/block new 835042fb1971 blk-integrity: take const pointer in blk_integrity_rq() new e859e7c26a5c ublk: move ublk flag check functions earlier new 98bf2256855e ublk: support UBLK_PARAM_TYPE_INTEGRITY in device creation new f82f0a16a827 ublk: set UBLK_IO_F_INTEGRITY in ublksrv_io_desc new fc652d415cd8 ublk: split out ublk_copy_user_bvec() helper new 5bfbbc9938f5 ublk: split out ublk_user_copy() helper new ca80afd8708f ublk: inline ublk_check_and_get_req() into ublk_user_copy() new fd5a005fa6a2 ublk: move offset check out of __ublk_check_and_get_req() new be82a89066d5 ublk: implement integrity user copy new b2503e936b59 ublk: support UBLK_F_INTEGRITY new bfe1255712a3 ublk: optimize ublk_user_copy() on daemon task new c1d7c0f9cdf6 selftests: ublk: display UBLK_F_INTEGRITY support new 261b67f4e347 selftests: ublk: add utility to get block device metadata size new 6ed6476c4aef selftests: ublk: add kublk support for integrity params new 24f8a44b797f selftests: ublk: implement integrity user copy in kublk new a1805442674b selftests: ublk: support non-O_DIRECT backing files new f48250dc5ba8 selftests: ublk: add integrity data support to loop target new 9e9f635525b1 selftests: ublk: add integrity params test new 78796b6bae86 selftests: ublk: add end-to-end integrity test new 9e386f49fa26 ublk: make ublk_ctrl_stop_dev return void new 93ada1b3da39 ublk: add UBLK_CMD_TRY_STOP_DEV command new 65955a0993a0 selftests: ublk: add stop command with --safe option new 91e1c1bcf0f2 block, nvme: remove unused dma_iova_state function parameter new 41ee77b75308 block: fix blk_zone_cond_str() comment new 5e35a24c9618 block: improve blk_op_str() comment new 073b9bf9af46 nvme-pci: Use size_t for length fields to handle larger sizes new fcf463b92a08 types: move phys_vec definition to common header new df73d3c618b4 Merge branch 'for-7.0/blk-pvec' into for-7.0/block new 5e2fde1a9433 block: pass io_comp_batch to rq_end_io_fn callback new f7bc22ca0d55 nvme/io_uring: optimize IOPOLL completions for local ring context new d7a4693a250e rust: block: mq: use pin_init::zeroed() for queue_limits new 880528eaa67f rust: block: mq: use pin_init::zeroed() for tag_set new fb027d569422 ublk: define ublk_ch_batch_io_fops for the coming feature [...] new 7ba62f5969de ublk: prepare for not tracking task context for command batch new e86f89ab24f5 ublk: add new batch command UBLK_U_IO_PREP_IO_CMDS & UBLK_ [...] new b256795b3606 ublk: handle UBLK_U_IO_PREP_IO_CMDS new 1e500e106d5a ublk: handle UBLK_U_IO_COMMIT_IO_CMDS new f1f99ddf607a ublk: add io events fifo structure new 7a1bb41947ce ublk: add batch I/O dispatch infrastructure new a4d883755399 ublk: add UBLK_U_IO_FETCH_IO_CMDS for batch I/O processing new 3ac4796b888a ublk: refactor ublk_queue_rq() and add ublk_batch_queue_rq() new 29d0a927f9ef ublk: abort requests filled in event kfifo new e2723e6ce602 ublk: add new feature UBLK_F_BATCH_IO new 4d8fd7c5592a ublk: document feature UBLK_F_BATCH_IO new 7aa78d4a3c9c ublk: implement batch request completion via blk_mq_end_re [...] new 3f3850785594 ublk: fix batch I/O recovery -ENODEV error new caf84294ff98 selftests: ublk: fix user_data truncation for tgt_data >= 256 new 584709ad5ce3 selftests: ublk: replace assert() with ublk_assert() new f1d621b5a04e selftests: ublk: add ublk_io_buf_idx() for returning io bu [...] new dccbfa9d4164 selftests: ublk: add batch buffer management infrastructure new d468930a019d selftests: ublk: handle UBLK_U_IO_PREP_IO_CMDS new dee7024ffecb selftests: ublk: handle UBLK_U_IO_COMMIT_IO_CMDS new cb5a6b308700 selftests: ublk: handle UBLK_U_IO_FETCH_IO_CMDS new 4968fb7cc606 selftests: ublk: increase timeout to 150 seconds new 20aeab0b08a1 selftests: ublk: add --batch/-b for enabling F_BATCH_IO new e8cd481cc665 selftests: ublk: support arbitrary threads/queues combination new dbc635c4be7e ublk: move ublk_mark_io_ready() out of __ublk_fetch() new e4c4bfec2bb8 ublk: fix canceling flag handling in batch I/O recovery new e4d3fc6a22f5 selftests: ublk: fix test name new f50af896932f ublk: rename auto buffer registration helpers new 8e5bcc3a955a selftests: ublk: add missing gitignore for metadata_size binary new 72a41750f1a3 block: remove bio_last_bvec_all new 2d9f7150ac19 md/raid5: fix raid5_run() to return error when log_init() fails new fba4a980403d md: merge mddev has_superblock into mddev_flags new 4f6d2e648cbe md: merge mddev faillast_dev into mddev_flags new 10787568cc1f md: merge mddev serialize_policy into mddev_flags new 9340a95d489a md/raid5: use mempool to allocate stripe_request_ctx new 4ffe28ed0d7c md/raid5: make sure max_sectors is not less than io_opt new 090856dd8599 md/raid1: simplify uptodate handling in end_sync_write new 2a5d4549a28d md: factor error handling out of md_done_sync into helper new 4870b0f59c1a md/raid1,raid10: support narrow_write_error when badblocks [...] new aa9d12cfa1a5 md: break remaining operations on badblocks set failure in [...] new fd4d44c14ff6 md: mark rdev Faulty when badblocks setting fails new cc0dab317acb md: update curr_resync_completed even when MD_RECOVERY_INT [...] new af9c40ff5aed md: remove MD_RECOVERY_ERROR handling and simplify resync_ [...] new 6dd3aa08e83b md: factor out sync completion update into helper new 8ff59a72478d md: move finish_reshape to md_finish_sync() new 99582edb3f62 md/raid10: fix any_working flag handling in raid10_sync_request new 7435b73f05fb md/raid10: cleanup skip handling in raid10_sync_request new 5d1dd57929be md: remove recovery_disabled new cd1635d844d2 md/raid5: fix IO hang with degraded array with llbitmap new d119bd2e1643 md/md-llbitmap: fix percpu_ref not resurrected on suspend timeout new 46ef85f854df md/bitmap: fix GPF in write_page caused by resize race new f150e753cb8d md-cluster: fix NULL pointer dereference in process_metada [...] new cefcb9297fbd md raid: fix hang when stopping arrays with metadata throu [...] new 0d56d9ca9feb Merge tag 'md-7.0-20260127' of git://git.kernel.org/pub/sc [...] new b2b2ce870651 block: rnull: remove imports available via prelude new 7c746eb71fc3 rnbd-clt: fix refcount underflow in device unmap path new f46ebb910989 block: Replace snprintf with strscpy in check_partition new 0921abdcbd1c ublk: document IO reference counting design new 068f5b5ef5bf block: cleanup queue limit features definition new 2719bd1ee1a1 block: introduce blk_queue_rot() new ad5f2e2908c9 ublk: restore auto buf unregister refcount optimization new da562d92e675 block: introduce bdev_rot() new da7e4b75e50c ublk: Validate SQE128 flag before accessing the cmd new ed9f54cc1e33 ublk: use READ_ONCE() to read struct ublksrv_ctrl_cmd new 373df2c0255d ublk: drop ublk_ctrl_start_recovery() header argument new 66d3af8d5d67 ublk: check list membership before cancelling batch fetch command new 8443e2087e70 ublk: add UBLK_F_NO_AUTO_PART_SCAN feature flag new 3a4d8bed0b47 selftests: ublk: derive TID automatically from script name new e07a2039b6d4 selftests: ublk: add selftest for UBLK_F_NO_AUTO_PART_SCAN new 7a30d3dfea4a selftests: ublk: rename test_generic_15 to test_part_02 new 130975353b15 selftests: ublk: refactor test_null_04 into separate functions new 76334de7da40 selftests: ublk: disable partition scan for integrity tests new 4e0d293af9e3 selftests: ublk: mark each test start and end time in dmesg new 2feca79ef8df selftests: ublk: move test temp files into a sub directory new 491af20b3c6d ublk: remove "can't touch 'ublk_io' any more" comments new 5af302a15a1d selftests: ublk: simplify UBLK_TEST_DIR handling new 842b6520e579 selftests: ublk: refactor test_loop_08 into separate functions new 92734a4f3a7a selftests: ublk: add _ublk_del_dev helper function new 2021e6109de3 selftests: ublk: track created devices for per-test cleanup new b6bbc3bec19e selftests: ublk: add group-based test targets new 64406dd2f69f selftests: ublk: add _ublk_sleep helper for parallel execution new 56a08b87f9f2 selftests: ublk: increase timeouts for parallel test execution new d9a36ab302b1 selftests: ublk: reorganize tests into integrity and recov [...] new 5314d25afbc4 selftests: ublk: improve I/O ordering test with bpftrace new 6abc7d5dcf0e md/raid1: fix memory leak in raid1_run() new 05c8de4f09b0 md: fix return value of mddev_trylock new b36844f7d11e MAINTAINERS: Add Li Nan as md/raid reviewer new 229f4125746a Merge tag 'md-7.0-20260202' of git://git.kernel.org/pub/sc [...] new 06564bae93d0 sed-opal: ignore locking ranges array when not enabling SUM. new 2751b90051a0 blk-wbt: factor out a helper wbt_set_lat() new 41afaeeda509 blk-wbt: fix possible deadlock to nest pcpu_alloc_mutex un [...] new 3f0bea9f3b9e blk-mq-debugfs: factor out a helper to register debugfs fo [...] new 3c17a346ffc6 blk-rq-qos: fix possible debugfs_mutex deadlock new 70bafa5e31ff blk-mq-debugfs: make blk_mq_debugfs_register_rqos() static new 5ae4b12ee642 blk-mq-debugfs: remove blk_mq_debugfs_unregister_rqos() new 9d20fd6ce1ba blk-mq-debugfs: add missing debugfs_mutex in blk_mq_debugf [...] new 65d466b62984 blk-mq-debugfs: warn about possible deadlock new ee4784a83fb2 block: don't use strcpy to copy blockdev name new 9fc7900b1472 block: convert nr_requests to unsigned int new 1db61b0afdd7 blk-mq-sched: unify elevators checking for async requests new cf02d7d41b06 blk-mq: factor out a helper blk_mq_limit_depth() new f98afe4f31bb blk-mq: add a new queue sysfs attribute async_depth new 8cbe62f4d8c3 kyber: covert to use request_queue->async_depth new 988bb1b9eded mq-deadline: covert to use request_queue->async_depth new 2110858c5178 block, bfq: convert to use request_queue->async_depth new 2c04718edcd5 blk-mq: add documentation for new queue attribute async_dpeth new d4d78dd43cec block: remove redundant kill_bdev() call in set_blocksize() new ee81212f74a5 block: decouple secure erase size limit from discard size limit new 5d3ae80b4dc4 selftests: ublk: organize test directories by test ID new 72f4d6fca699 blk-mq: ABI/sysfs-block: fix docs build warnings new 0c00ed308d05 Merge tag 'for-7.0/block-20260206' of git://git.kernel.org [...] new fa0bdd45d7e3 block: add a BIO_MAX_SIZE constant and use it new 4d77007d42fd block: refactor get_contig_folio_len new 12da89e8844a block: open code bio_add_page and fix handling of mismatch [...] new 91b73c458182 iov_iter: extract a iov_iter_extract_bvecs helper from bio code new 301f5356521e block: remove bio_release_page new 8dd5e7c75d7b block: add helpers to bounce buffer an iov_iter into bios new 4ad357e39b2e iomap: fix submission side handling of completion side errors new 6e7a6c80198e iomap: simplify iomap_dio_bio_iter new 2631c9460229 iomap: split out the per-bio logic from iomap_dio_bio_iter new e2fcff5bb4c4 iomap: share code between iomap_dio_bio_end_io and iomap_f [...] new 45cec0de6c89 iomap: free the bio before completing the dio new c96b8b220271 iomap: rename IOMAP_DIO_DIRTY to IOMAP_DIO_USER_BACKED new d969bd72cf68 iomap: support ioends for direct reads new c9d114846b38 iomap: add a flag to bounce buffer direct I/O new 3373503df025 xfs: use bounce buffering direct I/O when the device requi [...] new 4adc13ed7c28 Merge tag 'for-7.0/block-stable-pages-20260206' of git://g [...]
The 291 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: Documentation/ABI/stable/sysfs-block | 45 + Documentation/block/biovecs.rst | 1 - Documentation/block/inline-encryption.rst | 6 + Documentation/block/ublk.rst | 64 +- Documentation/filesystems/porting.rst | 11 + MAINTAINERS | 1 + arch/alpha/kernel/osf_sys.c | 34 +- block/bdev.c | 1 - block/bfq-iosched.c | 65 +- block/bio-integrity-auto.c | 14 +- block/bio.c | 337 ++-- block/blk-core.c | 21 +- block/blk-crypto-fallback.c | 447 +++-- block/blk-crypto-internal.h | 30 +- block/blk-crypto.c | 78 +- block/blk-flush.c | 6 +- block/blk-iocost.c | 2 +- block/blk-iolatency.c | 5 +- block/blk-lib.c | 9 +- block/blk-merge.c | 38 +- block/blk-mq-debugfs.c | 68 +- block/blk-mq-debugfs.h | 8 +- block/blk-mq-dma.c | 14 +- block/blk-mq-sched.h | 5 + block/blk-mq.c | 77 +- block/blk-rq-qos.c | 11 - block/blk-sysfs.c | 81 +- block/blk-wbt.c | 154 +- block/blk-wbt.h | 7 +- block/blk-zoned.c | 10 +- block/blk.h | 29 +- block/elevator.c | 1 + block/ioctl.c | 2 +- block/kyber-iosched.c | 33 +- block/mq-deadline.c | 39 +- block/partitions/core.c | 3 +- block/sed-opal.c | 3 +- drivers/block/brd.c | 3 +- drivers/block/loop.c | 2 +- drivers/block/null_blk/main.c | 4 +- drivers/block/rnbd/rnbd-clt-sysfs.c | 8 + drivers/block/rnbd/rnbd-clt.c | 19 +- drivers/block/rnbd/rnbd-proto.h | 18 +- drivers/block/rnbd/rnbd-srv-trace.h | 22 +- drivers/block/rnbd/rnbd-srv.c | 36 +- drivers/block/rnull/configfs.rs | 3 +- drivers/block/rnull/rnull.rs | 3 - drivers/block/ublk_drv.c | 2113 +++++++++++++++++--- drivers/md/dm-rq.c | 3 +- drivers/md/md-bitmap.c | 7 +- drivers/md/md-cluster.c | 7 +- drivers/md/md-llbitmap.c | 4 +- drivers/md/md.c | 188 +- drivers/md/md.h | 29 +- drivers/md/raid0.c | 4 +- drivers/md/raid1-10.c | 5 - drivers/md/raid1.c | 89 +- drivers/md/raid1.h | 5 - drivers/md/raid10.c | 178 +- drivers/md/raid10.h | 5 - drivers/md/raid5.c | 143 +- drivers/md/raid5.h | 4 +- drivers/nvme/host/core.c | 3 +- drivers/nvme/host/ioctl.c | 23 +- drivers/nvme/host/pci.c | 22 +- drivers/nvme/target/admin-cmd.c | 4 +- drivers/nvme/target/passthru.c | 3 +- drivers/scsi/scsi_error.c | 3 +- drivers/scsi/sg.c | 6 +- drivers/scsi/st.c | 3 +- drivers/target/target_core_pscsi.c | 6 +- fs/buffer.c | 3 +- fs/coredump.c | 3 +- fs/crypto/bio.c | 91 +- fs/dcache.c | 8 +- fs/exec.c | 178 +- fs/ext4/page-io.c | 3 +- fs/ext4/readpage.c | 9 +- fs/f2fs/data.c | 4 +- fs/f2fs/file.c | 3 +- fs/fhandle.c | 5 +- fs/file_attr.c | 12 +- fs/filesystems.c | 9 +- fs/fsopen.c | 6 +- fs/init.c | 98 +- fs/internal.h | 17 +- fs/iomap/direct-io.c | 194 +- fs/iomap/ioend.c | 8 + fs/namei.c | 420 ++-- fs/namespace.c | 22 +- fs/ntfs3/dir.c | 5 +- fs/ntfs3/fsntfs.c | 4 +- fs/ntfs3/inode.c | 13 +- fs/ntfs3/namei.c | 17 +- fs/ntfs3/xattr.c | 5 +- fs/open.c | 119 +- fs/quota/quota.c | 3 +- fs/smb/server/vfs.c | 15 +- fs/stat.c | 28 +- fs/statfs.c | 3 +- fs/utimes.c | 8 +- fs/xattr.c | 33 +- fs/xfs/xfs_aops.c | 8 +- fs/xfs/xfs_file.c | 41 +- include/asm-generic/vmlinux.lds.h | 3 +- include/linux/audit.h | 11 - include/linux/bio.h | 32 +- include/linux/blk-crypto.h | 32 + include/linux/blk-integrity.h | 6 +- include/linux/blk-mq-dma.h | 2 +- include/linux/blk-mq.h | 4 +- include/linux/blk_types.h | 7 +- include/linux/blkdev.h | 24 +- include/linux/fs.h | 41 +- include/linux/io_uring.h | 14 +- include/linux/io_uring_types.h | 42 +- include/linux/iomap.h | 9 + include/linux/sched.h | 1 + include/linux/types.h | 5 + include/linux/uio.h | 3 + include/uapi/linux/io_uring.h | 22 + include/uapi/linux/io_uring/bpf_filter.h | 62 + include/uapi/linux/ublk_cmd.h | 121 +- io_uring/Kconfig | 5 + io_uring/Makefile | 15 +- io_uring/alloc_cache.h | 2 + io_uring/bpf_filter.c | 430 ++++ io_uring/bpf_filter.h | 48 + io_uring/cancel.c | 5 +- io_uring/cmd_net.c | 1 + io_uring/eventfd.h | 1 + io_uring/filetable.h | 1 - io_uring/fs.c | 106 +- io_uring/futex.c | 2 +- io_uring/io-wq.c | 51 +- io_uring/io-wq.h | 2 + io_uring/io_uring.c | 830 +------- io_uring/io_uring.h | 91 +- io_uring/kbuf.c | 5 +- io_uring/memmap.c | 2 +- io_uring/memmap.h | 1 + io_uring/mock_file.c | 1 + io_uring/msg_ring.c | 28 +- io_uring/net.c | 15 +- io_uring/net.h | 6 + io_uring/notif.c | 1 + io_uring/openclose.c | 35 +- io_uring/openclose.h | 3 + io_uring/refs.h | 1 + io_uring/register.c | 133 +- io_uring/rsrc.c | 13 +- io_uring/rsrc.h | 2 +- io_uring/rw.c | 39 +- io_uring/slist.h | 13 +- io_uring/sqpoll.c | 8 +- io_uring/statx.c | 17 +- io_uring/sync.c | 2 + io_uring/tctx.c | 53 +- io_uring/timeout.c | 2 +- io_uring/tw.c | 355 ++++ io_uring/tw.h | 116 ++ io_uring/uring_cmd.c | 9 + io_uring/wait.c | 308 +++ io_uring/wait.h | 49 + io_uring/xattr.c | 30 +- ipc/mqueue.c | 11 +- kernel/acct.c | 4 +- kernel/auditsc.c | 29 +- kernel/fork.c | 6 + kernel/trace/blktrace.c | 2 +- lib/iov_iter.c | 98 + mm/huge_memory.c | 15 +- mm/swapfile.c | 21 +- rust/kernel/block/mq/gen_disk.rs | 3 +- rust/kernel/block/mq/tag_set.rs | 4 +- tools/testing/selftests/ublk/.gitignore | 6 +- tools/testing/selftests/ublk/Makefile | 70 +- tools/testing/selftests/ublk/batch.c | 607 ++++++ tools/testing/selftests/ublk/common.c | 6 +- tools/testing/selftests/ublk/fault_inject.c | 1 + tools/testing/selftests/ublk/file_backed.c | 101 +- tools/testing/selftests/ublk/kublk.c | 293 ++- tools/testing/selftests/ublk/kublk.h | 234 ++- tools/testing/selftests/ublk/metadata_size.c | 36 + tools/testing/selftests/ublk/null.c | 19 +- tools/testing/selftests/ublk/settings | 1 + tools/testing/selftests/ublk/stripe.c | 23 +- .../ublk/{test_generic_08.sh => test_batch_01.sh} | 9 +- tools/testing/selftests/ublk/test_batch_02.sh | 29 + tools/testing/selftests/ublk/test_batch_03.sh | 29 + tools/testing/selftests/ublk/test_common.sh | 73 +- tools/testing/selftests/ublk/test_generic_01.sh | 48 - tools/testing/selftests/ublk/test_generic_02.sh | 23 +- tools/testing/selftests/ublk/test_generic_03.sh | 1 - tools/testing/selftests/ublk/test_generic_06.sh | 1 - tools/testing/selftests/ublk/test_generic_07.sh | 1 - tools/testing/selftests/ublk/test_generic_08.sh | 1 - tools/testing/selftests/ublk/test_generic_09.sh | 1 - tools/testing/selftests/ublk/test_generic_10.sh | 1 - tools/testing/selftests/ublk/test_generic_12.sh | 1 - tools/testing/selftests/ublk/test_generic_13.sh | 1 - tools/testing/selftests/ublk/test_generic_16.sh | 56 + tools/testing/selftests/ublk/test_integrity_01.sh | 105 + tools/testing/selftests/ublk/test_integrity_02.sh | 141 ++ tools/testing/selftests/ublk/test_loop_01.sh | 1 - tools/testing/selftests/ublk/test_loop_02.sh | 1 - tools/testing/selftests/ublk/test_loop_03.sh | 1 - tools/testing/selftests/ublk/test_loop_04.sh | 1 - tools/testing/selftests/ublk/test_loop_05.sh | 1 - tools/testing/selftests/ublk/test_loop_06.sh | 1 - tools/testing/selftests/ublk/test_loop_07.sh | 1 - tools/testing/selftests/ublk/test_null_01.sh | 1 - tools/testing/selftests/ublk/test_null_02.sh | 1 - tools/testing/selftests/ublk/test_null_03.sh | 1 - tools/testing/selftests/ublk/test_part_01.sh | 104 + .../ublk/{test_generic_15.sh => test_part_02.sh} | 7 +- .../{test_generic_04.sh => test_recover_01.sh} | 6 +- .../{test_generic_05.sh => test_recover_02.sh} | 6 +- .../{test_generic_11.sh => test_recover_03.sh} | 1 - .../{test_generic_14.sh => test_recover_04.sh} | 1 - tools/testing/selftests/ublk/test_stress_01.sh | 1 - tools/testing/selftests/ublk/test_stress_02.sh | 1 - tools/testing/selftests/ublk/test_stress_03.sh | 1 - tools/testing/selftests/ublk/test_stress_04.sh | 1 - tools/testing/selftests/ublk/test_stress_05.sh | 1 - tools/testing/selftests/ublk/test_stress_06.sh | 1 - tools/testing/selftests/ublk/test_stress_07.sh | 1 - tools/testing/selftests/ublk/test_stress_08.sh | 44 + tools/testing/selftests/ublk/test_stress_09.sh | 43 + tools/testing/selftests/ublk/test_stripe_01.sh | 1 - tools/testing/selftests/ublk/test_stripe_02.sh | 1 - tools/testing/selftests/ublk/test_stripe_03.sh | 1 - tools/testing/selftests/ublk/test_stripe_04.sh | 1 - tools/testing/selftests/ublk/test_stripe_05.sh | 1 - tools/testing/selftests/ublk/test_stripe_06.sh | 1 - tools/testing/selftests/ublk/trace/seq_io.bt | 47 +- tools/testing/selftests/ublk/utils.h | 64 + 237 files changed, 8204 insertions(+), 3661 deletions(-) create mode 100644 include/uapi/linux/io_uring/bpf_filter.h create mode 100644 io_uring/bpf_filter.c create mode 100644 io_uring/bpf_filter.h create mode 100644 io_uring/tw.c create mode 100644 io_uring/tw.h create mode 100644 io_uring/wait.c create mode 100644 io_uring/wait.h create mode 100644 tools/testing/selftests/ublk/batch.c create mode 100644 tools/testing/selftests/ublk/metadata_size.c create mode 100644 tools/testing/selftests/ublk/settings copy tools/testing/selftests/ublk/{test_generic_08.sh => test_batch_01.sh} (62%) create mode 100755 tools/testing/selftests/ublk/test_batch_02.sh create mode 100755 tools/testing/selftests/ublk/test_batch_03.sh delete mode 100755 tools/testing/selftests/ublk/test_generic_01.sh create mode 100755 tools/testing/selftests/ublk/test_generic_16.sh create mode 100755 tools/testing/selftests/ublk/test_integrity_01.sh create mode 100755 tools/testing/selftests/ublk/test_integrity_02.sh create mode 100755 tools/testing/selftests/ublk/test_part_01.sh rename tools/testing/selftests/ublk/{test_generic_15.sh => test_part_02.sh} (94%) rename tools/testing/selftests/ublk/{test_generic_04.sh => test_recover_01.sh} (81%) rename tools/testing/selftests/ublk/{test_generic_05.sh => test_recover_02.sh} (82%) rename tools/testing/selftests/ublk/{test_generic_11.sh => test_recover_03.sh} (98%) rename tools/testing/selftests/ublk/{test_generic_14.sh => test_recover_04.sh} (98%) create mode 100755 tools/testing/selftests/ublk/test_stress_08.sh create mode 100755 tools/testing/selftests/ublk/test_stress_09.sh