From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754492AbcJNRKO (ORCPT ); Fri, 14 Oct 2016 13:10:14 -0400 Received: from mail-wm0-f45.google.com ([74.125.82.45]:37207 "EHLO mail-wm0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753500AbcJNRKH (ORCPT ); Fri, 14 Oct 2016 13:10:07 -0400 From: Dmitry Vyukov To: aryabinin@virtuozzo.com, akpm@linux-foundation.org, glider@google.com Cc: Dmitry Vyukov , kasan-dev@googlegroups.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH] kasan: support panic_on_warn Date: Fri, 14 Oct 2016 19:10:02 +0200 Message-Id: <1476465002-2728-1-git-send-email-dvyukov@google.com> X-Mailer: git-send-email 2.8.0.rc3.226.g39d4020 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If user sets panic_on_warn, he wants kernel to panic if there is anything barely wrong with the kernel. KASAN-detected errors are definitely not less benign than an arbitrary kernel WARNING. Panic after KASAN errors if panic_on_warn is set. We use this for continuous fuzzing where we want kernel to stop and reboot on any error. Signed-off-by: Dmitry Vyukov Cc: kasan-dev@googlegroups.com Cc: Andrey Ryabinin Cc: Alexander Potapenko Cc: Andrew Morton Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org --- mm/kasan/report.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mm/kasan/report.c b/mm/kasan/report.c index 24c1211..ca0bd48 100644 --- a/mm/kasan/report.c +++ b/mm/kasan/report.c @@ -133,6 +133,10 @@ static void kasan_end_report(unsigned long *flags) pr_err("==================================================================\n"); add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE); spin_unlock_irqrestore(&report_lock, *flags); + if (panic_on_warn) { + panic_on_warn = 0; + panic("panic_on_warn set ...\n"); + } kasan_enable_current(); } -- 2.8.0.rc3.226.g39d4020