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 86D3AC433F5 for ; Mon, 24 Jan 2022 18:09:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 29BC96B0093; Mon, 24 Jan 2022 13:09:57 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 24BF36B0099; Mon, 24 Jan 2022 13:09:57 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 13AB96B009C; Mon, 24 Jan 2022 13:09:57 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0060.hostedemail.com [216.40.44.60]) by kanga.kvack.org (Postfix) with ESMTP id 03D246B0093 for ; Mon, 24 Jan 2022 13:09:57 -0500 (EST) Received: from smtpin18.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id AA2818DA47 for ; Mon, 24 Jan 2022 18:09:56 +0000 (UTC) X-FDA: 79065969192.18.EDC1357 Received: from mail-oi1-f171.google.com (mail-oi1-f171.google.com [209.85.167.171]) by imf26.hostedemail.com (Postfix) with ESMTP id 1F6F3140014 for ; Mon, 24 Jan 2022 18:09:55 +0000 (UTC) Received: by mail-oi1-f171.google.com with SMTP id s9so26714223oib.11 for ; Mon, 24 Jan 2022 10:09:55 -0800 (PST) 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=v6jRI9epvX7ZG9JJREEDqZFqkweKboDzqXireE4QkNA=; b=YkS6CDPg4banfwbviYA741MZOfFey2yAA81DuOEliUIqxHAqKpkwTOqs3giGTVPvhf p5HvxcrBBGhjJUConF628JGNgss5ihCK9nAwXFENA+2HjjdSbmgPMxobC+DR0BioNIDV w6jMu79A/VPhjJWJ/sdqVebU8Oz9OD3fKuI8ZXtvdoedsuhryepTbFqk7bAwRxXjN8hx RyBt4Rd1PmQWRf8+TLpPHzJnRpYSoiK+F+lqOUTb/0Z9tS06JDIco5cl+OgXz9J7H2b5 T6wDFRLBTvCFzjDuOJIfSV/2PacI00+kY51DhvpSEOwe/zj8d+A4RWOfoVM7DAz9iP66 ugDg== 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=v6jRI9epvX7ZG9JJREEDqZFqkweKboDzqXireE4QkNA=; b=JxyKXreVM+auM/18leOvDY+mpyp57WsDhAv/Jrh2SCMPraCCcymbDalZZlCPH77EC+ ynBtBcWMZpIan+0MHGPt983rb4AhGzzSiBoLXpjca76kLnmFk61S58KjSXfHZQX0bQhN TNJsF9v2qlP1/TmGhgDhJ+cTTkQ+VBhhjZ0ZDh7eddAmK/339r+KAj8REVV7/jkeBC+Y TrPZj5QJarcKpAMmXJlStFoCzwVuAOkmlXI6s+5xrWCrZRuvgPTuQiXueV3NwIzKjaup 7b1KrVxgbfzVCw99zTU2rkXWu3QD69+YiHKm0K27q6KIUiAgpjjkIuKcJwb1p+Y9L6Tg uipw== X-Gm-Message-State: AOAM532/vjBnxK/vnC8c4ntH4y4xEDNK6KcHyfbfI+b14Z4N4YH1BNKA cnwcP37sqnelYbJCBFMjJj/xCrzVN8xw0L531n75EA== X-Google-Smtp-Source: ABdhPJyY7M8uxVK4MREiN+NodPzkzckeZhTZH2CvzINRvGh77ED6ySLK8r5sqOW4kya1FsDbqq4v7Pb4p8ZrtSfK6r8= X-Received: by 2002:a05:6808:15a6:: with SMTP id t38mr2513927oiw.154.1643047795220; Mon, 24 Jan 2022 10:09:55 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Marco Elver Date: Mon, 24 Jan 2022 19:09:43 +0100 Message-ID: Subject: Re: [PATCH v6 00/39] kasan, vmalloc, arm64: add vmalloc tagging support for SW/HW_TAGS To: andrey.konovalov@linux.dev Cc: Andrew Morton , Andrey Konovalov , Alexander Potapenko , Dmitry Vyukov , Andrey Ryabinin , kasan-dev@googlegroups.com, linux-mm@kvack.org, Vincenzo Frascino , Catalin Marinas , Will Deacon , Mark Rutland , linux-arm-kernel@lists.infradead.org, Peter Collingbourne , Evgenii Stepanov , linux-kernel@vger.kernel.org, Andrey Konovalov Content-Type: text/plain; charset="UTF-8" Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=YkS6CDPg; spf=pass (imf26.hostedemail.com: domain of elver@google.com designates 209.85.167.171 as permitted sender) smtp.mailfrom=elver@google.com; dmarc=pass (policy=reject) header.from=google.com X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 1F6F3140014 X-Stat-Signature: bgwkz8m3ebk8m7zf7eerddb4nsnywzoa X-HE-Tag: 1643047795-451247 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 Mon, 24 Jan 2022 at 19:02, wrote: > > From: Andrey Konovalov > > Hi, > > This patchset adds vmalloc tagging support for SW_TAGS and HW_TAGS > KASAN modes. [...] > > Acked-by: Marco Elver FYI, my Ack may get lost here - on rebase you could apply it to all patches to carry it forward. As-is, Andrew would still have to apply it manually. An Ack to the cover letter saves replying to each patch and thus generating less emails, which I think is preferred. My Ack is still valid, given v6 is mainly a rebase and I don't see any major changes. Thanks, -- Marco > Andrey Konovalov (39): > kasan, page_alloc: deduplicate should_skip_kasan_poison > kasan, page_alloc: move tag_clear_highpage out of > kernel_init_free_pages > kasan, page_alloc: merge kasan_free_pages into free_pages_prepare > kasan, page_alloc: simplify kasan_poison_pages call site > kasan, page_alloc: init memory of skipped pages on free > kasan: drop skip_kasan_poison variable in free_pages_prepare > mm: clarify __GFP_ZEROTAGS comment > kasan: only apply __GFP_ZEROTAGS when memory is zeroed > kasan, page_alloc: refactor init checks in post_alloc_hook > kasan, page_alloc: merge kasan_alloc_pages into post_alloc_hook > kasan, page_alloc: combine tag_clear_highpage calls in post_alloc_hook > kasan, page_alloc: move SetPageSkipKASanPoison in post_alloc_hook > kasan, page_alloc: move kernel_init_free_pages in post_alloc_hook > kasan, page_alloc: rework kasan_unpoison_pages call site > kasan: clean up metadata byte definitions > kasan: define KASAN_VMALLOC_INVALID for SW_TAGS > kasan, x86, arm64, s390: rename functions for modules shadow > kasan, vmalloc: drop outdated VM_KASAN comment > kasan: reorder vmalloc hooks > kasan: add wrappers for vmalloc hooks > kasan, vmalloc: reset tags in vmalloc functions > kasan, fork: reset pointer tags of vmapped stacks > kasan, arm64: reset pointer tags of vmapped stacks > kasan, vmalloc: add vmalloc tagging for SW_TAGS > kasan, vmalloc, arm64: mark vmalloc mappings as pgprot_tagged > kasan, vmalloc: unpoison VM_ALLOC pages after mapping > kasan, mm: only define ___GFP_SKIP_KASAN_POISON with HW_TAGS > kasan, page_alloc: allow skipping unpoisoning for HW_TAGS > kasan, page_alloc: allow skipping memory init for HW_TAGS > kasan, vmalloc: add vmalloc tagging for HW_TAGS > kasan, vmalloc: only tag normal vmalloc allocations > kasan, arm64: don't tag executable vmalloc allocations > kasan: mark kasan_arg_stacktrace as __initdata > kasan: clean up feature flags for HW_TAGS mode > kasan: add kasan.vmalloc command line flag > kasan: allow enabling KASAN_VMALLOC and SW/HW_TAGS > arm64: select KASAN_VMALLOC for SW/HW_TAGS modes > kasan: documentation updates > kasan: improve vmalloc tests > > Documentation/dev-tools/kasan.rst | 17 ++- > arch/arm64/Kconfig | 2 +- > arch/arm64/include/asm/vmalloc.h | 6 + > arch/arm64/include/asm/vmap_stack.h | 5 +- > arch/arm64/kernel/module.c | 5 +- > arch/arm64/mm/pageattr.c | 2 +- > arch/arm64/net/bpf_jit_comp.c | 3 +- > arch/s390/kernel/module.c | 2 +- > arch/x86/kernel/module.c | 2 +- > include/linux/gfp.h | 35 +++-- > include/linux/kasan.h | 97 +++++++++----- > include/linux/vmalloc.h | 18 +-- > include/trace/events/mmflags.h | 14 +- > kernel/fork.c | 1 + > kernel/scs.c | 4 +- > lib/Kconfig.kasan | 20 +-- > lib/test_kasan.c | 189 ++++++++++++++++++++++++++- > mm/kasan/common.c | 4 +- > mm/kasan/hw_tags.c | 193 ++++++++++++++++++++++------ > mm/kasan/kasan.h | 18 ++- > mm/kasan/shadow.c | 63 +++++---- > mm/page_alloc.c | 152 +++++++++++++++------- > mm/vmalloc.c | 99 +++++++++++--- > 23 files changed, 731 insertions(+), 220 deletions(-) > > -- > 2.25.1 >