introduction of regset ->get() wrappers, switching ELF coredumps to those
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 1 Jun 2020 23:42:40 +0000 (19:42 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 27 Jul 2020 18:24:50 +0000 (14:24 -0400)
commitb4e9c9549f62329d2412f899635fddc5212b9cd4
tree2d62ec21ef17f93c1d4b4152b4db978c82adc11e
parentb3a9e3b9622ae10064826dccb4f7a52bd88c7407
introduction of regset ->get() wrappers, switching ELF coredumps to those

Two new helpers: given a process and regset, dump into a buffer.
regset_get() takes a buffer and size, regset_get_alloc() takes size
and allocates a buffer.

Return value in both cases is the amount of data actually dumped in
case of success or -E...  on error.

In both cases the size is capped by regset->n * regset->size, so
->get() is called with offset 0 and size no more than what regset
expects.

binfmt_elf.c callers of ->get() are switched to using those; the other
caller (copy_regset_to_user()) will need some preparations to switch.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/binfmt_elf.c
include/linux/regset.h
kernel/Makefile
kernel/regset.c [new file with mode: 0644]