public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: Szabolcs Nagy <szabolcs.nagy@arm•com>
To: Catalin Marinas <catalin.marinas@arm•com>
Cc: linux-arch@vger•kernel.org, nd@arm•com,
	Will Deacon <will@kernel•org>,
	Andrey Konovalov <andreyknvl@google•com>,
	Kevin Brodsky <kevin.brodsky@arm•com>,
	linux-mm@kvack•org, Andrew Morton <akpm@linux-foundation•org>,
	Vincenzo Frascino <vincenzo.frascino@arm•com>,
	Peter Collingbourne <pcc@google•com>,
	Dave Martin <Dave.Martin@arm•com>,
	linux-arm-kernel@lists•infradead.org
Subject: Re: [PATCH v7 29/29] arm64: mte: Add Memory Tagging Extension documentation
Date: Mon, 3 Aug 2020 13:43:10 +0100	[thread overview]
Message-ID: <20200803124309.GC14398@arm.com> (raw)
In-Reply-To: <20200728195957.GA31698@gaia>

The 07/28/2020 20:59, Catalin Marinas wrote:
> On Tue, Jul 28, 2020 at 03:53:51PM +0100, Szabolcs Nagy wrote:
> > if linux does not want to add a per process
> > setting then only libc will be able to opt-in
> > to mte and only at very early in the startup
> > process (before executing any user code that
> > may start threads). this is not out of question,
> > but i think it limits the usage and deployment
> > options.
> 
> There is also the risk that we try to be too flexible at this stage
> without a real use-case.

i don't know how mte will be turned on in libc.

if we can always turn sync tag checks on early
whenever mte is available then i think there is
no issue.

but if we have to make the decision later for
compatibility or performance reasons then per
thread setting is problematic.

use of the prctl outside of libc is very limited
if it's per thread only:

- application code may use it in a (elf specific)
  pre-initialization function, but that's a bit
  obscure (not exposed in c) and it is reasonable
  for an application to enable mte checks after
  it registered a signal handler for mte faults.
  (and at that point it may be multi-threaded).

- library code normally initializes per thread
  state on the first call into the library from a
  given thread, but with mte, as soon as memory /
  pointers are tagged in one thread, all threads
  are affected: not performing checks in other
  threads is less secure (may be ok) and it means
  incompatible syscall abi (not ok). so at least
  PR_TAGGED_ADDR_ENABLE should have process wide
  setting for this usage.

but i guess it is fine to design the mechanism
for these in a later linux version, until then
such usage will be unreliable (will depend on
how early threads are created).

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists•infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-08-03 12:44 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20200715170844.30064-1-catalin.marinas@arm.com>
     [not found] ` <20200715170844.30064-30-catalin.marinas@arm.com>
2020-07-27 16:36   ` [PATCH v7 29/29] arm64: mte: Add Memory Tagging Extension documentation Szabolcs Nagy
2020-07-28 11:08     ` Dave Martin
2020-07-28 14:53       ` Szabolcs Nagy
2020-07-28 19:59         ` Catalin Marinas
2020-08-03 12:43           ` Szabolcs Nagy [this message]
2020-08-07 15:19             ` Catalin Marinas
2020-08-10 14:13               ` Szabolcs Nagy
2020-08-11 17:20                 ` Catalin Marinas
2020-08-12 12:45                   ` Szabolcs Nagy
2020-08-19  9:54                     ` Catalin Marinas
2020-08-20 16:43                       ` Szabolcs Nagy
2020-08-20 17:27                         ` Paul Eggert
2020-08-22 11:31                           ` Catalin Marinas
2020-08-22 11:28                         ` Catalin Marinas
     [not found] ` <20200715170844.30064-19-catalin.marinas@arm.com>
2020-07-20 15:30   ` [PATCH v7 18/29] arm64: mte: Allow user control of the tag check mode via prctl() Kevin Brodsky
2020-07-20 17:00     ` Dave Martin
2020-07-22 10:28       ` Catalin Marinas
2020-07-23 19:33       ` Kevin Brodsky
2020-07-22 11:09     ` Catalin Marinas
2020-08-04 19:34   ` Kevin Brodsky
2020-08-05  9:24     ` Catalin Marinas
     [not found] ` <20200715170844.30064-23-catalin.marinas@arm.com>
2020-08-13 14:01   ` [PATCH v7 22/29] arm64: mte: ptrace: Add PTRACE_{PEEK,POKE}MTETAGS support Luis Machado
2020-08-22 10:56     ` Catalin Marinas

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=20200803124309.GC14398@arm.com \
    --to=szabolcs.nagy@arm$(echo .)com \
    --cc=Dave.Martin@arm$(echo .)com \
    --cc=akpm@linux-foundation$(echo .)org \
    --cc=andreyknvl@google$(echo .)com \
    --cc=catalin.marinas@arm$(echo .)com \
    --cc=kevin.brodsky@arm$(echo .)com \
    --cc=linux-arch@vger$(echo .)kernel.org \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    --cc=linux-mm@kvack$(echo .)org \
    --cc=nd@arm$(echo .)com \
    --cc=pcc@google$(echo .)com \
    --cc=vincenzo.frascino@arm$(echo .)com \
    --cc=will@kernel$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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