mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 01:04:41 +01:00
mm/memtest: add underflow detection for size calculation
The computation: end = start + (size - (start_phys_aligned - start_phys)) / incr could theoretically underflow if size < offset, leading to a massive iteration. Add VM_WARN_ON_ONCE() to detect cases where the region size is smaller than the alignment offset. While this should never happen in practice due to memblock guarantees, the warning helps catch potential bugs in early memory initialization code. Suggested-by: Mike Rapoport <rppt@kernel.org> Signed-off-by: Kevin Lourenco <klourencodev@gmail.com> Link: https://patch.msgid.link/20251229161321.9079-1-klourencodev@gmail.com Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
This commit is contained in:
parent
58e3e52654
commit
f56ccc3246
1 changed files with 2 additions and 0 deletions
|
|
@ -50,6 +50,8 @@ static void __init memtest(u64 pattern, phys_addr_t start_phys, phys_addr_t size
|
|||
start_bad = 0;
|
||||
last_bad = 0;
|
||||
|
||||
VM_WARN_ON_ONCE(size < start_phys_aligned - start_phys);
|
||||
|
||||
for (p = start; p < end; p++)
|
||||
WRITE_ONCE(*p, pattern);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue