From: Florian Fainelli <f.fainelli@gmail.com> To: linux-arm-kernel@lists.infradead.org Cc: alexandre.belloni@bootlin.com, mhocko@suse.com, catalin.marinas@arm.com, linux-kernel@vger.kernel.org, dhowells@redhat.com, yamada.masahiro@socionext.com, ryabinin.a.a@gmail.com, glider@google.com, kvmarm@lists.cs.columbia.edu, Florian Fainelli <f.fainelli@gmail.com>, corbet@lwn.net, Abbott Liu <liuwenliang@huawei.com>, daniel.lezcano@linaro.org, linux@armlinux.org.uk, kasan-dev@googlegroups.com, bcm-kernel-feedback-list@broadcom.com, Andrey Ryabinin <aryabinin@virtuozzo.com>, keescook@chromium.org, arnd@arndb.de, marc.zyngier@arm.com, andre.przywara@arm.com, philip@cog.systems, jinb.park7@gmail.com, tglx@linutronix.de, dvyukov@google.com, nico@fluxnic.net, gregkh@linuxfoundation.org, ard.biesheuvel@linaro.org, linux-doc@vger.kernel.org, geert@linux-m68k.org, rob@landley.net, pombredanne@nexb.com, akpm@linux-foundation.org, thgarnie@google.com, kirill.shutemov@linux.intel.com Subject: [PATCH v6 2/6] ARM: Disable instrumentation for some code Date: Mon, 17 Jun 2019 15:11:30 -0700 Message-ID: <20190617221134.9930-3-f.fainelli@gmail.com> (raw) In-Reply-To: <20190617221134.9930-1-f.fainelli@gmail.com> From: Andrey Ryabinin <aryabinin@virtuozzo.com> Disable instrumentation for arch/arm/boot/compressed/* and arch/arm/vdso/* because those code won't linkd with kernel image. Disable instrumentation for arch/arm/kvm/hyp/*. See commit a6cdf1c08cbf ("kvm: arm64: Disable compiler instrumentation for hypervisor code") for more details. Disable instrumentation for arch/arm/mm/physaddr.c. See commit ec6d06efb0ba ("arm64: Add support for CONFIG_DEBUG_VIRTUAL") for more details. Disable kasan check in the function unwind_pop_register because it doesn't matter that kasan checks failed when unwind_pop_register read stack memory of task. Reported-by: Florian Fainelli <f.fainelli@gmail.com> Reported-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Abbott Liu <liuwenliang@huawei.com> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> --- arch/arm/boot/compressed/Makefile | 1 + arch/arm/kernel/unwind.c | 3 ++- arch/arm/mm/Makefile | 1 + arch/arm/vdso/Makefile | 2 ++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile index 9219389bbe61..fa4d1fddf1db 100644 --- a/arch/arm/boot/compressed/Makefile +++ b/arch/arm/boot/compressed/Makefile @@ -24,6 +24,7 @@ OBJS += hyp-stub.o endif GCOV_PROFILE := n +KASAN_SANITIZE := n # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in. KCOV_INSTRUMENT := n diff --git a/arch/arm/kernel/unwind.c b/arch/arm/kernel/unwind.c index 4574e6aea0a5..b70fb260c28a 100644 --- a/arch/arm/kernel/unwind.c +++ b/arch/arm/kernel/unwind.c @@ -236,7 +236,8 @@ static int unwind_pop_register(struct unwind_ctrl_block *ctrl, if (*vsp >= (unsigned long *)ctrl->sp_high) return -URC_FAILURE; - ctrl->vrs[reg] = *(*vsp)++; + ctrl->vrs[reg] = READ_ONCE_NOCHECK(*(*vsp)); + (*vsp)++; return URC_OK; } diff --git a/arch/arm/mm/Makefile b/arch/arm/mm/Makefile index 7cb1699fbfc4..432302911d6e 100644 --- a/arch/arm/mm/Makefile +++ b/arch/arm/mm/Makefile @@ -16,6 +16,7 @@ endif obj-$(CONFIG_ARM_PTDUMP_CORE) += dump.o obj-$(CONFIG_ARM_PTDUMP_DEBUGFS) += ptdump_debugfs.o obj-$(CONFIG_MODULES) += proc-syms.o +KASAN_SANITIZE_physaddr.o := n obj-$(CONFIG_DEBUG_VIRTUAL) += physaddr.o obj-$(CONFIG_ALIGNMENT_TRAP) += alignment.o diff --git a/arch/arm/vdso/Makefile b/arch/arm/vdso/Makefile index fadf554d9391..855fa82bf3ec 100644 --- a/arch/arm/vdso/Makefile +++ b/arch/arm/vdso/Makefile @@ -33,6 +33,8 @@ GCOV_PROFILE := n # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in. KCOV_INSTRUMENT := n +KASAN_SANITIZE := n + # Force dependency $(obj)/vdso.o : $(obj)/vdso.so -- 2.17.1 _______________________________________________ kvmarm mailing list kvmarm@lists.cs.columbia.edu https://lists.cs.columbia.edu/mailman/listinfo/kvmarm
next prev parent reply index Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-06-17 22:11 [PATCH v6 0/6] KASan for arm Florian Fainelli 2019-06-17 22:11 ` [PATCH v6 1/6] ARM: Add TTBR operator for kasan_init Florian Fainelli 2019-07-02 21:03 ` Linus Walleij 2019-07-11 16:54 ` Florian Fainelli 2019-06-17 22:11 ` Florian Fainelli [this message] 2019-07-02 21:56 ` [PATCH v6 2/6] ARM: Disable instrumentation for some code Linus Walleij 2019-07-11 16:53 ` Florian Fainelli 2019-06-17 22:11 ` [PATCH v6 3/6] ARM: Replace memory function for kasan Florian Fainelli 2019-06-17 22:11 ` [PATCH v6 4/6] ARM: Define the virtual space of KASan's shadow region Florian Fainelli 2019-06-17 22:11 ` [PATCH v6 5/6] ARM: Initialize the mapping of KASan shadow memory Florian Fainelli 2019-06-17 22:11 ` [PATCH v6 6/6] ARM: Enable KASan for arm Florian Fainelli 2019-07-02 21:06 ` [PATCH v6 0/6] " Linus Walleij 2019-07-11 17:00 ` Florian Fainelli 2019-07-18 7:51 ` Arnd Bergmann 2019-10-07 21:34 ` Florian Fainelli 2019-10-07 22:10 ` Arnd Bergmann 2019-10-08 8:47 ` Linus Walleij 2019-11-14 18:12 ` Marco Felsch 2019-11-14 23:01 ` Florian Fainelli 2019-11-15 2:13 ` ***SPAM*** " Matjaz Matjaz 2019-11-15 7:08 ` Marco Felsch 2019-11-15 11:44 ` Marco Felsch 2019-11-19 0:13 ` Florian Fainelli 2020-01-17 10:13 ` Linus Walleij 2020-01-17 19:55 ` Florian Fainelli 2020-01-17 21:05 ` Linus Walleij 2020-03-05 8:43 ` Linus Walleij 2020-03-05 9:43 ` Marco Felsch 2020-03-20 9:26 ` Linus Walleij
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190617221134.9930-3-f.fainelli@gmail.com \ --to=f.fainelli@gmail.com \ --cc=akpm@linux-foundation.org \ --cc=alexandre.belloni@bootlin.com \ --cc=andre.przywara@arm.com \ --cc=ard.biesheuvel@linaro.org \ --cc=arnd@arndb.de \ --cc=aryabinin@virtuozzo.com \ --cc=bcm-kernel-feedback-list@broadcom.com \ --cc=catalin.marinas@arm.com \ --cc=corbet@lwn.net \ --cc=daniel.lezcano@linaro.org \ --cc=dhowells@redhat.com \ --cc=dvyukov@google.com \ --cc=geert@linux-m68k.org \ --cc=glider@google.com \ --cc=gregkh@linuxfoundation.org \ --cc=jinb.park7@gmail.com \ --cc=kasan-dev@googlegroups.com \ --cc=keescook@chromium.org \ --cc=kirill.shutemov@linux.intel.com \ --cc=kvmarm@lists.cs.columbia.edu \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-doc@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=liuwenliang@huawei.com \ --cc=marc.zyngier@arm.com \ --cc=mhocko@suse.com \ --cc=nico@fluxnic.net \ --cc=philip@cog.systems \ --cc=pombredanne@nexb.com \ --cc=rob@landley.net \ --cc=ryabinin.a.a@gmail.com \ --cc=tglx@linutronix.de \ --cc=thgarnie@google.com \ --cc=yamada.masahiro@socionext.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
KVM ARM Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/kvmarm/0 kvmarm/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 kvmarm kvmarm/ https://lore.kernel.org/kvmarm \ kvmarm@lists.cs.columbia.edu public-inbox-index kvmarm Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/edu.columbia.cs.lists.kvmarm AGPL code for this site: git clone https://public-inbox.org/public-inbox.git