diff options
| author | Milan Broz <[email protected]> | 2025-02-16 10:42:09 +0000 |
|---|---|---|
| committer | Mikulas Patocka <[email protected]> | 2025-02-17 10:33:07 +0000 |
| commit | 7fb39882b20c98a9a393c244c86b56ef6933cff8 (patch) | |
| tree | 3e86a3d1a4ad6d726cce2a3bb32f28a860209d76 /tools/testing/selftests/net/lib/py/utils.py | |
| parent | Linux 6.14-rc3 (diff) | |
| download | kernel-7fb39882b20c98a9a393c244c86b56ef6933cff8.tar.gz kernel-7fb39882b20c98a9a393c244c86b56ef6933cff8.zip | |
dm-integrity: Avoid divide by zero in table status in Inline mode
In Inline mode, the journal is unused, and journal_sectors is zero.
Calculating the journal watermark requires dividing by journal_sectors,
which should be done only if the journal is configured.
Otherwise, a simple table query (dmsetup table) can cause OOPS.
This bug did not show on some systems, perhaps only due to
compiler optimization.
On my 32-bit testing machine, this reliably crashes with the following:
: Oops: divide error: 0000 [#1] PREEMPT SMP
: CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959
: EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity]
...
Signed-off-by: Milan Broz <[email protected]>
Signed-off-by: Mikulas Patocka <[email protected]>
Fixes: fb0987682c62 ("dm-integrity: introduce the Inline mode")
Cc: [email protected] # 6.11+
Diffstat (limited to 'tools/testing/selftests/net/lib/py/utils.py')
0 files changed, 0 insertions, 0 deletions
