Ming Lei
d2ccad3c9c
block: fix get_max_segment_size() overflow on 32bit arch
...
commit 4a2f704eb2d831a2d73d7f4cdd54f45c49c3c353 upstream.
Commit 429120f3df2d starts to take account of segment's start dma address
when computing max segment size, and data type of 'unsigned long'
is used to do that. However, the segment mask may be 0xffffffff, so
the figured out segment size may be overflowed in case of zero physical
address on 32bit arch.
Fix the issue by returning queue_max_segment_size() directly when that
happens.
Fixes: 429120f3df2d ("block: fix splitting segments on boundary masks")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Cc: Christoph Hellwig <hch@lst.de>
Tested-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-07-22 09:33:17 +02:00
..
partitions
badblocks.c
bfq-cgroup.c
block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline
2020-04-23 10:36:26 +02:00
bfq-iosched.c
block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup
2020-04-23 10:36:26 +02:00
bfq-iosched.h
block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup
2020-04-23 10:36:26 +02:00
bfq-wf2q.c
block, bfq: get a ref to a group when adding it to a service tree
2020-03-12 13:00:32 +01:00
bio-integrity.c
block: release bip in a right way in error path
2020-07-16 08:16:36 +02:00
bio.c
block: fix memleak of bio integrity data
2020-01-26 10:01:09 +01:00
blk-cgroup.c
blkcg: make blkcg_print_stat() print stats only for online blkgs
2019-11-06 17:08:38 -07:00
blk-core.c
Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT"
2020-06-03 08:21:27 +02:00
blk-exec.c
blk-flush.c
blk-mq: insert passthrough request into hctx->dispatch directly
2020-03-21 08:11:52 +01:00
blk-integrity.c
block: centralize PI remapping logic to the block layer
2019-09-17 20:03:49 -06:00
blk-ioc.c
block: Fix use-after-free issue accessing struct io_cq
2020-04-17 10:50:04 +02:00
blk-iocost.c
iocost: don't let vrate run wild while there's no saturation signal
2020-06-22 09:31:06 +02:00
blk-iolatency.c
blk-lib.c
blk-map.c
block: fix memleak when __blk_rq_map_user_iov() is failed
2020-01-12 12:21:43 +01:00
blk-merge.c
block: fix get_max_segment_size() overflow on 32bit arch
2020-07-22 09:33:17 +02:00
blk-mq-cpumap.c
blk-mq-debugfs-zoned.c
blk-mq-debugfs.c
blk-mq-debugfs: update blk_queue_flag_name[] accordingly for new flags
2020-07-22 09:32:52 +02:00
blk-mq-debugfs.h
blk-mq-pci.c
blk-mq-rdma.c
blk-mq-sched.c
blk-mq: insert flush request to the front of dispatch queue
2020-03-21 08:11:57 +01:00
blk-mq-sched.h
blk-mq-sysfs.c
blk-mq: make sure that line break can be printed
2019-12-17 19:56:53 +01:00
blk-mq-tag.c
blk-mq-tag.h
blk-mq-virtio.c
blk-mq.c
blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight()
2020-07-16 08:16:47 +02:00
blk-mq.h
blk-mq: insert passthrough request into hctx->dispatch directly
2020-03-21 08:11:52 +01:00
blk-pm.c
block: bypass blk_set_runtime_active for uninitialized q->dev
2019-09-12 07:11:56 -06:00
blk-pm.h
blk-rq-qos.c
blk-wbt: fix performance regression in wbt scale_up/scale_down
2019-10-06 09:26:41 -06:00
blk-rq-qos.h
blk-rq-qos: fix first node deletion of rq_qos_del()
2019-10-15 10:13:13 -06:00
blk-settings.c
block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices
2020-04-17 10:50:01 +02:00
blk-softirq.c
blk-stat.c
blk-stat.h
blk-sysfs.c
rq-qos: get rid of redundant wbt_update_limits()
2019-09-27 01:13:10 -06:00
blk-throttle.c
block: make rq sector size accessible for block stats
2019-09-15 16:02:08 -06:00
blk-timeout.c
blk-wbt.c
blk-wbt: fix performance regression in wbt scale_up/scale_down
2019-10-06 09:26:41 -06:00
blk-wbt.h
blk-zoned.c
blk.h
block: fix memleak of bio integrity data
2020-01-26 10:01:09 +01:00
bounce.c
bsg-lib.c
block: Fix the type of 'sts' in bsg_queue_rq()
2020-01-23 08:22:44 +01:00
bsg.c
cmdline-parser.c
compat_ioctl.c
compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES
2020-01-09 10:19:58 +01:00
elevator.c
block: Fix elv_support_iosched()
2019-10-14 13:54:09 -06:00
genhd.c
block: Delay default elevator initialization
2019-09-05 19:52:34 -06:00
ioctl.c
ioprio.c
Kconfig
Kconfig.iosched
kyber-iosched.c
Makefile
mq-deadline.c
opal_proto.h
partition-generic.c
scsi_ioctl.c
sed-opal.c
block: sed-opal: fix sparse warning: convert __be64 data
2019-10-03 14:21:32 -06:00
t10-pi.c
block: t10-pi: fix -Wswitch warning
2019-09-23 08:05:19 -06:00