Messages in this thread | | | Date | Tue, 23 Feb 2021 13:14:37 +0000 | From | Catalin Marinas <> | Subject | Re: [PATCH v13 4/7] arm64: mte: Enable TCO in functions that can read beyond buffer limits |
| |
On Tue, Feb 23, 2021 at 12:49:52PM +0000, Will Deacon wrote: > On Tue, Feb 23, 2021 at 12:05:32PM +0000, Catalin Marinas wrote: > > On Tue, Feb 23, 2021 at 10:56:46AM +0000, Vincenzo Frascino wrote: > > > On 2/22/21 5:58 PM, Catalin Marinas wrote: > > > > We'll still have an issue with dynamically switching the async/sync mode > > > > at run-time. Luckily kasan doesn't do this now. The problem is that > > > > until the last CPU have been switched from async to sync, we can't > > > > toggle the static label. When switching from sync to async, we need > > > > to do it on the first CPU being switched. > > > > > > I totally agree on this point. In the case of runtime switching we might need > > > the rethink completely the strategy and depends a lot on what we want to allow > > > and what not. For the kernel I imagine we will need to expose something in sysfs > > > that affects all the cores and then maybe stop_machine() to propagate it to all > > > the cores. Do you think having some of the cores running in sync mode and some > > > in async is a viable solution? > > > > stop_machine() is an option indeed. I think it's still possible to run > > some cores in async while others in sync but the static key here would > > only be toggled when no async CPUs are left. > > Just as a general point, but if we expose stop_machine() via sysfs we > probably want to limit that to privileged users so you can't DoS the system > by spamming into the file.
Definitely. Anyway, that's a later kasan feature if they'd find it useful. Currently the mode is set at boot from cmdline.
-- Catalin
| |