From: Al Viro <viro@zeniv.linux.org.uk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org
Subject: [git pull] regset work
Date: Thu, 6 Aug 2020 15:10:44 +0100 [thread overview]
Message-ID: <20200806141044.GP1236603@ZenIV.linux.org.uk> (raw)
regset API changes. Regularize copy_regset_{to,from}_user() callers,
switch to saner calling conventions for ->get(), kill user_regset_copyout().
->put() side of things will have to wait for the next cycle, unfortunately.
The series had been posted (l-k, linux-arch) and sat in -next for weeks.
The balance is about -1KLoC and replacements for ->get() instances are a lot
saner.
Two trivial conflicts - one in arch/x86/include/asm/fpu/xstate.h
(obvious merge), another in arch/x86/kernel/fpu/xstate.c (the variant from
this branch is the right one).
The following changes since commit b3a9e3b9622ae10064826dccb4f7a52bd88c7407:
Linux 5.8-rc1 (2020-06-14 12:45:04 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.regset
for you to fetch changes up to ce327e1c54119179066d6f3573a28001febc9265:
regset: kill user_regset_copyout{,_zero}() (2020-07-27 14:31:13 -0400)
----------------------------------------------------------------
Al Viro (42):
x86: copy_fpstate_to_sigframe(): have fpregs_soft_get() use kernel buffer
x86: kill dump_fpu()
[ia64] sanitize elf_access_gpreg()
[ia64] teach elf_access_reg() to handle the missing range (r16..r31)
[ia64] regularize do_gpregs_[gs]et()
[ia64] access_uarea(): stop bothering with gpregs_[gs]et()
[ia64] access_uarea(): don't bother with fpregs_[gs]et()
sparc64: switch genregs32_get() to use of get_from_target()
sparc32: get rid of odd callers of copy_regset_to_user()
sparc64: get rid of odd callers of copy_regset_to_user()
arm64: take fetching compat reg out of pt_regs into a new helper
arm64: get rid of copy_regset_to_user() in compat_ptrace_read_user()
arm64: sanitize compat_ptrace_write_user()
sparc32: get rid of odd callers of copy_regset_from_user()
sparc64: get rid of odd callers of copy_regset_from_user()
introduction of regset ->get() wrappers, switching ELF coredumps to those
Merge branches 'regset.x86', 'regset.ia64', 'regset.sparc' and 'regset.arm64' into work.regset
copy_regset_to_user(): do all copyout at once.
regset: new method and helpers for it
x86: switch to ->regset_get()
powerpc: switch to ->regset_get()
s390: switch to ->regset_get()
sparc: switch to ->regset_get()
mips: switch to ->regset_get()
arm64: switch to ->regset_get()
sh: convert to ->regset_get()
arm: switch to ->regset_get()
arc: switch to ->regset_get()
ia64: switch to ->regset_get()
c6x: switch to ->regset_get()
riscv: switch to ->regset_get()
openrisc: switch to ->regset_get()
h8300: switch to ->regset_get()
hexagon: switch to ->regset_get()
nios2: switch to ->regset_get()
nds32: switch to ->regset_get()
parisc: switch to ->regset_get()
xtensa: switch to ->regset_get()
csky: switch to ->regset_get()
regset: kill ->get()
regset(): kill ->get_size()
regset: kill user_regset_copyout{,_zero}()
arch/arc/kernel/ptrace.c | 148 +++----
arch/arm/kernel/ptrace.c | 52 +--
arch/arm64/kernel/ptrace.c | 303 +++++---------
arch/c6x/kernel/ptrace.c | 11 +-
arch/csky/kernel/ptrace.c | 24 +-
arch/h8300/kernel/ptrace.c | 17 +-
arch/hexagon/kernel/ptrace.c | 62 +--
arch/ia64/kernel/ptrace.c | 396 +++++++------------
arch/mips/kernel/ptrace.c | 204 +++-------
arch/nds32/kernel/ptrace.c | 9 +-
arch/nios2/kernel/ptrace.c | 51 +--
arch/openrisc/kernel/ptrace.c | 26 +-
arch/parisc/kernel/ptrace.c | 84 +---
arch/powerpc/kernel/ptrace/ptrace-altivec.c | 37 +-
arch/powerpc/kernel/ptrace/ptrace-decl.h | 44 +--
arch/powerpc/kernel/ptrace/ptrace-novsx.c | 5 +-
arch/powerpc/kernel/ptrace/ptrace-spe.c | 16 +-
arch/powerpc/kernel/ptrace/ptrace-tm.c | 152 +++----
arch/powerpc/kernel/ptrace/ptrace-view.c | 185 ++++-----
arch/powerpc/kernel/ptrace/ptrace-vsx.c | 13 +-
arch/riscv/kernel/ptrace.c | 33 +-
arch/s390/kernel/ptrace.c | 199 +++-------
arch/sh/kernel/process_32.c | 5 +-
arch/sh/kernel/ptrace_32.c | 48 +--
arch/sparc/kernel/ptrace_32.c | 269 +++++++------
arch/sparc/kernel/ptrace_64.c | 591 ++++++++++++++--------------
arch/x86/include/asm/fpu/internal.h | 1 -
arch/x86/include/asm/fpu/regset.h | 4 +-
arch/x86/include/asm/fpu/xstate.h | 4 +-
arch/x86/kernel/fpu/regset.c | 55 +--
arch/x86/kernel/fpu/signal.c | 13 +-
arch/x86/kernel/fpu/xstate.c | 164 ++------
arch/x86/kernel/ptrace.c | 75 ++--
arch/x86/kernel/tls.c | 32 +-
arch/x86/kernel/tls.h | 2 +-
arch/x86/math-emu/fpu_entry.c | 19 +-
arch/xtensa/kernel/ptrace.c | 16 +-
fs/binfmt_elf.c | 54 ++-
include/linux/regset.h | 218 +++-------
kernel/Makefile | 2 +-
kernel/regset.c | 76 ++++
41 files changed, 1370 insertions(+), 2349 deletions(-)
create mode 100644 kernel/regset.c
next reply other threads:[~2020-08-06 17:00 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-06 14:10 Al Viro [this message]
2020-08-07 17:48 ` [git pull] regset work pr-tracker-bot
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=20200806141044.GP1236603@ZenIV.linux.org.uk \
--to=viro@zeniv.linux.org.uk \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.