All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/24] ptrace cleanups
@ 2010-09-02 15:46 Namhyung Kim
  2010-09-02 15:46 ` [PATCH v2 01/24] ptrace: change signature of sys_ptrace() and friends Namhyung Kim
                   ` (24 more replies)
  0 siblings, 25 replies; 39+ messages in thread
From: Namhyung Kim @ 2010-09-02 15:46 UTC (permalink / raw)
  To: Roland McGrath, Oleg Nesterov; +Cc: Arnd Bergmann, linux-kernel

Hello,

This patchset tries to cleanup architecture independent/dependent part of
ptrace syscall. Specifically it changes prototype of sys_ptrace() to have
its arguments @addr and @data to be unsigned long. Since user space API of
ptrace() declares them as void pointers, and most of archs consider them
unsigned already in their arch_ptrace(), it would be no harmful to change
them from (signed) long into unsigned long, IMHO.

ptrace() code accesses user area using above arguments frequently, changing
them enables to drop unnecessary __force markup when casting them to __user
pointers because sparse allows it only in case of unsigned long. And some
duplicated/misused castings can be grouped into one place in favor of new
variables to cleanup code further. This was suggested by Arnd Bergmann and
comment from Christoph Hellwig was also helpful.

Although I couldn't test all archs, I hope it will not break anything.

Any comments would be appreciated.
Thanks.


* Changes from v1:
  combine all arch signature changes into a single patch
  retain uses of get/put_user()
  rebased on top of 2.6.36-rc3

---
Namhyung Kim (24):
  ptrace: change signature of sys_ptrace() and friends
  ptrace: cleanup ptrace_request()
  ptrace: change signature of arch_ptrace()
  ptrace: cleanup arch_ptrace() on x86
  ptrace: cleanup arch_ptrace() on ARM
  ptrace: cleanup arch_ptrace() on avr32
  ptrace: cleanup arch_ptrace() and friends on Blackfin
  ptrace: cleanup arch_ptrace() on cris
  ptrace: cleanup arch_ptrace() on frv
  ptrace: cleanup arch_ptrace() on h8300
  ptrace: cleanup arch_ptrace() on m32r
  ptrace: cleanup arch_ptrace() on m68k
  ptrace: cleanup arch_ptrace() on m68knommu
  ptrace: cleanup arch_ptrace() on microblaze
  ptrace: cleanup arch_ptrace() on MIPS
  ptrace: cleanup arch_ptrace() on mn10300
  ptrace: cleanup arch_ptrace() on parisc
  ptrace: cleanup arch_ptrace() on powerpc
  ptrace: cleanup arch_ptrace() on score
  ptrace: cleanup arch_ptrace() on sh
  ptrace: cleanup arch_ptrace() on sparc
  ptrace: cleanup arch_ptrace() on tile
  ptrace: cleanup arch_ptrace() on um
  ptrace: cleanup arch_ptrace() on xtensa

 arch/alpha/kernel/ptrace.c         |    7 ++--
 arch/arm/kernel/ptrace.c           |   28 ++++++++-------
 arch/avr32/kernel/ptrace.c         |   11 +++---
 arch/blackfin/kernel/ptrace.c      |   16 +++++----
 arch/cris/arch-v10/kernel/ptrace.c |   20 +++++-----
 arch/cris/arch-v32/kernel/ptrace.c |   16 ++++----
 arch/frv/kernel/ptrace.c           |   32 ++++++++---------
 arch/h8300/kernel/ptrace.c         |   33 +++++++++---------
 arch/ia64/kernel/ptrace.c          |    3 +-
 arch/m32r/kernel/ptrace.c          |   11 +++---
 arch/m68k/kernel/ptrace.c          |   51 ++++++++++++++-------------
 arch/m68knommu/kernel/ptrace.c     |   63 ++++++++++++++++------------------
 arch/microblaze/kernel/ptrace.c    |    5 ++-
 arch/mips/kernel/ptrace.c          |   25 +++++++------
 arch/mn10300/kernel/ptrace.c       |   20 +++++-----
 arch/parisc/kernel/ptrace.c        |   13 ++++---
 arch/powerpc/kernel/ptrace.c       |   66 ++++++++++++++++++-----------------
 arch/s390/kernel/ptrace.c          |    3 +-
 arch/score/kernel/ptrace.c         |    7 ++--
 arch/sh/kernel/ptrace_32.c         |   45 +++++++++++++-----------
 arch/sh/kernel/ptrace_64.c         |   25 +++++++++-----
 arch/sparc/kernel/ptrace_32.c      |   57 ++++++++++++-------------------
 arch/sparc/kernel/ptrace_64.c      |   15 ++++----
 arch/tile/kernel/ptrace.c          |   11 +++---
 arch/um/kernel/ptrace.c            |   23 ++++++------
 arch/um/sys-i386/ptrace.c          |    4 +-
 arch/um/sys-x86_64/ptrace.c        |   11 +++---
 arch/x86/kernel/ptrace.c           |   20 +++++------
 arch/xtensa/kernel/ptrace.c        |   14 ++++---
 include/linux/ptrace.h             |   12 ++++--
 include/linux/syscalls.h           |    3 +-
 kernel/ptrace.c                    |   29 +++++++++------
 32 files changed, 360 insertions(+), 339 deletions(-)

