linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/9] ARM: remove set_fs callers and implementation
@ 2020-10-30 15:45 Arnd Bergmann
  2020-10-30 15:49 ` [PATCH 1/9] mm/maccess: fix unaligned copy_{from,to}_kernel_nofault Arnd Bergmann
  2020-11-06  9:36 ` [PATCH v4 0/9] ARM: remove set_fs callers and implementation Linus Walleij
  0 siblings, 2 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-10-30 15:45 UTC (permalink / raw)
  To: Russell King, Christoph Hellwig
  Cc: Arnd Bergmann, linux-kernel, linux-arm-kernel, linux-arch,
	linux-mm, Alexander Viro, Linus Walleij

From: Arnd Bergmann <arnd@arndb.de>

Hi Christoph, Russell,

This is the rebased version of my ARM set_fs patches on top of
v5.10-rc1, dropping the TASK_SIZE_MAX patch but leaving everything
else unchanged.

I have tested the oabi-compat changes using the LTP tests for the three
modified syscalls using an Armv7 kernel and a Debian 5 OABI user space.

I also tested the syscall_get_nr() in all combinations of OABI/EABI
kernel user space and fixed the bugs I found after Russell pointed
out one of those issues.

Russell, you can pull these from

 https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git arm-setfs_v4

or I can add them to the ARM patch tracker if you prefer.

     Arnd


Arnd Bergmann (9):
  mm/maccess: fix unaligned copy_{from,to}_kernel_nofault
  ARM: traps: use get_kernel_nofault instead of set_fs()
  ARM: oabi-compat: add epoll_pwait handler
  ARM: syscall: always store thread_info->syscall
  ARM: oabi-compat: rework epoll_wait/epoll_pwait emulation
  ARM: oabi-compat: rework sys_semtimedop emulation
  ARM: oabi-compat: rework fcntl64() emulation
  ARM: uaccess: add __{get,put}_kernel_nofault
  ARM: uaccess: remove set_fs() implementation

 arch/arm/Kconfig                   |   1 -
 arch/arm/include/asm/ptrace.h      |   1 -
 arch/arm/include/asm/syscall.h     |  16 ++-
 arch/arm/include/asm/thread_info.h |   4 -
 arch/arm/include/asm/uaccess-asm.h |   6 -
 arch/arm/include/asm/uaccess.h     | 169 ++++++++++++++-------------
 arch/arm/kernel/asm-offsets.c      |   3 +-
 arch/arm/kernel/entry-common.S     |  17 +--
 arch/arm/kernel/process.c          |   7 +-
 arch/arm/kernel/ptrace.c           |   9 +-
 arch/arm/kernel/signal.c           |   8 --
 arch/arm/kernel/sys_oabi-compat.c  | 181 ++++++++++++++++-------------
 arch/arm/kernel/traps.c            |  47 +++-----
 arch/arm/lib/copy_from_user.S      |   3 +-
 arch/arm/lib/copy_to_user.S        |   3 +-
 arch/arm/tools/syscall.tbl         |   2 +-
 fs/eventpoll.c                     |   5 +-
 include/linux/eventpoll.h          |  18 +++
 include/linux/syscalls.h           |   3 +
 ipc/sem.c                          |  84 ++++++++-----
 mm/maccess.c                       |  28 ++++-
 21 files changed, 332 insertions(+), 283 deletions(-)

Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-arch@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
-- 
2.27.0


