kasan: support use-after-scope detection
authorDmitry Vyukov <dvyukov@google.com>
Wed, 30 Nov 2016 23:54:16 +0000 (15:54 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 1 Dec 2016 00:32:52 +0000 (16:32 -0800)
commit828347f8f9a558cf1af2faa46387a26564f2ac3e
tree4acb63366cc89b3e87e85805530911300dd4ab19
parent045d599a286bc01daa3510d59272440a17b23c2e
kasan: support use-after-scope detection

Gcc revision 241896 implements use-after-scope detection.  Will be
available in gcc 7.  Support it in KASAN.

Gcc emits 2 new callbacks to poison/unpoison large stack objects when
they go in/out of scope.  Implement the callbacks and add a test.

[dvyukov@google.com: v3]
Link: http://lkml.kernel.org/r/1479998292-144502-1-git-send-email-dvyukov@google.com
Link: http://lkml.kernel.org/r/1479226045-145148-1-git-send-email-dvyukov@google.com
Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
Acked-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: <stable@vger.kernel.org> [4.0+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/test_kasan.c
mm/kasan/kasan.c
mm/kasan/kasan.h
mm/kasan/report.c