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 X-Spam-Level: X-Spam-Status: No, score=-17.4 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 89D3CC4363A for ; Fri, 30 Oct 2020 14:56:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2B97620727 for ; Fri, 30 Oct 2020 14:56:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="ZFm0kFcr" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726831AbgJ3O4F (ORCPT ); Fri, 30 Oct 2020 10:56:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38734 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726178AbgJ3O4E (ORCPT ); Fri, 30 Oct 2020 10:56:04 -0400 Received: from mail-ot1-x342.google.com (mail-ot1-x342.google.com [IPv6:2607:f8b0:4864:20::342]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AB393C0613CF for ; Fri, 30 Oct 2020 07:45:38 -0700 (PDT) Received: by mail-ot1-x342.google.com with SMTP id i18so1035308ots.0 for ; Fri, 30 Oct 2020 07:45:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/l7OXXa9UuvkPT+n4O4t3Y5d8yYC198Ym1kgNFK1uSc=; b=ZFm0kFcro+V05IMdtsrtx/vo9o8fF+HtuBLxfxPZS6T904N++atZAPBiHQmeaSmSdh Jdaqu/oB4bN4JqHAhWjey+0PJhXGaS5ER6ZRf+3w6fn3UW6ymuFqnKjiblQUPu9TEdwi BOfNy2FAuKBkFObkVK5x3oL2D9BTCsoUz80Qtq/Bb4ZS00ogo5uGkIBMX5w/gVgXPURQ DlJ4PyqwVXVLZLubA045vnqlNPp8xUpt6jzc38HUKFHw+f9vQq59yyJOiQ8+TtoBgGhA rv0aJzyf+2zyBHjNx2haGi5H3e2E3CIhNudK7Yoa4dA491JK61IpshPU3ILNGZtxUm+G kSwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/l7OXXa9UuvkPT+n4O4t3Y5d8yYC198Ym1kgNFK1uSc=; b=KDBRNbtabv/JpAHUVrigG8eOdJ64n2ygv+kuDnl5gLI2gNRmf9NwoPbNQluz5JUYm0 nWHhMmlIw6oyetHpgNJ3Mu/1gYd5Us1MH/sdnUSw4gVZmt10keUpI4DkafLM/a1NYK/H C9hl4ToS1qSs4aGiGHVz9F1GFXUeTEIH1XVmeFJuAsnMZjuORlNu3JLZBWCEYYZ3cOfL H4M6qUBBLZif/a00kWA841oT57mtjK4BeDp06Q9HeJs0YK+QUZUTNM7hIDDtofXncbFZ q4goJrPmn2fNps4NzvAv5aGak51nWfRoMdvgkDT6slNw/iP8Bv+wN+CrKh5540X/b2eL +h7w== X-Gm-Message-State: AOAM533wNN2q88NTcUm/s83cOoEnSU7Xs+WxxVeLVX03tbv9dt1qMff7 rtqn1vG3efLSxWvs68cCvNmFRQMFrUGiilavbBnN1Q== X-Google-Smtp-Source: ABdhPJxY15nYWXTiFbl1s/chME9yMWamqIVsOT48t27QyzLn4hhUUMlSCrFnyzg36C8tpxklYueWZCrZRlYZRKJjNz0= X-Received: by 2002:a9d:649:: with SMTP id 67mr1983160otn.233.1604069137790; Fri, 30 Oct 2020 07:45:37 -0700 (PDT) MIME-Version: 1.0 References: <6a4a7626bf280871518656f4fa89cb064740baf7.1603372719.git.andreyknvl@google.com> In-Reply-To: <6a4a7626bf280871518656f4fa89cb064740baf7.1603372719.git.andreyknvl@google.com> From: Marco Elver Date: Fri, 30 Oct 2020 15:45:26 +0100 Message-ID: Subject: Re: [PATCH RFC v2 14/21] kasan: add and integrate kasan boot parameters To: Andrey Konovalov Cc: Catalin Marinas , Will Deacon , Vincenzo Frascino , Dmitry Vyukov , Alexander Potapenko , Evgenii Stepanov , Kostya Serebryany , Peter Collingbourne , Serban Constantinescu , Andrey Ryabinin , Elena Petrova , Branislav Rankov , Kevin Brodsky , Andrew Morton , kasan-dev , Linux ARM , Linux Memory Management List , LKML Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 22 Oct 2020 at 15:19, Andrey Konovalov wrote: > > TODO: no meaningful description here yet, please see the cover letter > for this RFC series. > > Signed-off-by: Andrey Konovalov > Link: https://linux-review.googlesource.com/id/If7d37003875b2ed3e0935702c8015c223d6416a4 > --- > mm/kasan/common.c | 92 +++++++++++++----------- > mm/kasan/generic.c | 5 ++ > mm/kasan/hw_tags.c | 169 ++++++++++++++++++++++++++++++++++++++++++++- > mm/kasan/kasan.h | 9 +++ > mm/kasan/report.c | 14 +++- > mm/kasan/sw_tags.c | 5 ++ > 6 files changed, 250 insertions(+), 44 deletions(-) > > diff --git a/mm/kasan/common.c b/mm/kasan/common.c > index 1a5e6c279a72..cc129ef62ab1 100644 > --- a/mm/kasan/common.c > +++ b/mm/kasan/common.c > @@ -129,35 +129,37 @@ void kasan_cache_create(struct kmem_cache *cache, unsigned int *size, > unsigned int redzone_size; > int redzone_adjust; > > - /* Add alloc meta. */ > - cache->kasan_info.alloc_meta_offset = *size; > - *size += sizeof(struct kasan_alloc_meta); > - > - /* Add free meta. */ > - if (IS_ENABLED(CONFIG_KASAN_GENERIC) && > - (cache->flags & SLAB_TYPESAFE_BY_RCU || cache->ctor || > - cache->object_size < sizeof(struct kasan_free_meta))) { > - cache->kasan_info.free_meta_offset = *size; > - *size += sizeof(struct kasan_free_meta); > - } > - > - redzone_size = optimal_redzone(cache->object_size); > - redzone_adjust = redzone_size - (*size - cache->object_size); > - if (redzone_adjust > 0) > - *size += redzone_adjust; > - > - *size = min_t(unsigned int, KMALLOC_MAX_SIZE, > - max(*size, cache->object_size + redzone_size)); > + if (static_branch_unlikely(&kasan_stack)) { I just looked at this file in your Github repo, and noticed that this could just be if (!static_branch_unlikely(&kasan_stack)) return; since the if-block ends at the function. That might hopefully make the diff a bit smaller. Thanks, -- Marco