android_kernel_motorola_sm6225/block
Mikulas Patocka a7f79052d1 block: fix an integer overflow in logical block size
commit ad6bf88a6c19a39fb3b0045d78ea880325dfcf15 upstream.

Logical block size has type unsigned short. That means that it can be at
most 32768. However, there are architectures that can run with 64k pages
(for example arm64) and on these architectures, it may be possible to
create block devices with 64k block size.

For exmaple (run this on an architecture with 64k pages):

Mount will fail with this error because it tries to read the superblock using 2-sector
access:
  device-mapper: writecache: I/O is not aligned, sector 2, size 1024, block size 65536
  EXT4-fs (dm-0): unable to read superblock

This patch changes the logical block size from unsigned short to unsigned
int to avoid the overflow.

Cc: stable@vger.kernel.org
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-23 08:21:29 +01:00
..
partitions
badblocks.c
bfq-cgroup.c
bfq-iosched.c blok, bfq: do not plug I/O if all queues are weight-raised 2019-11-20 18:46:44 +01:00
bfq-iosched.h block, bfq: inject other-queue I/O into seeky idle queues on NCQ flash 2019-11-20 18:46:44 +01:00
bfq-wf2q.c
bio-integrity.c block/bio-integrity: fix a memory leak bug 2019-07-31 07:27:08 +02:00
bio.c
blk-cgroup.c blkcg: make blkcg_print_stat() print stats only for online blkgs 2019-11-12 19:21:19 +01:00
blk-core.c block: call rq_qos_exit() after queue is frozen 2019-12-01 09:17:06 +01:00
blk-exec.c
blk-flush.c block: fix null pointer dereference in blk_mq_rq_timed_out() 2019-10-05 13:10:08 +02:00
blk-integrity.c
blk-ioc.c
blk-iolatency.c blk-iolatency: fix STS_AGAIN handling 2019-09-16 08:21:41 +02:00
blk-lib.c
blk-map.c block: fix memleak when __blk_rq_map_user_iov() is failed 2020-01-12 12:17:22 +01:00
blk-merge.c block: fix single range discard merge 2019-12-17 20:35:21 +01:00
blk-mq-cpumap.c
blk-mq-debugfs-zoned.c
blk-mq-debugfs.c block, scsi: Change the preempt-only flag into a counter 2019-08-04 09:30:57 +02:00
blk-mq-debugfs.h
blk-mq-pci.c
blk-mq-rdma.c
blk-mq-sched.c
blk-mq-sched.h
blk-mq-sysfs.c blk-mq: make sure that line break can be printed 2019-12-17 20:35:48 +01:00
blk-mq-tag.c
blk-mq-tag.h
blk-mq-virtio.c
blk-mq.c block: fix null pointer dereference in blk_mq_rq_timed_out() 2019-10-05 13:10:08 +02:00
blk-mq.h blk-mq: free hw queue's resource in hctx's release handler 2019-09-16 08:22:13 +02:00
blk-rq-qos.c blk-wbt: fix performance regression in wbt scale_up/scale_down 2019-10-17 13:45:16 -07:00
blk-rq-qos.h blk-rq-qos: fix first node deletion of rq_qos_del() 2019-10-29 09:20:09 +01:00
blk-settings.c block: fix an integer overflow in logical block size 2020-01-23 08:21:29 +01:00
blk-softirq.c
blk-stat.c
blk-stat.h
blk-sysfs.c block: call rq_qos_exit() after queue is frozen 2019-12-01 09:17:06 +01:00
blk-tag.c
blk-throttle.c blk-throttle: fix zero wait time for iops throttled group 2019-07-26 09:14:30 +02:00
blk-timeout.c
blk-wbt.c blk-wbt: fix performance regression in wbt scale_up/scale_down 2019-10-17 13:45:16 -07:00
blk-wbt.h
blk-zoned.c
blk.h block: fix null pointer dereference in blk_mq_rq_timed_out() 2019-10-05 13:10:08 +02:00
bounce.c
bsg-lib.c
bsg.c
cfq-iosched.c
cmdline-parser.c
compat_ioctl.c compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE 2020-01-09 10:19:01 +01:00
deadline-iosched.c
elevator.c
genhd.c block: fix use-after-free on gendisk 2019-05-31 06:46:18 -07:00
ioctl.c
ioprio.c
Kconfig
Kconfig.iosched
kyber-iosched.c
Makefile
mq-deadline.c block: mq-deadline: Fix queue restart handling 2019-10-07 18:57:19 +02:00
noop-iosched.c
opal_proto.h
partition-generic.c block: fix use-after-free on gendisk 2019-05-31 06:46:18 -07:00
scsi_ioctl.c
sed-opal.c block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR 2019-05-31 06:46:24 -07:00
t10-pi.c