• Catalin Marinas's avatar
    arm64: mte: ptrace: Add PTRACE_{PEEK,POKE}MTETAGS support · 18ddbaa0
    Catalin Marinas authored
    Add support for bulk setting/getting of the MTE tags in a tracee's
    address space at 'addr' in the ptrace() syscall prototype. 'data' points
    to a struct iovec in the tracer's address space with iov_base
    representing the address of a tracer's buffer of length iov_len. The
    tags to be copied to/from the tracer's buffer are stored as one tag per
    byte.
    
    On successfully copying at least one tag, ptrace() returns 0 and updates
    the tracer's iov_len with the number of tags copied. In case of error,
    either -EIO or -EFAULT is returned, trying to follow the ptrace() man
    page.
    
    Note that the tag copying functions are not performance critical,
    therefore they lack optimisations found in typical memory copy routines.
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will@kernel.org>
    Cc: Alan Hayward <Alan.Hayward@arm.com>
    Cc: Luis Machado <luis.machado@linaro.org>
    Cc: Omair Javaid <omair.javaid@linaro.org>
    18ddbaa0
ptrace.h 7.49 KB