UPSTREAM: kasan: avoid overflowing quarantine size on low memory systems
authorAlexander Potapenko <glider@google.com>
Tue, 2 Aug 2016 21:02:58 +0000 (14:02 -0700)
committerPaul Lawrence <paullawrence@google.com>
Thu, 14 Dec 2017 16:22:05 +0000 (08:22 -0800)
commita9674f4e536ca25b6963afbc2894f97217c0bd46
tree9106871150ea404c6c061474cc0708fef6f4c497
parent2771cfaf23478c20450a1cbc94fd263b04344d05
UPSTREAM: kasan: avoid overflowing quarantine size on low memory systems

If the total amount of memory assigned to quarantine is less than the
amount of memory assigned to per-cpu quarantines, |new_quarantine_size|
may overflow.  Instead, set it to zero.

[akpm@linux-foundation.org: cleanup: use WARN_ONCE return value]
Link: http://lkml.kernel.org/r/1470063563-96266-1-git-send-email-glider@google.com
Fixes: 55834c59098d ("mm: kasan: initial memory quarantine implementation")
Signed-off-by: Alexander Potapenko <glider@google.com>
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Bug: 64145065
(cherry-picked from c3cee372282cb6bcdf19ac1457581d5dd5ecb554)
Change-Id: I8a647e5ee5d9494698aa2a31d50d587d6ff8b65c
Signed-off-by: Paul Lawrence <paullawrence@google.com>
mm/kasan/quarantine.c