From: Mark Rutland <mark.rutland@arm.com>
To: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Marco Elver <elver@google.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Branislav Rankov <Branislav.Rankov@arm.com>,
kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org,
Alexander Potapenko <glider@google.com>,
Evgenii Stepanov <eugenis@google.com>,
Andrey Konovalov <andreyknvl@google.com>,
Dmitry Vyukov <dvyukov@google.com>,
Andrey Ryabinin <aryabinin@virtuozzo.com>,
Will Deacon <will@kernel.org>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3 1/4] kasan, arm64: Add KASAN light mode
Date: Mon, 18 Jan 2021 10:24:26 +0000 [thread overview]
Message-ID: <20210118102426.GA29688@C02TD0UTHF1T.local> (raw)
In-Reply-To: <ba23ab9b-8f49-bdb7-87d8-3eb99ddf54b6@arm.com>
On Sat, Jan 16, 2021 at 01:47:08PM +0000, Vincenzo Frascino wrote:
> On 1/15/21 3:08 PM, Mark Rutland wrote:
> > On Fri, Jan 15, 2021 at 12:00:40PM +0000, Vincenzo Frascino wrote:
> >> #ifdef CONFIG_KASAN_HW_TAGS
> >> -#define arch_enable_tagging() mte_enable_kernel()
> >> +#define arch_enable_tagging(mode) mte_enable_kernel(mode)
> >
> > Rather than passing a mode in, I think it'd be better to have:
> >
> > * arch_enable_tagging_prod()
> > * arch_enable_tagging_light()
> >
> > ... that we can map in the arch code to separate:
> >
> > * mte_enable_kernel_sync()
> > * mte_enable_kernel_async()
> >
> > ... as by construction that avoids calls with an unhandled mode, and we
> > wouldn't need the mode enum kasan_hw_tags_mode...
> >
> >> +static inline int hw_init_mode(enum kasan_arg_mode mode)
> >> +{
> >> + switch (mode) {
> >> + case KASAN_ARG_MODE_LIGHT:
> >> + return KASAN_HW_TAGS_ASYNC;
> >> + default:
> >> + return KASAN_HW_TAGS_SYNC;
> >> + }
> >> +}
> >
> > ... and we can just have a wrapper like this to call either of the two functions directly, i.e.
> >
> > static inline void hw_enable_tagging_mode(enum kasan_arg_mode mode)
> > {
> > if (mode == KASAN_ARG_MODE_LIGHT)
> > arch_enable_tagging_mode_light();
> > else
> > arch_enable_tagging_mode_prod();
> > }
> >
>
> Fine by me, this would remove the need of adding a new enumeration as well and
> reflect on the arch code. I would keep "arch_enable_tagging_mode_sync" and
> "arch_enable_tagging_mode_async" though to give a clear indication in the KASAN
> code of the mode we are setting. I will adapt my code accordingly for v4.
Thanks, that sounds great!
I completely agree on keeping the '_sync' and '_aync' suffixes in the
the core code.
Mark.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-01-18 10:26 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-15 12:00 [PATCH v3 0/4] arm64: ARMv8.5-A: MTE: Add async mode support Vincenzo Frascino
2021-01-15 12:00 ` [PATCH v3 1/4] kasan, arm64: Add KASAN light mode Vincenzo Frascino
2021-01-15 15:08 ` Mark Rutland
2021-01-16 13:47 ` Vincenzo Frascino
2021-01-16 14:09 ` Andrey Konovalov
2021-01-18 10:24 ` Mark Rutland [this message]
2021-01-15 18:59 ` Andrey Konovalov
2021-01-16 13:40 ` Vincenzo Frascino
2021-01-16 13:59 ` Andrey Konovalov
2021-01-16 14:06 ` Vincenzo Frascino
2021-01-15 12:00 ` [PATCH v3 2/4] arm64: mte: Add asynchronous mode support Vincenzo Frascino
2021-01-15 15:13 ` Mark Rutland
2021-01-16 13:49 ` Vincenzo Frascino
2021-01-15 12:00 ` [PATCH v3 3/4] arm64: mte: Enable async tag check fault Vincenzo Frascino
2021-01-15 15:37 ` Mark Rutland
2021-01-18 12:57 ` Catalin Marinas
2021-01-18 13:37 ` Vincenzo Frascino
2021-01-18 14:14 ` Mark Rutland
2021-01-18 14:48 ` Vincenzo Frascino
2021-01-18 15:39 ` Vincenzo Frascino
2021-01-18 15:40 ` Vincenzo Frascino
2021-01-15 12:00 ` [PATCH v3 4/4] arm64: mte: Optimize mte_assign_mem_tag_range() Vincenzo Frascino
2021-01-15 15:45 ` Mark Rutland
2021-01-16 14:22 ` Vincenzo Frascino
2021-01-17 12:27 ` Vincenzo Frascino
2021-01-18 10:41 ` Mark Rutland
2021-01-18 11:00 ` Vincenzo Frascino
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=20210118102426.GA29688@C02TD0UTHF1T.local \
--to=mark.rutland@arm.com \
--cc=Branislav.Rankov@arm.com \
--cc=andreyknvl@google.com \
--cc=aryabinin@virtuozzo.com \
--cc=catalin.marinas@arm.com \
--cc=dvyukov@google.com \
--cc=elver@google.com \
--cc=eugenis@google.com \
--cc=glider@google.com \
--cc=kasan-dev@googlegroups.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=vincenzo.frascino@arm.com \
--cc=will@kernel.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).