From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933182AbcJQI5Q (ORCPT ); Mon, 17 Oct 2016 04:57:16 -0400 Received: from mail-qk0-f171.google.com ([209.85.220.171]:34186 "EHLO mail-qk0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932306AbcJQI5I (ORCPT ); Mon, 17 Oct 2016 04:57:08 -0400 From: Dmitry Vyukov To: aryabinin@virtuozzo.com, glider@google.com, akpm@linux-foundation.org Cc: Dmitry Vyukov , kasan-dev@googlegroups.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH] kasan: support panic_on_warn Date: Mon, 17 Oct 2016 10:57:04 +0200 Message-Id: <1476694624-28366-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 --- Changes from v1: - don't reset panic_on_warn before calling panic() --- mm/kasan/report.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mm/kasan/report.c b/mm/kasan/report.c index 24c1211..0ee8211 100644 --- a/mm/kasan/report.c +++ b/mm/kasan/report.c @@ -133,6 +133,8 @@ 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("panic_on_warn set ...\n"); kasan_enable_current(); } -- 2.8.0.rc3.226.g39d4020