linux: Add PR_SET_VMA_ANON_NAME support
commit78ed8bdf4f13e7f5d8eef77c12fbb030fdbdafe0
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Wed, 1 Nov 2023 12:56:05 +0000 (1 09:56 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 7 Nov 2023 13:27:20 +0000 (7 10:27 -0300)
tree11eb67f745b6a4142c44e486fba71e74e655f864
parent091ee2190dd5f30ca5eb4549f531ab7b75a1fd6e
linux: Add PR_SET_VMA_ANON_NAME support

Linux 5.17 added support to naming anonymous virtual memory areas
through the prctl syscall.  The __set_vma_name is a wrapper to avoid
optimizing the prctl call if the kernel does not support it.

If the kernel does not support PR_SET_VMA_ANON_NAME, prctl returns
EINVAL. And it also returns the same error for an invalid argument.
Since it is an internal-only API, it assumes well-formatted input:
aligned START, with (START, START+LEN) being a valid memory range,
and NAME with a limit of 80 characters without an invalid one
("\\`$[]").
Reviewed-by: DJ Delorie <dj@redhat.com>
include/sys/prctl.h
sysdeps/generic/setvmaname.h [new file with mode: 0644]
sysdeps/unix/sysv/linux/Makefile
sysdeps/unix/sysv/linux/setvmaname.c [new file with mode: 0644]
sysdeps/unix/sysv/linux/setvmaname.h [new file with mode: 0644]