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 07439C43334 for ; Sat, 11 Jun 2022 19:40:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2B8796B0199; Sat, 11 Jun 2022 15:40:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 268CF8D011C; Sat, 11 Jun 2022 15:40:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 108248D0115; Sat, 11 Jun 2022 15:40:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 00BB16B0199 for ; Sat, 11 Jun 2022 15:40:29 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BFD3020537 for ; Sat, 11 Jun 2022 19:40:29 +0000 (UTC) X-FDA: 79566971778.20.71F444C Received: from mail-io1-f49.google.com (mail-io1-f49.google.com [209.85.166.49]) by imf01.hostedemail.com (Postfix) with ESMTP id 6FFCE40003 for ; Sat, 11 Jun 2022 19:40:29 +0000 (UTC) Received: by mail-io1-f49.google.com with SMTP id n11so2308334iod.4 for ; Sat, 11 Jun 2022 12:40:29 -0700 (PDT) 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=mBGmgWIEi6th7haHGtOWQls1XjGMLO5xWRfb+f0EMbU=; b=dQDzxrJOsjpF435Ob/gBWrwER3Hf1U3+SmrOk0IL0YKhZcmpFlf+MAEsBM4SOGicFf b4Bw9sWTAI4WmKQ5JYasMfPp5wAt3d5N+mO+GEBVVPkgxpNdTIPNAyQzOZWX2VZUUsCk RhfSzfXNOtSjpRH0c+fFY1XdEtWg5pJFafoOa2CxEQOHnFrO/d97RnBSwplbB8oo3sTH tznTr083/YmwJr9c0snBQolgGfTuXoOcI/IHhv4Fu4qiwchF/gjtZI8sd4/NiE3qssAY LsG3EwBA4TqE63HI3wUA3MO/06G7pZDHfTatMDO+zDw7+0OfQ1qdTXkX6K9q5NszZ3Cm 7wRg== 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=mBGmgWIEi6th7haHGtOWQls1XjGMLO5xWRfb+f0EMbU=; b=VZcLgZqSszUeEz5OTicAsFgK4SF8jO95WqZxVvPNkYhOm2cZipRly7I6CXUPG5/Pkf MkosovuF8WHVQyYzgY4U7c+E4V0KGpJ5s7M81SPW+5XeW3UiusyCOvKXFaM9TGAmfP1n cqSM1W1mJu3hAZcnfBC/Lqg7YP5Kdn80VcMbrfgdF9/Gk/y0KtaFCyMoDVj67PDidTN+ 7BuuCH/N9jSuGqPuh5jMngEsh4VFyPVKYQ1uMzlkNjNokyObqyjgl6ZWYzeawiKT+Ces m/CNUNvIwk6Xek0MCFUsqkgFER+GUxJi8xjFFfYdeTKOj0059pqLtdeO3ng2zXY5pgmv 4CnA== X-Gm-Message-State: AOAM5332X+i71uOtN51hkK8OcpN5aq0ijNC/nKhth+yv2FhikzO98wSd y/Z8z0N7awiYLaKQHhtFtGawA94KlWhZr4YvN5M= X-Google-Smtp-Source: ABdhPJwu05gUxU41n8Qajko796DcWT4X2BfXl7YGu8OGYdkQzX/KUm/2zsQ6Cf1oYSplpfgoejQb2++LV8jMRVwiJGM= X-Received: by 2002:a05:6638:d0a:b0:32f:21fd:cbac with SMTP id q10-20020a0566380d0a00b0032f21fdcbacmr29083509jaj.22.1654976428952; Sat, 11 Jun 2022 12:40:28 -0700 (PDT) MIME-Version: 1.0 References: <20220610152141.2148929-1-catalin.marinas@arm.com> <20220610152141.2148929-4-catalin.marinas@arm.com> In-Reply-To: <20220610152141.2148929-4-catalin.marinas@arm.com> From: Andrey Konovalov Date: Sat, 11 Jun 2022 21:40:18 +0200 Message-ID: Subject: Re: [PATCH v2 3/4] mm: kasan: Skip page unpoisoning only if __GFP_SKIP_KASAN_UNPOISON To: Catalin Marinas Cc: Andrey Ryabinin , Will Deacon , Vincenzo Frascino , Peter Collingbourne , kasan-dev , Linux Memory Management List , Linux ARM Content-Type: text/plain; charset="UTF-8" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1654976429; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=mBGmgWIEi6th7haHGtOWQls1XjGMLO5xWRfb+f0EMbU=; b=W+eZigCJdYIfHdRJ++z0oKaWTzVuCf90Mo1ZIvXgtxhbQh1wwNxRwRZqJpEuVZXbIp/VOI x7QLZaN1+DChD+iqCdI9Ck/4Vh1JEsweQl7uuSL2/Fx0vji/caxptu8L7Q7K6adzUuW6t/ SkVGP09qZQRHBG8GwijQ4b/gMBzKrg4= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1654976429; a=rsa-sha256; cv=none; b=xMmS6tGf7UXk9IV75BjswNRIDD972wo0xB1NAoL2V4uhUB6B6QJqSgbrJv2B86Z84+ynUE 0vY5fn+xPheafUemkwDL2GqNqRawn7cirxMHjT6NtWNX28EajjhwGfEZff7RNbqzQhgJAg TcV2fc+hwjvUQd3kqFlgIJ0pZoUiMaQ= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=dQDzxrJO; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf01.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.166.49 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=dQDzxrJO; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf01.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.166.49 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com X-Rspamd-Server: rspam08 X-Rspam-User: X-Stat-Signature: 81yq9d7tsjqmafer9w8bwcutjmjh5u6k X-Rspamd-Queue-Id: 6FFCE40003 X-HE-Tag: 1654976429-321771 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 Fri, Jun 10, 2022 at 5:21 PM Catalin Marinas wrote: > > Currently post_alloc_hook() skips the kasan unpoisoning if the tags will > be zeroed (__GFP_ZEROTAGS) or __GFP_SKIP_KASAN_UNPOISON is passed. Since > __GFP_ZEROTAGS is now accompanied by __GFP_SKIP_KASAN_UNPOISON, remove > the extra check. > > Signed-off-by: Catalin Marinas > Cc: Andrey Ryabinin > Cc: Andrey Konovalov > Cc: Peter Collingbourne > Cc: Vincenzo Frascino > --- > mm/page_alloc.c | 12 +++++------- > 1 file changed, 5 insertions(+), 7 deletions(-) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index f6ed240870bc..bf45a6aa407a 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -2361,7 +2361,7 @@ static inline bool check_new_pcp(struct page *page, unsigned int order) > } > #endif /* CONFIG_DEBUG_VM */ > > -static inline bool should_skip_kasan_unpoison(gfp_t flags, bool init_tags) > +static inline bool should_skip_kasan_unpoison(gfp_t flags) > { > /* Don't skip if a software KASAN mode is enabled. */ > if (IS_ENABLED(CONFIG_KASAN_GENERIC) || > @@ -2373,12 +2373,10 @@ static inline bool should_skip_kasan_unpoison(gfp_t flags, bool init_tags) > return true; > > /* > - * With hardware tag-based KASAN enabled, skip if either: > - * > - * 1. Memory tags have already been cleared via tag_clear_highpage(). > - * 2. Skipping has been requested via __GFP_SKIP_KASAN_UNPOISON. > + * With hardware tag-based KASAN enabled, skip if this has been > + * requested via __GFP_SKIP_KASAN_UNPOISON. > */ > - return init_tags || (flags & __GFP_SKIP_KASAN_UNPOISON); > + return flags & __GFP_SKIP_KASAN_UNPOISON; > } > > static inline bool should_skip_init(gfp_t flags) > @@ -2430,7 +2428,7 @@ inline void post_alloc_hook(struct page *page, unsigned int order, > /* Note that memory is already initialized by the loop above. */ > init = false; > } > - if (!should_skip_kasan_unpoison(gfp_flags, init_tags)) { > + if (!should_skip_kasan_unpoison(gfp_flags)) { > /* Unpoison shadow memory or set memory tags. */ > kasan_unpoison_pages(page, order, init); > Reviewed-by: Andrey Konovalov