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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C847C433EF for ; Tue, 8 Mar 2022 13:45:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9D8E98D000D; Tue, 8 Mar 2022 08:45:04 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9AFA88D0009; Tue, 8 Mar 2022 08:45:04 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8C62F8D000D; Tue, 8 Mar 2022 08:45:04 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0002.hostedemail.com [216.40.44.2]) by kanga.kvack.org (Postfix) with ESMTP id 7EE6D8D0009 for ; Tue, 8 Mar 2022 08:45:04 -0500 (EST) Received: from smtpin19.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 39523182A6C8B for ; Tue, 8 Mar 2022 13:45:04 +0000 (UTC) X-FDA: 79221340128.19.B6BF7E3 Received: from mail-il1-f173.google.com (mail-il1-f173.google.com [209.85.166.173]) by imf25.hostedemail.com (Postfix) with ESMTP id B9B43A000C for ; Tue, 8 Mar 2022 13:45:03 +0000 (UTC) Received: by mail-il1-f173.google.com with SMTP id p2so3684037ile.2 for ; Tue, 08 Mar 2022 05:45:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wOTmPPxRGAGavYaBI0ES2ExVC8hASPRKrb33K4sd3F0=; b=o/y1YVgRc/BZ1Kcpk1jcTq2voS7O1/6r1s2Z6KL502LEhpbntxn+cjae/n0SAu6PZY MC+8wt8XEGph8g6nVD1yhCCGQ8Va/KsRGXIIzaOslzHA3TUg5TCMKLT0STlIibjmB0VC Rfp21k5c+W5iq2sgwCkigX3ZoBpk+UW3LUi7SGT1bfj+e+c2pYV0Va/bmjqDg5sW5HnS Sj4vbjxbLjxSLqDs0Rb9IZ8coLDsmULfrJ7d+hkck3qHVF1XpGuA6ojgbcuVD7jSvO3n TzjdgW3666r+USIXS5TzmSrATVTK5DRV6jaF0zZjfPhYz1m8/5KO1pYTp5x27UGjLDE0 oUCA== 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=wOTmPPxRGAGavYaBI0ES2ExVC8hASPRKrb33K4sd3F0=; b=utNNCiqXIgUVDLm4NNmHlcgWMiC7M888VtH2lFyq8fdgUw3gJFjquvUbmS1Cy1M6z4 eLjajG2s4hxAlyU3JazSb4Hr4MPMPZvCs3o5CwdXqlhmLvOKDqPVxPnIIwt6whhHl05L 8mlqhcPor7GiMET8AmH6RMlUL74zAnDNIioCkE6MyooJPoknVOZZEBo6fm1N0diG1AbV +13FXdW+Szk9Q7Bjml3Xwiwd31GOhF3hL1l/z5QWyEhFfRfQ32cmj9l6P8TBRmjtpfTi az+3PIW9aA3EnvgZGFSQL8IC2LpuQzIBskEUq5Ku72iwwXofKTVtARZaNEAm7s2SwEvt vdDA== X-Gm-Message-State: AOAM533fxsSYSdIiD9EL86E1ZXB7uN6YHornGOuJOMgVxp7MK/Svjs4q 2PtpfY857msNwunaBIcnzSSGplZwnbDrXz+Ppqo= X-Google-Smtp-Source: ABdhPJyIaOHh+Namhz4keN1arUSR5eOEgGqBGGQoZ4gvNnQuzkyJ84/tGbSube1SlNQ4UMNFrI1XCx63fJySASq6w48= X-Received: by 2002:a05:6e02:164e:b0:2c6:59b4:9f60 with SMTP id v14-20020a056e02164e00b002c659b49f60mr3053300ilu.235.1646747102985; Tue, 08 Mar 2022 05:45:02 -0800 (PST) MIME-Version: 1.0 References: <20220224002024.429707-1-pcc@google.com> In-Reply-To: <20220224002024.429707-1-pcc@google.com> From: Andrey Konovalov Date: Tue, 8 Mar 2022 14:44:52 +0100 Message-ID: Subject: Re: [PATCH v2] kasan: fix more unit tests with CONFIG_UBSAN_LOCAL_BOUNDS enabled To: Peter Collingbourne Cc: Marco Elver , Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , Nick Desaulniers , Daniel Micay , kasan-dev , Linux Memory Management List , LKML , stable@vger.kernel.org, Kees Cook Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: B9B43A000C X-Stat-Signature: wb6q3gj69hufcr4ef4xm3gwyg4ky9hj3 Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="o/y1YVgR"; spf=pass (imf25.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.166.173 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-HE-Tag: 1646747103-263751 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 Thu, Feb 24, 2022 at 1:20 AM Peter Collingbourne wrote: > > This is a followup to commit f649dc0e0d7b ("kasan: fix unit tests > with CONFIG_UBSAN_LOCAL_BOUNDS enabled") that fixes tests that fail > as a result of __alloc_size annotations being added to the kernel > allocator functions. > > Link: https://linux-review.googlesource.com/id/I4334cafc5db600fda5cebb851b2ee9fd09fb46cc > Signed-off-by: Peter Collingbourne > Cc: # 5.16.x > Fixes: c37495d6254c ("slab: add __alloc_size attributes for better bounds checking") > --- > v2: > - use OPTIMIZER_HIDE_VAR instead of volatile > > lib/test_kasan.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/lib/test_kasan.c b/lib/test_kasan.c > index 26a5c9007653..7c3dfb569445 100644 > --- a/lib/test_kasan.c > +++ b/lib/test_kasan.c > @@ -185,6 +185,7 @@ static void kmalloc_pagealloc_oob_right(struct kunit *test) > ptr = kmalloc(size, GFP_KERNEL); > KUNIT_ASSERT_NOT_ERR_OR_NULL(test, ptr); > > + OPTIMIZER_HIDE_VAR(ptr); > KUNIT_EXPECT_KASAN_FAIL(test, ptr[size + OOB_TAG_OFF] = 0); > > kfree(ptr); > @@ -295,6 +296,7 @@ static void krealloc_more_oob_helper(struct kunit *test, > KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size2] = 'x'); > > /* For all modes first aligned offset after size2 must be inaccessible. */ > + OPTIMIZER_HIDE_VAR(ptr2); > KUNIT_EXPECT_KASAN_FAIL(test, > ptr2[round_up(size2, KASAN_GRANULE_SIZE)] = 'x'); > > @@ -319,6 +321,8 @@ static void krealloc_less_oob_helper(struct kunit *test, > /* Must be accessible for all modes. */ > ptr2[size2 - 1] = 'x'; > > + OPTIMIZER_HIDE_VAR(ptr2); > + > /* Generic mode is precise, so unaligned size2 must be inaccessible. */ > if (IS_ENABLED(CONFIG_KASAN_GENERIC)) > KUNIT_EXPECT_KASAN_FAIL(test, ptr2[size2] = 'x'); > -- > 2.35.1.473.g83b2b277ed-goog > Acked-by: Andrey Konovalov This patch seems to be in partial conflict with the "kasan: test: Silence allocation warnings from GCC 12" patch by Kees, which is already in mm. Thanks!