linux/arch/powerpc/include/asm
Christoph Hellwig dacbe41f77 ptrace: move user_enable_single_step & co prototypes to linux/ptrace.h
While in theory user_enable_single_step/user_disable_single_step/
user_enable_blockstep could also be provided as an inline or macro there's
no good reason to do so, and having the prototype in one places keeps code
size and confusion down.

Roland said:

  The original thought there was that user_enable_single_step() et al
  might well be only an instruction or three on a sane machine (as if we
  have any of those!), and since there is only one call site inlining
  would be beneficial.  But I agree that there is no strong reason to care
  about inlining it.

  As to the arch changes, there is only one thought I'd add to the
  record.  It was always my thinking that for an arch where
  PTRACE_SINGLESTEP does text-modifying breakpoint insertion,
  user_enable_single_step() should not be provided.  That is,
  arch_has_single_step()=>true means that there is an arch facility with
  "pure" semantics that does not have any unexpected side effects.
  Inserting a breakpoint might do very unexpected strange things in
  multi-threaded situations.  Aside from that, it is a peculiar side
  effect that user_{enable,disable}_single_step() should cause COW
  de-sharing of text pages and so forth.  For PTRACE_SINGLESTEP, all these
  peculiarities are the status quo ante for that arch, so having
  arch_ptrace() itself do those is one thing.  But for building other
  things in the future, it is nicer to have a uniform "pure" semantics
  that arch-independent code can expect.

  OTOH, all such arch issues are really up to the arch maintainer.  As
  of today, there is nothing but ptrace using user_enable_single_step() et
  al so it's a distinction without a practical difference.  If/when there
  are other facilities that use user_enable_single_step() and might care,
  the affected arch's can revisit the question when someone cares about
  the quality of the arch support for said new facility.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Roland McGrath <roland@redhat.com>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-03-12 15:52:38 -08:00
