Received: by 2002:a25:d7c1:0:0:0:0:0 with SMTP id o184csp3215736ybg; Mon, 28 Oct 2019 09:14:09 -0700 (PDT) X-Google-Smtp-Source: APXvYqwM3LWcLysdkHww8FVCV/rChA4z8IXj9PZ0pqbBHKHbkRdh3etuYHj+GNHKs7k4fwXQPy1L X-Received: by 2002:a50:ac3c:: with SMTP id v57mr19907206edc.300.1572279249431; Mon, 28 Oct 2019 09:14:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572279249; cv=none; d=google.com; s=arc-20160816; b=QxVKJjaa7O7tITOVJW67TO30i1EGCJIKGxApGkcdMSg7hKtijcQup1YKYmGsKwh/Vb Th1vS3sZdKeNcCasg+hTJzfadMkye+2mZFA37mGIZdcepq24f6KjSUh0i0+pzF/B9cs9 OrGNteNeSdi6qcbRbwcPcl2E4f7UhlG+Tik9EOEc5K+5J339InyhBcLo1FJ3Vc4zArZF MULhmLunvm+02mz2GSHzxVVr0lhyzRmbUxw8v4CPL176Ac5BE4BwlDX/d4flSpOyQoiq +TE0BJtTmcH4sUhpcfA2IuN/ZpJlMtcUgZ35SVgNI8p84eEEpD5kIUChj58eQpLBSLjE /7TA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=B8JVLFtcc9aWg+tsverFb6TLrQIPxF39zUE7VKNDhoI=; b=gV1rWcEzZ06jjOnCIsZdz5WUEmTxQNd5Ly5Qt5i+jtafGqZe0f/YUUBtZbEYmddbwr RNdI3XvArlgA8kkfee7K0u/feVtX3K/aLrUeR8++w/AqL8hHil3btyL2CyDbqDgdArfN mczs8cR/jcKf5uzEiMa3LWT3CtApaCf8h1lBDizyBzCqtQhtRzzMAslQ/CsFtLH7CwGj D79sYVWXLNtd4PiHmYfbtMfmM/b8j6PCm/PKb6rUN0nseMgPmgDeA5fR6fsMMZm3+See R9T0weD+TpN5REqMV6z5nOaF50LM4nrShv+pTmgEAwAiPc8Vgjj3Ww7tyNDXGgLB7CBC PkmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=hx7QfTuE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w16si6136469ejj.276.2019.10.28.09.13.45; Mon, 28 Oct 2019 09:14:09 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=hx7QfTuE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732059AbfJ1HBv (ORCPT + 99 others); Mon, 28 Oct 2019 03:01:51 -0400 Received: from mail-qt1-f195.google.com ([209.85.160.195]:35126 "EHLO mail-qt1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726182AbfJ1HBv (ORCPT ); Mon, 28 Oct 2019 03:01:51 -0400 Received: by mail-qt1-f195.google.com with SMTP id l3so2651962qtp.2; Mon, 28 Oct 2019 00:01:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=B8JVLFtcc9aWg+tsverFb6TLrQIPxF39zUE7VKNDhoI=; b=hx7QfTuEid1Hcj9TC3rALkWx+Gku6XnXWmunhXazNO71XEThreP9UWB8Bbni20gYiM sEkQUdjWgoiI7PAdzADqeTbaJQyGZFXJVnSmWMm/RXJ6lqqiQKtAdjTPw7vkmG3j7LtP 0XvfwbTK0m2QKX3LHUgqxDvmEK30kijN7fm2IYP5qloO/XJJW9dwQxAcm837u18moSd5 Tosf26t4ivUB2P4ACk8BPI2ezXkAUGMwAr48Pc2+hqdGVVEk8XtGwUK+basUtTCTNqi4 EQza5taJZUTXnWSASmu5uDmURdnonkMDQXIhakgP97IqoVztrIelaMPK+gWTwQLlt28g e7XQ== 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:content-transfer-encoding; bh=B8JVLFtcc9aWg+tsverFb6TLrQIPxF39zUE7VKNDhoI=; b=NB7yPxi5TlntLHLcjUVWlkcdZi9dZTP8j/ALIei2QUIJTLvNW/p4nVDd4FNRKIAccd zDh917kto9AXhoawwXyYdQtbgyBD6p1yMY2Pj/OdKuI30vhq1M8rL3YTOFPES36LRVAz IBdSalaJADLUU62SIhHk/dph87IjXc7j8afIUipom8r3oOr1aOu4u+sg0OUTr/LgdpBE ZrJjj9jNIw2fO84ZyVefez7hGBj+xB7Etd5v955uIeTEb6XiI0Wpd1+wPn4QuJLpzTO1 UdxhaQKGWcw7g9DGTGfS+P+qrq0WvQo3JE3q2HDGBMeyvzsaS+O5afDFv9vgf2/P7Y4Z UOfQ== X-Gm-Message-State: APjAAAXgqc5++ZX/87boFB71Z2hBPN/dbpyjrhxf84fmdEpXFarp8DGU RulI3FDcdEWJZ7918moEp7labPAufIr2s4MtTDc= X-Received: by 2002:ac8:542:: with SMTP id c2mr16290854qth.338.1572246110227; Mon, 28 Oct 2019 00:01:50 -0700 (PDT) MIME-Version: 1.0 References: <20191028024101.26655-1-nickhu@andestech.com> In-Reply-To: <20191028024101.26655-1-nickhu@andestech.com> From: Greentime Hu Date: Mon, 28 Oct 2019 15:01:14 +0800 Message-ID: Subject: Re: [PATCH v4 0/3] KASAN support for RISC-V To: Nick Hu , Greentime Hu Cc: aryabinin@virtuozzo.com, Alexander Potapenko , Dmitry Vyukov , corbet@lwn.net, Paul Walmsley , Palmer Dabbelt , Albert Ou , Thomas Gleixner , gregkh@linuxfoundation.org, alankao@andestech.com, Anup.Patel@wdc.com, atish.patra@wdc.com, kasan-dev@googlegroups.com, linux-doc@vger.kernel.org, Linux Kernel Mailing List , linux-riscv@lists.infradead.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Nick Hu =E6=96=BC 2019=E5=B9=B410=E6=9C=8828=E6=97= =A5 =E9=80=B1=E4=B8=80 =E4=B8=8A=E5=8D=8810:41=E5=AF=AB=E9=81=93=EF=BC=9A > > KASAN is an important runtime memory debugging feature in linux kernel wh= ich can > detect use-after-free and out-of-bounds problems. > > Changes in v2: > - Remove the porting of memmove and exclude the check instead. > - Fix some code noted by Christoph Hellwig > > Changes in v3: > - Update the KASAN documentation to mention that riscv is supported. > > Changes in v4: > - Correct the commit log > - Fix the bug reported by Greentime Hu > > Nick Hu (3): > kasan: No KASAN's memmove check if archs don't have it. > riscv: Add KASAN support > kasan: Add riscv to KASAN documentation. > > Documentation/dev-tools/kasan.rst | 4 +- > arch/riscv/Kconfig | 1 + > arch/riscv/include/asm/kasan.h | 27 ++++++++ > arch/riscv/include/asm/pgtable-64.h | 5 ++ > arch/riscv/include/asm/string.h | 9 +++ > arch/riscv/kernel/head.S | 3 + > arch/riscv/kernel/riscv_ksyms.c | 2 + > arch/riscv/kernel/setup.c | 5 ++ > arch/riscv/kernel/vmlinux.lds.S | 1 + > arch/riscv/lib/memcpy.S | 5 +- > arch/riscv/lib/memset.S | 5 +- > arch/riscv/mm/Makefile | 6 ++ > arch/riscv/mm/kasan_init.c | 104 ++++++++++++++++++++++++++++ > mm/kasan/common.c | 2 + > 14 files changed, 173 insertions(+), 6 deletions(-) > create mode 100644 arch/riscv/include/asm/kasan.h > create mode 100644 arch/riscv/mm/kasan_init.c > Hi Nick, I have tested KASAN feature with test_kasan.ko based on commit cd9e72b80090a8cd7d84a47a30a06fa92ff277d1 (tag: riscv/for-v5.4-rc3) and it passed in Qemu and Unleashed board. Thank you for fixing the bug. :) Tested-by: Greentime Hu