From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 08B24C433EF for ; Wed, 20 Oct 2021 09:58:41 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 95B7661361 for ; Wed, 20 Oct 2021 09:58:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 95B7661361 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 2DA366B0071; Wed, 20 Oct 2021 05:58:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 28AD56B0072; Wed, 20 Oct 2021 05:58:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 152A3900002; Wed, 20 Oct 2021 05:58:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0205.hostedemail.com [216.40.44.205]) by kanga.kvack.org (Postfix) with ESMTP id 01AC26B0071 for ; Wed, 20 Oct 2021 05:58:39 -0400 (EDT) Received: from smtpin34.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 9BB27181AF5C2 for ; Wed, 20 Oct 2021 09:58:39 +0000 (UTC) X-FDA: 78716366358.34.6F2FD84 Received: from mail-ot1-f46.google.com (mail-ot1-f46.google.com [209.85.210.46]) by imf14.hostedemail.com (Postfix) with ESMTP id 559E56001988 for ; Wed, 20 Oct 2021 09:58:40 +0000 (UTC) Received: by mail-ot1-f46.google.com with SMTP id y15-20020a9d460f000000b0055337e17a55so144806ote.10 for ; Wed, 20 Oct 2021 02:58:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/MXj6rprc3vo+rohvgYqe3T54Ggc+J0xvFrcFXcAdLY=; b=jgc+NSn/FrAvNhiM6EigcGhOPwxLJD01UhblZ9Huaty8vGGXwjW4h8ZJQhXXeTwcFW hlVik+C0gnFGhtI8/Uzr/N9UCEjhHBZ2W7pvlKCk0cpocnky1AAiW8GF/yHMhwn1fEXF FUfllrMWO3L0KRvV3hF9H545urR9N013GRelK99vV5vJPh6R/ZhYuUa9GIaZ/iOIKdZT IaS/JPXRcw8Wfd1z3cHmwFsJQT/MsQ2IZSaMEyUY3bwNA6/Q4iH2fiDhW98J8Y5X1uqV S2ZpAdyTQNqhbG5ahUSD2mJAnjePjPRsaWRnvbT8xhIsrbMH6+jV6WP8gjd1+rm7ehSQ Wzew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/MXj6rprc3vo+rohvgYqe3T54Ggc+J0xvFrcFXcAdLY=; b=3kCLY90d3+Ez4owWnXhXidLAyvA95D0gvXM47zLcMwsLXqaE8NK4sO8pckamAgusUX o9oBrqYE4wIYyp36tNZBuDbWoh+rSwyX0rotj/Cl2yNTEJb4NXVP41MDR7bfllhmk6yz KxHjpHGH6JRHoW8Liz4h37RJKNTq2kE0oLI0+wCiOKN7rhyhYInk1rGOThROGmkUcaAy N3k5tM8f6lInhtK+9gxilEbwEvPKttqei9cSdfa2YKn7tGjWCN5TiFKu5dGWX2sQxqyC dv4hGUWAH68nPQaUTz1T2c44BD2yVObl02I1gqn6yuv8Ns3pGzOUyfTQuELuU2Y8CQjk snpw== X-Gm-Message-State: AOAM531ld+t/1pjJXeY/taRcxsp5NnmzbPrI+YY6wPt1Zse2LEhXhF1X fvQKd7Ny1nAevbtw1t1RoZJrraq/eHrFsnPqAmusEQ== X-Google-Smtp-Source: ABdhPJyt4FTPQc//xLDZCUzdp8LQGxbGS81ohYqcX1wLfbpWMg/6AW9oD7bnAsKaC+F3b2lsjJCIgJtkOE2rJb57SyA= X-Received: by 2002:a9d:71cf:: with SMTP id z15mr10021143otj.157.1634723918292; Wed, 20 Oct 2021 02:58:38 -0700 (PDT) MIME-Version: 1.0 References: <20211020094850.4113-1-Kuan-Ying.Lee@mediatek.com> In-Reply-To: <20211020094850.4113-1-Kuan-Ying.Lee@mediatek.com> From: Marco Elver Date: Wed, 20 Oct 2021 11:58:26 +0200 Message-ID: Subject: Re: [PATCH v3] kasan: add kasan mode messages when kasan init To: Kuan-Ying Lee Cc: Andrey Ryabinin , Alexander Potapenko , Andrey Konovalov , Dmitry Vyukov , Catalin Marinas , Will Deacon , Andrew Morton , Matthias Brugger , chinwen.chang@mediatek.com, yee.lee@mediatek.com, nicholas.tang@mediatek.com, kasan-dev@googlegroups.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-mediatek@lists.infradead.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 559E56001988 X-Stat-Signature: pq4uhr9wigqb736bhraw89198gee5tgh Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b="jgc+NSn/"; spf=pass (imf14.hostedemail.com: domain of elver@google.com designates 209.85.210.46 as permitted sender) smtp.mailfrom=elver@google.com; dmarc=pass (policy=reject) header.from=google.com X-HE-Tag: 1634723920-343925 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, 20 Oct 2021 at 11:48, Kuan-Ying Lee wrote: > > There are multiple kasan modes. It makes sense that we add some messages > to know which kasan mode is when booting up. see [1]. > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=212195 [1] > Signed-off-by: Kuan-Ying Lee Reviewed-by: Marco Elver Thank you. Because this is rebased on the changes in the arm64 tree, and also touches arch/arm64, it probably has to go through the arm64 tree. > --- > v3: > - Rebase to linux-next > - Move kasan_mode_info() into hw_tags.c > v2: > - Rebase to linux-next > - HW-tag based mode need to consider asymm mode > - Thanks Marco's suggestion > > arch/arm64/mm/kasan_init.c | 2 +- > mm/kasan/hw_tags.c | 14 +++++++++++++- > mm/kasan/sw_tags.c | 2 +- > 3 files changed, 15 insertions(+), 3 deletions(-) > > diff --git a/arch/arm64/mm/kasan_init.c b/arch/arm64/mm/kasan_init.c > index 5b996ca4d996..6f5a6fe8edd7 100644 > --- a/arch/arm64/mm/kasan_init.c > +++ b/arch/arm64/mm/kasan_init.c > @@ -309,7 +309,7 @@ void __init kasan_init(void) > kasan_init_depth(); > #if defined(CONFIG_KASAN_GENERIC) > /* CONFIG_KASAN_SW_TAGS also requires kasan_init_sw_tags(). */ > - pr_info("KernelAddressSanitizer initialized\n"); > + pr_info("KernelAddressSanitizer initialized (generic)\n"); > #endif > } Note: Other architectures may want to update their message once they support any one of the tags modes. But currently that's not yet the case. You could also consider leaving out the "(generic)" bit if it's the generic mode to avoid adding this to all arch/**/kasan_init.c. Both is fine with me. I leave it to you. > diff --git a/mm/kasan/hw_tags.c b/mm/kasan/hw_tags.c > index dc892119e88f..7355cb534e4f 100644 > --- a/mm/kasan/hw_tags.c > +++ b/mm/kasan/hw_tags.c > @@ -106,6 +106,16 @@ static int __init early_kasan_flag_stacktrace(char *arg) > } > early_param("kasan.stacktrace", early_kasan_flag_stacktrace); > > +static inline const char *kasan_mode_info(void) > +{ > + if (kasan_mode == KASAN_MODE_ASYNC) > + return "async"; > + else if (kasan_mode == KASAN_MODE_ASYMM) > + return "asymm"; > + else > + return "sync"; > +} > + > /* kasan_init_hw_tags_cpu() is called for each CPU. */ > void kasan_init_hw_tags_cpu(void) > { > @@ -177,7 +187,9 @@ void __init kasan_init_hw_tags(void) > break; > } > > - pr_info("KernelAddressSanitizer initialized\n"); > + pr_info("KernelAddressSanitizer initialized (hw-tags, mode=%s, stacktrace=%s)\n", > + kasan_mode_info(), > + kasan_stack_collection_enabled() ? "on" : "off"); > } > > void kasan_alloc_pages(struct page *page, unsigned int order, gfp_t flags) > diff --git a/mm/kasan/sw_tags.c b/mm/kasan/sw_tags.c > index bd3f540feb47..77f13f391b57 100644 > --- a/mm/kasan/sw_tags.c > +++ b/mm/kasan/sw_tags.c > @@ -42,7 +42,7 @@ void __init kasan_init_sw_tags(void) > for_each_possible_cpu(cpu) > per_cpu(prng_state, cpu) = (u32)get_cycles(); > > - pr_info("KernelAddressSanitizer initialized\n"); > + pr_info("KernelAddressSanitizer initialized (sw-tags)\n"); > } > > /* > -- > 2.18.0