^ permalink raw reply	[flat|nested] 18+ messages in thread
* [PATCH 0/9] ARM: remove set_fs callers and implementation
@ 2020-09-07 15:36 Arnd Bergmann
  2020-09-07 15:36 ` [PATCH 1/9] mm/maccess: fix unaligned copy_{from,to}_kernel_nofault Arnd Bergmann
  0 siblings, 1 reply; 18+ messages in thread
From: Arnd Bergmann @ 2020-09-07 15:36 UTC (permalink / raw)
  To: Christoph Hellwig, Russell King
  Cc: Alexander Viro, kernel, linux-arch, linux-arm-kernel,
	linus.walleij, Arnd Bergmann

Hi Christoph, Russell,

As promised, here is my series to remove set_fs() from arch/arm based
on the architecture-independent patches.

I have tested the oabi-compat changes using the LTP tests for the three
modified syscalls using an Armv7 kernel and a Debian 5 OABI user space,
and I have lightly tested the get_kernel_nofault infrastructure by
loading the test_lockup.ko module after setting CONFIG_DEBUG_SPINLOCK.

Let me know if there is a more thorough test I should try.

Overall there is a bit of ugliness getting introduced in the oabi compat
code and for adding another code path for TUSER(). If anyone has a better
idea, I can try out a different way.

I assume these patches can go through Al's tree along with the
corresponding changes for other architectures, once Russell is happy
with them.

Please review.

     Arnd

[1] https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git/log/?h=arm-kill-set_fs

Arnd Bergmann (9):
  mm/maccess: fix unaligned copy_{from,to}_kernel_nofault
  ARM: traps: use get_kernel_nofault instead of set_fs()
  ARM: oabi-compat: add epoll_pwait handler
  ARM: syscall: always store thread_info->syscall
  ARM: oabi-compat: rework epoll_wait/epoll_pwait emulation
  ARM: oabi-compat: rework sys_semtimedop emulation
  ARM: oabi-compat: rework fcntl64() emulation
  ARM: uaccess: add __{get,put}_kernel_nofault
  ARM: uaccess: remove set_fs() implementation

 arch/arm/Kconfig                   |   1 -
 arch/arm/include/asm/ptrace.h      |   1 -
 arch/arm/include/asm/syscall.h     |  14 +++
 arch/arm/include/asm/thread_info.h |   4 -
 arch/arm/include/asm/uaccess-asm.h |   6 -
 arch/arm/include/asm/uaccess.h     | 169 ++++++++++++++-------------
 arch/arm/kernel/asm-offsets.c      |   3 +-
 arch/arm/kernel/entry-common.S     |  16 +--
 arch/arm/kernel/process.c          |   7 +-
 arch/arm/kernel/ptrace.c           |   4 +-
 arch/arm/kernel/signal.c           |   8 --
 arch/arm/kernel/sys_oabi-compat.c  | 180 ++++++++++++++++-------------
 arch/arm/kernel/traps.c            |  69 +++++------
 arch/arm/lib/copy_from_user.S      |   3 +-
 arch/arm/lib/copy_to_user.S        |   3 +-
 arch/arm/tools/syscall.tbl         |   2 +-
 fs/eventpoll.c                     |   5 +-
 include/linux/eventpoll.h          |  16 +++
 include/linux/syscalls.h           |   2 +
 ipc/sem.c                          |  84 +++++++++-----
 mm/maccess.c                       |  28 ++++-
 21 files changed, 338 insertions(+), 287 deletions(-)

-- 
2.27.0


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2020-11-06  9:36 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-30 15:45 [PATCH v4 0/9] ARM: remove set_fs callers and implementation Arnd Bergmann
2020-10-30 15:49 ` [PATCH 1/9] mm/maccess: fix unaligned copy_{from,to}_kernel_nofault Arnd Bergmann
2020-10-30 15:49   ` [PATCH 2/9] ARM: traps: use get_kernel_nofault instead of set_fs() Arnd Bergmann
2020-11-06  9:02     ` Linus Walleij
2020-10-30 15:49   ` [PATCH 3/9] ARM: oabi-compat: add epoll_pwait handler Arnd Bergmann
2020-10-30 15:49   ` [PATCH 4/9] ARM: syscall: always store thread_info->syscall Arnd Bergmann
2020-10-30 16:53     ` Russell King - ARM Linux admin
2020-10-30 21:28       ` Arnd Bergmann
2020-10-30 15:49   ` [PATCH 5/9] ARM: oabi-compat: rework epoll_wait/epoll_pwait emulation Arnd Bergmann
2020-10-30 15:49   ` [PATCH 6/9] ARM: oabi-compat: rework sys_semtimedop emulation Arnd Bergmann
2020-10-30 15:49   ` [PATCH 7/9] ARM: oabi-compat: rework fcntl64() emulation Arnd Bergmann
2020-10-30 15:49   ` [PATCH 8/9] ARM: uaccess: add __{get,put}_kernel_nofault Arnd Bergmann
2020-10-30 15:49   ` [PATCH 9/9] ARM: uaccess: remove set_fs() implementation Arnd Bergmann
2020-11-06  8:57   ` [PATCH 1/9] mm/maccess: fix unaligned copy_{from,to}_kernel_nofault Linus Walleij
2020-11-06  9:36 ` [PATCH v4 0/9] ARM: remove set_fs callers and implementation Linus Walleij
  -- strict thread matches above, loose matches on Subject: below --
2020-09-07 15:36 [PATCH " Arnd Bergmann
2020-09-07 15:36 ` [PATCH 1/9] mm/maccess: fix unaligned copy_{from,to}_kernel_nofault Arnd Bergmann
2020-09-08  6:11   ` Christoph Hellwig
2020-09-27  9:25   ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).