..
iseries
8xx_immap.h
8253pit.h
abs_addr.h
agp.h
asm-compat.h powerpc: Use lwarx/ldarx hint in bit locks 2010-02-17 14:03:15 +11:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
async_tx.h ppc440spe-adma: adds updated ppc440spe adma driver 2009-12-11 21:24:44 -07:00
atomic.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
auxvec.h
backlight.h
bitops.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
bitsperlong.h
bootx.h
btext.h
bug.h powerpc: Convert BUG() to use unreachable() 2009-12-18 14:54:27 +11:00
bugs.h
byteorder.h
cache.h
cacheflush.h block: add helpers to run flush_dcache_page() against a bio and a request's pages 2009-11-26 09:16:19 +01:00
cell-pmu.h
cell-regs.h
checksum.h
clk_interface.h
code-patching.h
compat.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
cpm.h powerpc/qe&cpm: Implement static inline stubs for non-QE/CPM builds 2009-11-11 21:43:20 -06:00
cpm1.h powerpc/cpm: Remove SPI defines and spi structs 2009-11-11 21:43:17 -06:00
cpm2.h powerpc/cpm: Move CPMFCR_* defines into cpm.h 2009-11-11 21:43:19 -06:00
cputable.h powerpc: Use lwsync for acquire barrier if CPU supports it 2010-02-17 14:03:16 +11:00
cputhreads.h
cputime.h powerpc: Replace per_cpu(, smp_processor_id()) with __get_cpu_var() 2010-02-03 17:39:48 +11:00
current.h
dbdma.h
dbell.h
dcr-generic.h
dcr-mmio.h
dcr-native.h
dcr-regs.h ppc440spe-adma: adds updated ppc440spe adma driver 2009-12-11 21:24:44 -07:00
dcr.h
delay.h
device.h powerpc: Change archdata dma_data to a union 2009-09-24 15:31:43 +10:00
disassemble.h
div64.h
dma-mapping.h dma-mapping: fix off-by-one error in dma_capable() 2009-12-16 07:20:12 -08:00
dma.h
edac.h
eeh.h
eeh_event.h
elf.h powerpc: TIF_ABI_PENDING bit removal 2010-02-01 14:00:30 +11:00
emergency-restart.h
emulated_ops.h powerpc: perf_event: Add alignment-faults and emulation-faults software events 2009-10-28 16:13:03 +11:00
errno.h
exception-64e.h
exception-64s.h Make head_64.S aware of KVM real mode code 2009-11-05 16:49:57 +11:00
fb.h
fcntl.h
feature-fixups.h powerpc: Fix lwsync feature fixup vs. modules on 64-bit 2010-02-26 18:29:17 +11:00
firmware.h powerpc: Fix hypervisor TLB batching 2009-10-14 16:58:37 +11:00
fixmap.h powerpc: reserve fixmap entries for early debug 2009-12-12 22:24:30 -07:00
floppy.h
fs_pd.h
fsl_gtm.h
fsl_lbc.h
fsldma.h
ftrace.h
futex.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
gpio.h powerpc/gpio: support gpio_to_irq() 2009-12-10 20:08:15 -06:00
grackle.h
hardirq.h powerpc: Convert global "BAD" interrupt to per cpu spurious 2010-02-17 14:02:49 +11:00
heathrow.h
highmem.h
hugetlb.h powerpc/mm: Bring hugepage PTE accessor functions back into sync with normal accessors 2009-10-30 17:21:23 +11:00
hvcall.h Merge commit 'origin/master' into next 2009-12-09 17:14:38 +11:00
hvconsole.h
hvcserver.h
hw_irq.h powerpc: Fix potential compile error irqs_disabled_flags 2009-10-30 17:21:27 +11:00
hydra.h
i8259.h
ibmebus.h
ide.h
immap_86xx.h
immap_cpm2.h powerpc/qe&cpm2: Avoid redefinitions in CPM2 and QE headers 2009-11-11 21:43:18 -06:00
immap_qe.h powerpc/qe&cpm2: Avoid redefinitions in CPM2 and QE headers 2009-11-11 21:43:18 -06:00
io-defs.h
io.h
ioctl.h
ioctls.h
iommu.h powerpc: Change archdata dma_data to a union 2009-09-24 15:31:43 +10:00
ipcbuf.h
ipic.h
irq.h powerpc: Make "intspec" pointers in irq_host->xlate() const 2009-12-09 17:10:37 +11:00
irq_regs.h
irqflags.h
Kbuild
kdebug.h
kdump.h
kexec.h
keylargo.h
kgdb.h
kmap_types.h powerpc: Fix DEBUG_HIGHMEM build break from d451564669 2009-12-01 09:33:45 +11:00
kprobes.h
kvm.h powerpc/kvm: Sync guest visible MMU state 2009-12-08 16:02:50 +11:00
kvm_44x.h
kvm_asm.h KVM: PPC: Implement 'skip instruction' mode 2010-03-01 12:35:48 -03:00
kvm_book3s.h KVM: PPC: Fix initial GPR settings 2010-03-01 12:35:55 -03:00
kvm_book3s_64_asm.h KVM: PPC: Call SLB patching code in interrupt safe manner 2010-03-01 12:35:49 -03:00
kvm_e500.h KVM: PPC E500: fix tlbcfg emulation 2010-03-01 12:36:06 -03:00
kvm_host.h KVM: ppc/booke: Set ESR and DEAR when inject interrupt to guest 2010-03-01 12:36:10 -03:00
kvm_para.h
kvm_ppc.h KVM: PPC: Fix initial GPR settings 2010-03-01 12:35:55 -03:00
libata-portmap.h
linkage.h
lmb.h
local.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2010-03-03 07:34:18 -08:00
lppaca.h powerpc/pseries: Add extended_cede_processor() helper function. 2009-11-24 14:33:03 +11:00
lv1call.h
machdep.h sysfs/cpu: Add probe/release files 2009-12-09 17:09:33 +11:00
macio.h powerpc/macio: Rework hotplug media bay support 2009-12-09 17:09:14 +11:00
mc146818rtc.h
mediabay.h powerpc/macio: Rework hotplug media bay support 2009-12-09 17:09:14 +11:00
mman.h mm: add MAP_HUGETLB for mmaping pseudo-anonymous huge page regions 2009-09-22 07:17:41 -07:00
mmu-8xx.h
mmu-40x.h
mmu-44x.h
mmu-book3e.h
mmu-hash32.h
mmu-hash64.h powerpc/mm: Fix pgtable cache cleanup with CONFIG_PPC_SUBPAGE_PROT 2009-12-08 15:59:33 +11:00
mmu.h
mmu_context.h Split init_new_context and destroy_context 2009-11-05 16:50:25 +11:00
mmzone.h
module.h module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y 2009-12-15 16:28:34 +10:30
mpc5xxx.h
mpc6xx.h
mpc8xx.h
mpc52xx.h mpc52xx/wdt: merge WDT code into the GPT driver 2009-11-13 11:09:31 -07:00
mpc52xx_psc.h powerpc/mpc5121: enable support for more PSC UARTs 2010-02-16 22:30:04 -07:00
mpc5121.h powerpc/mpc5121: Add machine restart support 2010-02-16 10:36:26 -07:00
mpc8260.h
mpic.h powerpc: Convert mpic locks to raw_spinlock 2010-02-19 14:52:32 +11:00
msgbuf.h
msi_bitmap.h
mutex.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
nvram.h powerpc/nvram_64: Remove unused code 2009-10-30 17:21:28 +11:00
of_device.h
of_platform.h
ohare.h
oprofile_impl.h
paca.h KVM: PPC: Use PACA backed shadow vcpu 2010-03-01 12:35:48 -03:00
page.h powerpc/mm: Allow more flexible layouts for hugepage pagetables 2009-10-30 17:20:58 +11:00
page_32.h
page_64.h powerpc/mm: Cleanup initialization of hugepages on powerpc 2009-10-30 17:20:58 +11:00
param.h powerpc: Simplify param.h by including <asm-generic/param.h> 2010-02-03 17:39:48 +11:00
parport.h
pasemi_dma.h
pci-bridge.h
pci.h Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-09-16 07:49:54 -07:00
percpu.h
perf_event.h perf_event, powerpc: Fix compilation after big perf_counter rename 2009-09-22 09:30:40 +02:00
pgalloc-32.h powerpc/mm: Cleanup management of kmem_caches for pagetables 2009-10-30 17:20:57 +11:00
pgalloc-64.h powerpc/mm: Fix pgtable cache cleanup with CONFIG_PPC_SUBPAGE_PROT 2009-12-08 15:59:33 +11:00
pgalloc.h powerpc/mm: Cleanup management of kmem_caches for pagetables 2009-10-30 17:20:57 +11:00
pgtable-ppc32.h
pgtable-ppc64-4k.h
pgtable-ppc64-64k.h
pgtable-ppc64.h powerpc/mm: Allow more flexible layouts for hugepage pagetables 2009-10-30 17:20:58 +11:00
pgtable.h MM: Pass a PTE pointer to update_mmu_cache() rather than the PTE itself 2010-02-20 16:41:46 +00:00
phyp_dump.h
pmac_feature.h powerpc: Convert feature_lock to raw_spinlock 2010-02-19 14:52:32 +11:00
pmac_low_i2c.h i2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus 2009-12-06 17:06:19 +01:00
pmac_pfunc.h
pmc.h powerpc/pmc: Don't access lppaca on Book3E 2009-09-24 15:31:39 +10:00
pmi.h
poll.h
posix_types.h
ppc-opcode.h powerpc: Use lwarx/ldarx hint in bit locks 2010-02-17 14:03:15 +11:00
ppc-pci.h powerpc/eeh: Fix a bug when pci structure is null 2010-02-17 14:02:47 +11:00
ppc4xx.h
ppc_asm.h
processor.h powerpc/booke: Add definitions for advanced debug registers 2010-02-17 14:03:17 +11:00
prom.h of: remove undefined request_OF_resource & release_OF_resource 2010-02-14 13:02:45 -07:00
ps3.h
ps3av.h
ps3fb.h
ps3gpu.h
ps3stor.h
pSeries_reconfig.h powerpc/pseries: Kernel DLPAR Infrastructure 2009-12-09 17:09:32 +11:00
pte-8xx.h powerpc/8xx: Restore _PAGE_WRITETHRU 2009-12-09 17:10:37 +11:00
pte-40x.h powerpc/mm: Fix 40x and 8xx vs. _PAGE_SPECIAL 2009-09-24 15:31:49 +10:00
pte-44x.h
pte-book3e.h
pte-common.h powerpc/mm: Fix 40x and 8xx vs. _PAGE_SPECIAL 2009-09-24 15:31:49 +10:00
pte-fsl-booke.h
pte-hash32.h
pte-hash64-4k.h
pte-hash64-64k.h powerpc/mm: Fix pgtable cache cleanup with CONFIG_PPC_SUBPAGE_PROT 2009-12-08 15:59:33 +11:00
pte-hash64.h
ptrace.h ptrace: move user_enable_single_step & co prototypes to linux/ptrace.h 2010-03-12 15:52:38 -08:00
qe.h powerpc/qe&cpm: Implement static inline stubs for non-QE/CPM builds 2009-11-11 21:43:20 -06:00
qe_ic.h
reg.h KVM: PPC: Emulate trap SRR1 flags properly 2010-03-01 12:35:49 -03:00
reg_8xx.h
reg_booke.h powerpc/booke: Add definitions for advanced debug registers 2010-02-17 14:03:17 +11:00
reg_fsl_emb.h tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
resource.h
rheap.h
rio.h
rtas.h locking: Convert raw_spinlock to arch_spinlock 2009-12-14 23:55:32 +01:00
rtc.h
rwsem.h
scatterlist.h
seccomp.h
sections.h
sembuf.h
serial.h
setjmp.h
setup.h
sfp-machine.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
smp.h percpu: make percpu symbols in powerpc unique 2009-10-29 22:34:14 +09:00
smu.h
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h
sparsemem.h
spinlock.h powerpc: Rename LWSYNC_ON_SMP to PPC_RELEASE_BARRIER, ISYNC_ON_SMP to PPC_ACQUIRE_BARRIER 2010-02-17 14:03:15 +11:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spu.h
spu_csa.h
spu_info.h
spu_priv1.h
sstep.h
stat.h
statfs.h
string.h
suspend.h
swab.h
swiotlb.h
synch.h powerpc: Use lwsync for acquire barrier if CPU supports it 2010-02-17 14:03:16 +11:00
syscall.h
syscalls.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
systbl.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
system.h powerpc/booke: Add support for advanced debug registers 2010-02-17 14:03:17 +11:00
tce.h
termbits.h
termios.h
thread_info.h powerpc: TIF_ABI_PENDING bit removal 2010-02-01 14:00:30 +11:00
time.h
timex.h
tlb.h
tlbflush.h
topology.h powerpc: Reformat SD_NODE_INIT to match x86 2010-02-09 13:56:07 +11:00
trace.h powerpc: tracing: Give hypervisor call tracepoints access to arguments 2009-10-28 16:13:04 +11:00
tsi108.h
tsi108_irq.h
tsi108_pci.h
types.h
uaccess.h
ucc.h
ucc_fast.h
ucc_slow.h
ucontext.h
udbg.h powerpc: gamecube/wii: early debugging using usbgecko 2009-12-12 22:24:31 -07:00
uic.h
unaligned.h
uninorth.h
unistd.h Add generic sys_olduname() 2010-03-12 15:52:32 -08:00
user.h
vdso.h
vdso_datapage.h
vga.h
vio.h
xilinx_intc.h
xilinx_pci.h
xmon.h
xor.h