From: Szabolcs Nagy <szabolcs.nagy@arm.com>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: Peter Collingbourne <pcc@google.com>,
Will Deacon <will@kernel.org>,
Vincenzo Frascino <vincenzo.frascino@arm.com>,
Evgenii Stepanov <eugenis@google.com>,
Linux ARM <linux-arm-kernel@lists.infradead.org>,
Tejas Belagod <Tejas.Belagod@arm.com>
Subject: Re: [PATCH v5] arm64: mte: allow async MTE to be upgraded to sync on a per-CPU basis
Date: Fri, 25 Jun 2021 10:22:53 +0100 [thread overview]
Message-ID: <20210625092253.GJ13058@arm.com> (raw)
In-Reply-To: <20210624165228.GB25097@arm.com>
The 06/24/2021 17:52, Catalin Marinas wrote:
> Thanks. Is there any MTE support in mainline glibc? If not, we may have
> another chance of adjusting the ABI.
glibc exposed heap tagging via an env var mechanism
that can change between glibc releases, i.e. not
abi stable, and we have no real contract about how
the prctl can be used on top of glibc (see e.g. the
multi-thread issue).
we don't expect the async mode to be very useful on
glibc based linux systems.
changing async mode is unlikely to affect anything
in userspace at this point.
> It's a pretty complex step over (or emulate), so I wouldn't go there.
> The user signal handler could disable tag checking altogether
> (PSTATE.TCO) and continue.
ah yes, disabling checks makes more sense if user
wants to continue.
> The question is more about whether we still want to keep the current
> user program choice of sync vs async (vs the new asymmetric mode in
> 8.7). If the user wouldn't care, we just override it from the kernel
> without any additional PR_ flag for opting in (or out).
i think the usefulness of pure async mode is very
limited, and we haven't seen valid use-cases for it.
> > the per cpu setting is a bit nasty: can the kernel decide which cpu
> > should use sync and which async? or a privileged user will have to
> > fiddle with sysfs settings on every system to make this useful?
>
> The proposed interface is sysfs. I think that's not relevant to the user
> application since it wouldn't have control over it anyway. What's
> visible is that it cannot rely on the mode it requested, not even for
> the lifetime of a thread (as it may migrate between CPUs). Do you see
> any issues with this? For Android, it's probably fine but if other
> programs cannot cope (or need the specific mode requested), we'd need a
> new control (for opt-in or opt-out).
i don't see any issues with changing async mode.
i assume the prctl get operation would return whatever
was the prctl setting for the thread and not try to
expose the per cpu architectural state.
i assume async vs sync fault can be distinguished via
the SEGV_MTE{A,S}ERR si_code.
_______________________________________________
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-06-25 10:22 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-15 20:38 [PATCH v5] arm64: mte: allow async MTE to be upgraded to sync on a per-CPU basis Peter Collingbourne
2021-06-17 21:58 ` Will Deacon
2021-06-17 22:13 ` Peter Collingbourne
2021-06-18 15:09 ` Catalin Marinas
2021-06-19 0:45 ` Peter Collingbourne
2021-06-21 12:39 ` Will Deacon
2021-06-21 15:18 ` Catalin Marinas
2021-06-21 17:39 ` Will Deacon
2021-06-21 18:50 ` Catalin Marinas
2021-06-22 18:37 ` Peter Collingbourne
2021-06-23 8:55 ` Szabolcs Nagy
2021-06-23 17:15 ` Peter Collingbourne
2021-06-24 16:52 ` Catalin Marinas
2021-06-25 9:22 ` Szabolcs Nagy [this message]
2021-06-25 12:01 ` Catalin Marinas
2021-06-25 12:39 ` Will Deacon
2021-06-25 13:53 ` Catalin Marinas
2021-06-28 10:14 ` Will Deacon
2021-06-28 15:20 ` Catalin Marinas
2021-06-29 10:46 ` Will Deacon
2021-06-29 13:58 ` Szabolcs Nagy
2021-06-29 14:31 ` Tejas Belagod
2021-06-29 15:54 ` Catalin Marinas
2021-06-29 19:11 ` Peter Collingbourne
2021-06-30 15:19 ` Catalin Marinas
2021-06-30 23:39 ` Peter Collingbourne
2021-07-07 10:30 ` Will Deacon
2021-07-07 12:55 ` Catalin Marinas
2021-07-07 14:11 ` Will Deacon
2021-06-25 14:14 ` Szabolcs Nagy
2021-06-25 16:21 ` Tejas Belagod
2021-06-28 10:17 ` Will Deacon
2021-06-28 17:21 ` Szabolcs Nagy
2021-06-25 16:52 ` Peter Collingbourne
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=20210625092253.GJ13058@arm.com \
--to=szabolcs.nagy@arm.com \
--cc=Tejas.Belagod@arm.com \
--cc=catalin.marinas@arm.com \
--cc=eugenis@google.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=pcc@google.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.