[PATCH] aarch64: MTE compatible strcpy

Szabolcs Nagy szabolcs.nagy@arm.com
Tue Jun 23 16:54:49 GMT 2020


The 06/09/2020 15:57, Alex Butler wrote:
> Add support for MTE to strcpy. Regression tested with xcheck and benchmarked
> with glibc's benchtests on the Cortex-A53, Cortex-A72, and Neoverse N1.
> 
> The existing implementation assumes that any access to the pages in which the
> string resides is safe. This assumption is not true when MTE is enabled. This
> patch updates the algorithm to ensure that accesses remain within the bounds
> of an MTE tag (16-byte chunks) and improves overall performance.
> 
> Co-authored-by: Wilco Dijkstra <wilco.dijkstra@arm.com>

thanks, this is ok to commit.

i will commit this together with the other
mte string function patches: even if memory
tagging malloc is not accepted into glibc in
this release cycle, it is useful to allow
ld_preloading a malloc implementation that
uses memory tagging.

i believe if the string functions are mte
safe then the rest of the libc is safe too.
(there is one known issue with user allocated
stack which i'd like to fix, all other mte
unsafety we found so far i consider to be
user errors)

the biggest regression is with strlen on
cortex-a53, but we may be able to fix that.


More information about the Libc-alpha mailing list