Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp1777291ybk; Thu, 21 May 2020 15:13:45 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy0Yms02YNQ9vmsEKm53CoFIZx1XpLgj7LtnsbLO13Kn/YZRCri636ewEYKcjLuhLdw6mEP X-Received: by 2002:a17:906:f98f:: with SMTP id li15mr5777860ejb.259.1590099224833; Thu, 21 May 2020 15:13:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590099224; cv=none; d=google.com; s=arc-20160816; b=dY9XPwCOS8ce5Plus88vETI1QWOTgwsA2kItiCd9oLaVQeohoNs89fOXcodXKdJyQt y9a/z+RXYFwPy2Tkugk/BdHX7kMFUjMwVJCvWKqgIPCaCxkqXCkbSsd4L8ThfokZ+P56 O2heBiYq/QORwFvujKIDcVSz3NpsydSBlpZzk5fQIrOFhpuZRy+uJBGUpX8k6qkn7Ix6 Ol9jK6+n07vBPItpG3QWWsRiNPFASIsQc/BkSkSh24HOP+CMZQdsLJd2BFqpQS6A+aCx xYTQ2Dnj58/3saCu6pZnz+vJipzqpqv3XP1NCnqAfbH0P/wu03BsHEAMuNTmfI26squ4 dHnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=kocdT4g9nbRMGVt+gTfNYp2kFlQFGidtfQ3ppE7WaVg=; b=ePX1tYN7JnxqnKl3tKt2dGWRcigV8pHC8K3ELhtWwGCEwUrMdgEbZbmv3eEvXSUHSP aDh6AVjfdfQmmq33vcwrOA9n0HDVLkF5BR/UGv8XUIKxksJe1baPuCmrAfmduFJGsTk9 hwbx52jGhzR4A9WstbYT05qDMEGFYMw4DKEOWF6gidGrC4YC0+6qV6lIrMvnOtrylbyA vNp1jrNDOPSc3yFkpUy/DieFyZK7TorqxTrECpVS74UvQVJBdrH/TF5w4DWNCe1uP2zD uwGyd3MUM36xNNNsVE+6/R0B0vcadq8Elph20sj+rLNaWzXU5wUfeQ70HABsXBwaOwBm +C3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@lca.pw header.s=google header.b=hfbS9LZx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o11si3941133ejg.582.2020.05.21.15.13.21; Thu, 21 May 2020 15:13:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@lca.pw header.s=google header.b=hfbS9LZx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730602AbgEUWLh (ORCPT + 99 others); Thu, 21 May 2020 18:11:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728701AbgEUWLg (ORCPT ); Thu, 21 May 2020 18:11:36 -0400 Received: from mail-qv1-xf44.google.com (mail-qv1-xf44.google.com [IPv6:2607:f8b0:4864:20::f44]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6D483C061A0E for ; Thu, 21 May 2020 15:11:36 -0700 (PDT) Received: by mail-qv1-xf44.google.com with SMTP id x13so3854986qvr.2 for ; Thu, 21 May 2020 15:11:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lca.pw; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=kocdT4g9nbRMGVt+gTfNYp2kFlQFGidtfQ3ppE7WaVg=; b=hfbS9LZxNuVxrMISq4wh7Ug1AVYq3GcyUuxqpPgZe+0psXSTdVp+hZxiJcYim/L20y FyGDF/XORgfk0wedgq3Me5UlYbn6bsSS5BtMRneVTzudk75U2OsmVCTr5ayt7cMW+gtC Bt6pjgCsvge/l1ucZ6dy+28W1RANDAahJthttH52qvNh4rop53U9iSEB6Bs2J7bbLddP 5V6AOMewfpkmnvbYzRhjH+smGHpX02aaOvf9gkUO9MvJKoH3IYkCV9WXmA6UuMw8pWO3 UkVhUnhgeZyPvEwhPQJgf1iWxOggUI32xMXqWfn7Fp3biTqYEILnX+Y8qZhWqO+JSgQC 9+ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=kocdT4g9nbRMGVt+gTfNYp2kFlQFGidtfQ3ppE7WaVg=; b=Lqpm+sNX/kjdQPv/PbE1MNRPA6TJ9y4F0hM0Wn7jM5wP5ubTAkPIVxuICgeB0sjbaj TyAgqfHICjbRp17GCgij3khODDEoFL8MSJUSZXmqnfuY8Gyqw8NnMm4sd1dQpfY8UKmc ZODAX3CN2w9m2xWY/hVmhKTTnnnLKSE5y2rQrgIGlU5USRJLaUD6RT510VdZSvguuhgB rz98HVE6P9kjUpfolqHMEP70axEXxw6lleiULuvP2Dn5hQC8wdYkFPb0SvGXDbr78UPU 71ADcZ5frLBOTpifg+e3BFfFsQ849tq9ybgCUvY6B4uyEtVtvo8sM5KBmr42mewrVcrt +CAg== X-Gm-Message-State: AOAM531tdoNmkCYJY9Gqr+pnW4GpZEbSmc1R5NGRUqD72YEVsFrSPXJO VGVei+r5x1ZllJRB2FMlqfgAog== X-Received: by 2002:ad4:4145:: with SMTP id z5mr884054qvp.29.1590099095680; Thu, 21 May 2020 15:11:35 -0700 (PDT) Received: from ovpn-112-192.phx2.redhat.com (pool-71-184-117-43.bstnma.fios.verizon.net. [71.184.117.43]) by smtp.gmail.com with ESMTPSA id o18sm6452090qtb.7.2020.05.21.15.11.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 May 2020 15:11:35 -0700 (PDT) Date: Thu, 21 May 2020 18:11:33 -0400 From: Qian Cai To: Marco Elver Cc: dvyukov@google.com, glider@google.com, andreyknvl@google.com, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, aryabinin@virtuozzo.com, akpm@linux-foundation.org, linux-mm@kvack.org, kernel test robot Subject: Re: [PATCH] kasan: Disable branch tracing for core runtime Message-ID: <20200521221133.GD6367@ovpn-112-192.phx2.redhat.com> References: <20200519182459.87166-1-elver@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200519182459.87166-1-elver@google.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 19, 2020 at 08:24:59PM +0200, 'Marco Elver' via kasan-dev wrote: > During early boot, while KASAN is not yet initialized, it is possible to > enter reporting code-path and end up in kasan_report(). While > uninitialized, the branch there prevents generating any reports, > however, under certain circumstances when branches are being traced > (TRACE_BRANCH_PROFILING), we may recurse deep enough to cause kernel > reboots without warning. > > To prevent similar issues in future, we should disable branch tracing > for the core runtime. > > Link: https://lore.kernel.org/lkml/20200517011732.GE24705@shao2-debian/ > Reported-by: kernel test robot > Signed-off-by: Marco Elver > --- > mm/kasan/Makefile | 16 ++++++++-------- > mm/kasan/generic.c | 1 - > 2 files changed, 8 insertions(+), 9 deletions(-) > > diff --git a/mm/kasan/Makefile b/mm/kasan/Makefile > index 434d503a6525..de3121848ddf 100644 > --- a/mm/kasan/Makefile > +++ b/mm/kasan/Makefile > @@ -15,14 +15,14 @@ CFLAGS_REMOVE_tags_report.o = $(CC_FLAGS_FTRACE) > > # Function splitter causes unnecessary splits in __asan_load1/__asan_store1 > # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63533 > -CFLAGS_common.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_generic.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_generic_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_init.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_quarantine.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) > -CFLAGS_tags.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) mm/kasan/tags.c:15:9: warning: 'DISABLE_BRANCH_PROFILING' macro redefined [-Wmacro-redefined] #define DISABLE_BRANCH_PROFILING ^ :6:9: note: previous definition is here #define DISABLE_BRANCH_PROFILING 1 ^ This? diff --git a/mm/kasan/tags.c b/mm/kasan/tags.c index 25b7734e7013..8a959fdd30e3 100644 --- a/mm/kasan/tags.c +++ b/mm/kasan/tags.c @@ -12,7 +12,6 @@ */ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt -#define DISABLE_BRANCH_PROFILING #include #include