--
1.7.2.2


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

end of thread, other threads:[~2010-09-14  2:58 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-02 15:46 [PATCH v2 00/24] ptrace cleanups Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 01/24] ptrace: change signature of sys_ptrace() and friends Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 02/24] ptrace: cleanup ptrace_request() Namhyung Kim
2010-09-02 18:32   ` Roland McGrath
2010-09-03  3:19     ` Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 03/24] ptrace: change signature of arch_ptrace() Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 04/24] ptrace: cleanup arch_ptrace() on x86 Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 05/24] ptrace: cleanup arch_ptrace() on ARM Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 06/24] ptrace: cleanup arch_ptrace() on avr32 Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 07/24] ptrace: cleanup arch_ptrace() and friends on Blackfin Namhyung Kim
2010-09-02 17:48   ` Mike Frysinger
2010-09-02 15:46 ` [PATCH v2 08/24] ptrace: cleanup arch_ptrace() on cris Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 09/24] ptrace: cleanup arch_ptrace() on frv Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 10/24] ptrace: cleanup arch_ptrace() on h8300 Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 11/24] ptrace: cleanup arch_ptrace() on m32r Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 12/24] ptrace: cleanup arch_ptrace() on m68k Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 13/24] ptrace: cleanup arch_ptrace() on m68knommu Namhyung Kim
2010-09-07  5:54   ` Greg Ungerer
2010-09-02 15:46 ` [PATCH v2 14/24] ptrace: cleanup arch_ptrace() on microblaze Namhyung Kim
     [not found]   ` <4C8DCF72.4050701@monstr.eu>
2010-09-13 10:07     ` Namhyung Kim
2010-09-14  2:15       ` Roland McGrath
2010-09-14  2:27         ` Namhyung Kim
2010-09-14  2:31           ` Roland McGrath
2010-09-14  2:39             ` Namhyung Kim
2010-09-14  2:58               ` Roland McGrath
2010-09-02 15:46 ` [PATCH v2 15/24] ptrace: cleanup arch_ptrace() on MIPS Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 16/24] ptrace: cleanup arch_ptrace() on mn10300 Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 17/24] ptrace: cleanup arch_ptrace() on parisc Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 18/24] ptrace: cleanup arch_ptrace() on powerpc Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 19/24] ptrace: cleanup arch_ptrace() on score Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 20/24] ptrace: cleanup arch_ptrace() on sh Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 21/24] ptrace: cleanup arch_ptrace() on sparc Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 22/24] ptrace: cleanup arch_ptrace() on tile Namhyung Kim
2010-09-02 16:35   ` Chris Metcalf
2010-09-02 16:55     ` Namhyung Kim
2010-09-02 17:13       ` Chris Metcalf
2010-09-02 15:46 ` [PATCH v2 23/24] ptrace: cleanup arch_ptrace() on um Namhyung Kim
2010-09-02 15:46 ` [PATCH v2 24/24] ptrace: cleanup arch_ptrace() on xtensa Namhyung Kim
2010-09-03  7:40 ` [PATCH v2 03/24] ptrace: change signature of arch_ptrace() David Howells

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.