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 E7D43C001DF for ; Wed, 2 Aug 2023 15:12:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8068228018A; Wed, 2 Aug 2023 11:12:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7B6D1280143; Wed, 2 Aug 2023 11:12:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 67E3928018A; Wed, 2 Aug 2023 11:12:42 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 5591D280143 for ; Wed, 2 Aug 2023 11:12:42 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id EB0FFB26CE for ; Wed, 2 Aug 2023 15:12:41 +0000 (UTC) X-FDA: 81079506522.03.E84531C Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf28.hostedemail.com (Postfix) with ESMTP id 0A9F8C002D for ; Wed, 2 Aug 2023 15:12:38 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=KTXzkScC; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of chenhuacai@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=chenhuacai@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690989159; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=mfYiR2Xby+itEFPf3/ZL0bWmx5pPHmkxC5yq48DJu/k=; b=RLR55DwtFzXK+xVfkLgr4oO/xDWmOxA6NuNaRag7ldJ3v7QvYt1HKPKMjTZTx+F1TJJHbz VO5s430/7kAbbnOOYsk+0AXgYYSGwAtHJiiu/6tjzQlK/mPWZMEl/gWABmxVCX0jnxmZFE oLcwGPHn8MhZaMft5Gr9YSy841RyNQ4= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=KTXzkScC; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of chenhuacai@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=chenhuacai@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690989159; a=rsa-sha256; cv=none; b=bos9AANTfjNLIdLZ7Vr33aI5vkkUSCo+AZDg4jxTiOtZ0Hsa+AeniLwnopxC63+UX9Cw1Y 1fpnGSUuA5N7ahrvx+NGE5kZr6DaYVF6EQEENJdMLPnt+RLizPxtXSH2ZWXteWZFpRhDIt mDEVzpj6szNa9TTu/tBWOahMXW6rtDE= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id F0380619EF for ; Wed, 2 Aug 2023 15:12:37 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 42167C43395 for ; Wed, 2 Aug 2023 15:12:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1690989157; bh=Okcpc7Ru28gWwgJAhdc4dXD3GudgvC63PW18G2qLEFo=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=KTXzkScCftV8ORhHa3KqKf2yEP0SVRqfEaC4w59JKAZ3AWeshrbeUN8/aqhOo0i21 fqmyNbXiovVjQ6cYEW7v5inMqJYgQFEJnfbPLRGkQwYtPx6fo9B1BQd7uflj2S/TG7 050ua8EtWTfGJGGFjx/epnp9+nw0vEfmL4rZyGcDKqZockRzwUQL89KLbqagUFX4wm wikNFLK6iNhCVPguIesC2A0kAykwIUuj7PRCU7o9C9xllyGbvnmqzBGM+V8ItveGAI vGavUBSZ1+aWMZBagFxUdrNltjBTkYMgQbPDnviPu8KAUppBUT2aj75OHdqSRKQfaz ThXvkPqll3aeQ== Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-522ab301692so7485742a12.2 for ; Wed, 02 Aug 2023 08:12:37 -0700 (PDT) X-Gm-Message-State: ABy/qLaP6fY7lrgdw6yOSF/UGsjCGKPMi7KEk7BWlsGf2jS+k6uyz2fz lt1aLDSQkmnYpK0+MKoYbgKH2W2l8PlO+K6xQWo= X-Google-Smtp-Source: APBJJlEp1/J3UDUUrL9ltHLTJwCY/UofAqmcg4h1pgHXJ1W0LOEh+9QJ7WsW+xZ6SWeNMPOxVYD1LP80S8qoovQExyY= X-Received: by 2002:aa7:dcc3:0:b0:522:31d5:ee8e with SMTP id w3-20020aa7dcc3000000b0052231d5ee8emr5771244edu.8.1690989155487; Wed, 02 Aug 2023 08:12:35 -0700 (PDT) MIME-Version: 1.0 References: <20230801025815.2436293-1-lienze@kylinos.cn> In-Reply-To: <20230801025815.2436293-1-lienze@kylinos.cn> From: Huacai Chen Date: Wed, 2 Aug 2023 23:12:23 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 0/4 v3] Add KFENCE support for LoongArch To: Enze Li Cc: kernel@xen0n.name, loongarch@lists.linux.dev, glider@google.com, elver@google.com, akpm@linux-foundation.org, kasan-dev@googlegroups.com, linux-mm@kvack.org, zhangqing@loongson.cn, yangtiezhu@loongson.cn, dvyukov@google.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 0A9F8C002D X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: 9ht6ia1q3z5rewj1uytidm9mw61nxr8h X-HE-Tag: 1690989158-92853 X-HE-Meta: U2FsdGVkX19XhuLnWpcneJ1f93684UL0NPKr9EjNI1e8ai2SQCm3bBBmNOQKaIuHJsmjWIY8aRwO0f0543KmemeH0s1G++nWYfurbEV5U5zsTM45C8/6n37JS5QxSnHbaWGZgnqh5bYpNRg4ZCNWZamFjeCW+fO37j7ag9EVkaiYCalnZOoj+kxAFI+PpeGUy6iirlbEC9EyxFBumisoTQm1Qm4h2BhdQMvoWTQkXjOZ3ZSyI1oOZySmn7aAxQYM2Yb216RG0hbDkq3+T5cbmwcGIg9rXB+NY6Nw+bRJvQFnUNm2cGZ7gScMfQsqdrLKS9nX0ICuA/OLH3zEIlTsvH3/UmAiSM47uriN2T3fmKcT+Y2oChT7Xu9dpTpRFxAv+WVwn+XLinnKUHkF1wNm0xeKUdQA5s98Zi76TkUCM3LvFminHjfGpu9qBAgGnXLeENBpKiy+mWIPKP6NbANf7W3p1jsLiD06OhiRfPHZIAzBBfR6xchb91BI/YooT0F+KYY3futMfasDt/J341RLuf9JiQXc7lJQ95sxPLnfRPIlP7AKz+yUgceFjM9j2bmPpdSCBkLKS53M4IuYtPZUNBmlovgZINhQnjUS2T6ZLzwcgU6YdilrZ1rWXILXUMr2wZelmY0GsOHEOEBG6ribJ69v+ADG1I42zF/A/zxvji6wylXDv12/lukb997E7waaMdy3nxg84BMYYnz2YcMCy9y1Y245l+bj4e9n4sU/tJUQcMNiEvkCNB8Ul4IXUZETmU3c+raqfEp6WaJOTFQ/hfN0JSqwANvDfNA/kBrbii8FqMqJisIRNxQvI0EOeGQxoy9dVb82Njw/Hg2+4moq6gE0na50NXGzHIv38JE5IwK6dAknF2jVarRQ/5x9w2F+0t+2OqXkUj8jX+CMn9EuO690t6cv2ZzWdwqTgHubdpg8z5QQ1QqcAarNLI9NCXRFhDbKKcEdksSmrdNeFml ULyvKhEG kxCIl2qMsySSuROtUV7mWKMY72hjvtODf4Sz+6t5EfVnJ8dO09vfbCQGsL2AbH3o0b0eX2k7dmTh/dxdcd6oEaGogDH1qpF6A8MSxzKZfq+5b1QVtHZjyzjM8sGLVnofjpiBjjYaaN4SrqTnK0tW1Qi20pNEFyk09ZJltPGMEi3GRt0zaiZzqUsRas3zRazHU+UVezUBIyiiceFuhzlzzup3vRfIV5zmohfk4IjtAYZdZC1esLxC4kME++2LSHtrd1NvobdPSqfIvahpafKGOrs9mw7d9ePGGvXzjHaBhJYFSfST/4G3UtIHnOqqRfUCSoJ+qoQmfrXleYbD5na9FldOJFw== 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: Hi, Enze, I applied this series (with some small modifications) together with KASAN a= t: https://github.com/chenhuacai/linux/commits/loongarch-next Please confirm everything works well for you. Huacai On Tue, Aug 1, 2023 at 10:59=E2=80=AFAM Enze Li wrote: > > Hi all, > > This patchset adds KFENCE support on LoongArch. > > To run the testcases, you will need to enable the following options, > > -> Kernel hacking > [*] Tracers > [*] Support for tracing block IO actions (NEW) > -> Kernel Testing and Coverage > <*> KUnit - Enable support for unit tests > > and then, > > -> Kernel hacking > -> Memory Debugging > [*] KFENCE: low-overhead sampling-based memory safety error detecto= r (NEW) > <*> KFENCE integration test suite (NEW) > > With these options enabled, KFENCE will be tested during kernel startup. > And normally, you might get the following feedback, > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > [ 35.326363 ] # kfence: pass:23 fail:0 skip:2 total:25 > [ 35.326486 ] # Totals: pass:23 fail:0 skip:2 total:25 > [ 35.326621 ] ok 1 kfence > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > > you might notice that 2 testcases have been skipped. If you tend to run > all testcases, please enable CONFIG_INIT_ON_FREE_DEFAULT_ON, you can > find it here, > > -> Security options > -> Kernel hardening options > -> Memory initialization > [*] Enable heap memory zeroing on free by default > > and you might get all testcases passed. > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > [ 35.531860 ] # kfence: pass:25 fail:0 skip:0 total:25 > [ 35.531999 ] # Totals: pass:25 fail:0 skip:0 total:25 > [ 35.532135 ] ok 1 kfence > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > > v3: > * Address Huacai's comments. > * Fix a bug that Jackie Liu pointed out. > * Rewrite arch_stack_walk() with the suggestion of Jinyang He. > > v2: > * Address Huacai's comments. > * Fix typos in commit message. > > Thanks, > Enze > > Enze Li (4): > KFENCE: Defer the assignment of the local variable addr > LoongArch: mm: Add page table mapped mode support > LoongArch: Get stack without NMI when providing regs parameter > LoongArch: Add KFENCE support > > arch/loongarch/Kconfig | 1 + > arch/loongarch/include/asm/kfence.h | 66 ++++++++++++++++++++++++++++ > arch/loongarch/include/asm/page.h | 8 +++- > arch/loongarch/include/asm/pgtable.h | 16 ++++++- > arch/loongarch/kernel/stacktrace.c | 18 ++++---- > arch/loongarch/mm/fault.c | 22 ++++++---- > arch/loongarch/mm/pgtable.c | 7 +++ > mm/kfence/core.c | 5 ++- > 8 files changed, 123 insertions(+), 20 deletions(-) > create mode 100644 arch/loongarch/include/asm/kfence.h > > -- > 2.34.1 >