summaryrefslogtreecommitdiffstats
path: root/lib/memweight.c
diff options
context:
space:
mode:
authorMichael Schmitz <schmitzmic@gmail.com>2023-06-20 22:17:23 +0200
committerJens Axboe <axboe@kernel.dk>2023-06-20 22:28:17 +0200
commitfc3d092c6bb48d5865fec15ed5b333c12f36288c (patch)
tree1b75b889f58b30cb1b3a24381ab65d638b443cac /lib/memweight.c
parentblock: add capacity validation in bdev_add_partition() (diff)
downloadlinux-fc3d092c6bb48d5865fec15ed5b333c12f36288c.tar.xz
linux-fc3d092c6bb48d5865fec15ed5b333c12f36288c.zip
block: fix signed int overflow in Amiga partition support
The Amiga partition parser module uses signed int for partition sector address and count, which will overflow for disks larger than 1 TB. Use sector_t as type for sector address and size to allow using disks up to 2 TB without LBD support, and disks larger than 2 TB with LBD. This bug was reported originally in 2012, and the fix was created by the RDB author, Joanne Dow <jdow@earthlink.net>. A patch had been discussed and reviewed on linux-m68k at that time but never officially submitted. This patch differs from Joanne's patch only in its use of sector_t instead of unsigned int. No checking for overflows is done (see patch 3 of this series for that). Reported-by: Martin Steigerwald <Martin@lichtvoll.de> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=43511 Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Message-ID: <201206192146.09327.Martin@lichtvoll.de> Cc: <stable@vger.kernel.org> # 5.2 Signed-off-by: Michael Schmitz <schmitzmic@gmail.com> Tested-by: Martin Steigerwald <Martin@lichtvoll.de> Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/r/20230620201725.7020-2-schmitzmic@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'lib/memweight.c')
0 files changed, 0 insertions, 0 deletions