diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2022-06-16 13:28:57 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-06-22 14:28:09 +0200 |
commit | 9a02f3275acc628c0d956be771405ced79ac36df (patch) | |
tree | dbe8f3dd2e9d32f739942132d7426eb2a731f5c4 /net/lapb/lapb_in.c | |
parent | c907589bb2f4aeabbecf0e5de28024d0d8a23501 (diff) |
dm mirror log: round up region bitmap size to BITS_PER_LONG
commit 85e123c27d5cbc22cfdc01de1e2ca1d9003a02d0 upstream.
The code in dm-log rounds up bitset_size to 32 bits. It then uses
find_next_zero_bit_le on the allocated region. find_next_zero_bit_le
accesses the bitmap using unsigned long pointers. So, on 64-bit
architectures, it may access 4 bytes beyond the allocated size.
Fix this bug by rounding up bitset_size to BITS_PER_LONG.
This bug was found by running the lvm2 testsuite with kasan.
Fixes: 29121bd0b00e ("[PATCH] dm mirror log: bitset_size fix")
Cc: stable@vger.kernel.org
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/lapb/lapb_in.c')
0 files changed, 0 insertions, 0 deletions