linux-yocto/block
Jens Axboe 84671b0630 block: don't revert iter for -EIOCBQUEUED
commit b13ee668e8 upstream.

blkdev_read_iter() has a few odd checks, like gating the position and
count adjustment on whether or not the result is bigger-than-or-equal to
zero (where bigger than makes more sense), and not checking the return
value of blkdev_direct_IO() before doing an iov_iter_revert(). The
latter can lead to attempting to revert with a negative value, which
when passed to iov_iter_revert() as an unsigned value will lead to
throwing a WARN_ON() because unroll is bigger than MAX_RW_COUNT.

Be sane and don't revert for -EIOCBQUEUED, like what is done in other
spots.

Cc: stable@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-02-17 09:40:25 +01:00
..
partitions partitions: ldm: remove the initial kernel-doc notation 2025-02-08 09:51:43 +01:00
badblocks.c
bdev.c block: Provide bdev_open_* functions 2024-03-26 18:19:40 -04:00
bfq-cgroup.c
bfq-iosched.c block, bfq: fix waker_bfqq UAF after bfq_split_bfqq() 2025-01-17 13:36:25 +01:00
bfq-iosched.h
bfq-wf2q.c
bio-integrity.c block: initialize integrity buffer to zero before writing it to media 2024-08-03 08:53:20 +02:00
bio.c block: Fix page refcounts for unaligned buffers in __bio_release_pages() 2024-04-03 15:28:27 +02:00
blk-cgroup-fc-appid.c
blk-cgroup-rwstat.c
blk-cgroup-rwstat.h
blk-cgroup.c blk-cgroup: Fix class @block_class's subsystem refcount leakage 2025-02-17 09:40:20 +01:00
blk-cgroup.h block: fix q->blkg_list corruption during disk rebind 2024-04-17 11:19:28 +02:00
blk-core.c block: Fix where bio IO priority gets set 2024-09-30 16:25:12 +02:00
blk-crypto-fallback.c blk-crypto: dynamically allocate fallback profile 2023-08-18 15:00:39 -06:00
blk-crypto-internal.h
blk-crypto-profile.c blk-crypto: use dynamic lock class for blk_crypto_profile::lock 2023-07-05 16:36:12 -06:00
blk-crypto-sysfs.c
blk-crypto.c
blk-flush.c block: fix request.queuelist usage in flush 2024-06-21 14:38:35 +02:00
blk-ia-ranges.c
blk-integrity.c block: remove the blk_flush_integrity call in blk_integrity_unregister 2024-09-08 07:54:47 +02:00
blk-ioc.c
blk-iocost.c blk-iocost: Avoid using clamp() on inuse in __propagate_weights() 2024-12-19 18:11:34 +01:00
blk-iolatency.c block: fix bad lockdep annotation in blk-iolatency 2023-08-10 17:24:53 -06:00
blk-ioprio.c
blk-ioprio.h
blk-lib.c
blk-map.c block: fix sanity checks in blk_rq_map_user_bvec 2024-11-08 16:28:24 +01:00
blk-merge.c block: fix bio_split_rw_at to take zone_write_granularity into account 2024-12-09 10:31:45 +01:00
blk-mq-cpumap.c
blk-mq-debugfs-zoned.c
blk-mq-debugfs.c
blk-mq-debugfs.h
blk-mq-pci.c
blk-mq-sched.c
blk-mq-sched.h
blk-mq-sysfs.c
blk-mq-tag.c block: Fix lockdep warning in blk_mq_mark_tag_wait 2024-08-29 17:33:30 +02:00
blk-mq-virtio.c
blk-mq.c block: avoid to reuse hctx not removed from cpuhp callback list 2025-01-02 10:32:11 +01:00
blk-mq.h block: fix ordering between checking BLK_MQ_S_STOPPED request adding 2024-12-09 10:32:50 +01:00
blk-pm.c
blk-pm.h
blk-rq-qos.c blk-rq-qos: fix crash on rq_qos_wait vs. rq_qos_wake_function race 2024-10-22 15:46:27 +02:00
blk-rq-qos.h
blk-settings.c block: Clear zone limits for a non-zoned stacked queue 2024-04-03 15:28:20 +02:00
blk-stat.c block: prevent division by zero in blk_rq_stat_sum() 2024-04-13 13:07:37 +02:00
blk-stat.h
blk-sysfs.c block: fix uaf for flush rq while iterating tags 2025-01-23 17:21:18 +01:00
blk-throttle.c blk-throttle: fix lockdep warning of "cgroup_mutex or RCU read lock required!" 2023-12-20 17:01:55 +01:00
blk-throttle.h blk-throttle: print signed value 'carryover_bytes/ios' for user 2023-08-30 10:15:01 -06:00
blk-timeout.c
blk-wbt.c blk-wbt: Fix detection of dirty-throttled tasks 2024-02-23 09:25:16 +01:00
blk-wbt.h
blk-zoned.c Merge branch '6.5/scsi-staging' into 6.5/scsi-fixes 2023-07-11 12:15:15 -04:00
blk.h block: support to account io_ticks precisely 2024-06-12 11:11:35 +02:00
bounce.c
bsg-lib.c
bsg.c
disk-events.c block: fix kernel-doc for disk_force_media_change() 2023-09-26 00:43:34 -06:00
early-lookup.c
elevator.c block: Fix elevator_get_default() checking for NULL q->tag_set 2024-11-17 15:08:56 +01:00
elevator.h
fops.c block: don't revert iter for -EIOCBQUEUED 2025-02-17 09:40:25 +01:00
genhd.c block: retry call probe after request_module in blk_request_module 2025-02-08 09:51:42 +01:00
holder.c
ioctl.c block: fix integer overflow in BLKSECDISCARD 2025-02-01 18:37:54 +01:00
ioprio.c
Kconfig block: sed-opal: keyring support for SED keys 2023-08-22 11:10:26 -06:00
Kconfig.iosched
kyber-iosched.c
Makefile
mq-deadline.c block/mq-deadline: Fix the tag reservation code 2024-08-03 08:53:22 +02:00
opal_proto.h block: sed-opal: handle empty atoms when parsing response 2024-03-26 18:19:12 -04:00
sed-opal.c block: sed-opal: avoid possible wrong address reference in read_sed_opal_key() 2024-06-21 14:38:35 +02:00
t10-pi.c