linux/arch/mips/include/asm
Christoph Hellwig baed7fc9b5 Add generic sys_ipc wrapper
Add a generic implementation of the ipc demultiplexer syscall.  Except for
s390 and sparc64 all implementations of the sys_ipc are nearly identical.

There are slight differences in the types of the parameters, where mips
and powerpc as the only 64-bit architectures with sys_ipc use unsigned
long for the "third" argument as it gets casted to a pointer later, while
it traditionally is an "int" like most other paramters.  frv goes even
further and uses unsigned long for all parameters execept for "ptr" which
is a pointer type everywhere.  The change from int to unsigned long for
"third" and back to "int" for the others on frv should be fine due to the
in-register calling conventions for syscalls (we already had a similar
issue with the generic sys_ptrace), but I'd prefer to have the arch
maintainers looks over this in details.

Except for that h8300, m68k and m68knommu lack an impplementation of the
semtimedop sub call which this patch adds, and various architectures have
gets used - at least on i386 it seems superflous as the compat code on
x86-64 and ia64 doesn't even bother to implement it.

[akpm@linux-foundation.org: add sys_ipc to sys_ni.c]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Hirokazu Takata <takata@linux-m32r.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Reviewed-by: H. Peter Anvin <hpa@zytor.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: James Morris <jmorris@namei.org>
Cc: Andreas Schwab <schwab@linux-m68k.org>
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: David Howells <dhowells@redhat.com>
Acked-by: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-03-12 15:52:32 -08:00
..
dec MIPS: Make various locks static. 2010-02-27 12:53:30 +01:00
emma
fw
ip32
lasat
mach-ar7 MIPS: AR7: Implement clock API 2010-02-27 12:53:16 +01:00
mach-au1x00 MIPS: Alchemy: use 36bit addresses for PCMCIA resources. 2010-02-27 12:53:43 +01:00
mach-bcm47xx
mach-bcm63xx MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
mach-cavium-octeon MIPS: Enable Read Inhibit/eXecute Inhibit for Octeon+ CPUs 2010-02-27 12:53:26 +01:00
mach-cobalt
mach-db1x00 MIPS: Alchemy: Extended DB1200 board support. 2010-02-27 12:53:00 +01:00
mach-dec
mach-emma2rh
mach-generic
mach-ip22
mach-ip27 MIPS: cpumask_of_node() should handle -1 as a node 2010-01-12 18:19:37 +01:00
mach-ip28
mach-ip32
mach-jazz
mach-lasat
mach-loongson MIPS: Loongson: Change the Email address of Wu Zhangjin 2010-02-27 12:53:12 +01:00
mach-malta
mach-mipssim
mach-pb1x00 MIPS: Alchemy: devboards: wire up new PCMCIA driver. 2010-02-27 12:52:51 +01:00
mach-pnx833x MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
mach-pnx8550
mach-powertv MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
mach-rc32434
mach-rm
mach-sibyte
mach-tx39xx
mach-tx49xx
mach-vr41xx
mach-wrppmc
mach-yosemite
mips-boards MIPS: Bonito64: Make Loongson independent from Bonito64 code. 2009-12-17 01:57:06 +00:00
octeon MIPS: Cleanup switches with cases that can be merged 2010-02-27 12:53:14 +01:00
pci
pmc-sierra/msp71xx MIPS: msp71xx: remove unused prom_getcmdline() 2010-02-27 12:53:15 +01:00
sgi tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
sibyte MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
sn MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
txx9 MIPS: TXx9: Remove forced serial console setting 2010-02-27 12:53:22 +01:00
vr41xx
xtalk
abi.h
addrspace.h
amon.h
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
asm.h
asmmacro-32.h
asmmacro-64.h
asmmacro.h
atomic.h MIPS: New macro smp_mb__before_llsc. 2010-02-27 12:53:06 +01:00
auxvec.h
barrier.h MIPS: Optimize spinlocks. 2010-02-27 12:53:42 +01:00
bcache.h
bitops.h MIPS: New macro smp_mb__before_llsc. 2010-02-27 12:53:06 +01:00
bitsperlong.h
bootinfo.h MIPS: Lemote 2F: Add Lynloong support 2009-12-17 01:57:18 +00:00
branch.h
break.h
bug.h MIPS: Convert BUG() to use unreachable() 2009-12-05 09:10:12 -08:00
bugs.h
byteorder.h
cache.h
cachectl.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
cacheops.h
cevt-r4k.h
checksum.h
clock.h MIPS: Loongson 2F: Add CPU frequency scaling support 2009-12-17 01:57:20 +00:00
cmp.h
cmpxchg.h MIPS: New macro smp_mb__before_llsc. 2010-02-27 12:53:06 +01:00
compat-signal.h
compat.h
compiler.h
cop2.h MIPS: Modularize COP2 handling 2009-12-17 01:57:30 +00:00
cpu-features.h MIPS: Implement Read Inhibit/eXecute Inhibit 2010-02-27 12:53:26 +01:00
cpu-info.h MIPS: 64-bit: Detect virtual memory size 2010-02-02 19:56:23 +01:00
cpu.h MIPS: Give Octeon+ CPUs their own cputype. 2010-02-27 12:53:26 +01:00
cputime.h
current.h MIPS: Use generic current.h 2010-02-27 12:53:27 +01:00
debug.h
delay.h
device.h MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
div64.h
dma-mapping.h MIPS: Add DMA declare coherent memory support 2009-11-13 18:10:37 +01:00
dma.h
ds1287.h
dsp.h
edac.h
elf.h MIPS: Allow the auxv's elf_platform entry to be set. 2010-02-27 12:53:20 +01:00
emergency-restart.h
errno.h
fb.h
fcntl.h fix up O_SYNC comments 2009-12-17 11:03:24 -05:00
fixmap.h MIPS: Fix machine check exception in kmap_coherent() 2009-11-02 12:00:04 +01:00
floppy.h
fpregdef.h
fpu_emulator.h MIPS: Collect FPU emulator statistics per-CPU. 2009-12-17 01:57:08 +00:00
fpu.h MIPS: Cleanup signal code initialization 2009-12-17 01:57:32 +00:00
ftrace.h MIPS: Loongson: Change the Email address of Wu Zhangjin 2010-02-27 12:53:12 +01:00
futex.h
gcmpregs.h MIPS: GIC: Random fixes and enhancements. 2009-11-02 12:00:06 +01:00
gic.h MIPS: GIC: Random fixes and enhancements. 2009-11-02 12:00:06 +01:00
gpio.h
gt64120.h
hardirq.h
hazards.h
highmem.h
hugetlb.h
hw_irq.h
i8253.h
i8259.h MIPS: i8259: Convert IRQ controller lock to raw spinlock. 2010-02-27 12:53:38 +01:00
ide.h
inst.h
io.h MIPS: add readl/write_be accessors 2010-02-27 12:53:12 +01:00
ioctl.h
ioctls.h
ipcbuf.h
irq_cpu.h
irq_gt641xx.h
irq_regs.h
irq.h MIPS: PowerTV: Fix support for timer interrupts with > 64 external IRQs 2010-01-28 00:03:31 +01:00
irqflags.h
isadep.h
jazz.h
jazzdma.h
Kbuild
kdebug.h
kexec.h
kgdb.h
kmap_types.h
kspd.h
linkage.h
local.h local_t: Remove cpu_local_xx macros 2010-01-05 15:34:49 +09:00
m48t37.h
mc146818-time.h
mc146818rtc.h
mips_mt.h
mipsmtregs.h
mipsprom.h
mipsregs.h MIPS: Add accessor functions and bit definitions for c0_PageGrain 2010-02-27 12:53:25 +01:00
mman.h MIPS: Add missing definition for MADV_HWPOISON. 2009-12-01 16:21:25 +00:00
mmu_context.h MIPS: Put PGD in C0_CONTEXT for 64-bit R2 processors. 2009-12-17 01:57:01 +00:00
mmu.h
mmzone.h
module.h
msc01_ic.h MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
msgbuf.h
mutex.h
nile4.h MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
paccess.h
page.h MIPS: Two-level pagetables for 64-bit kernels with 64KB pages. 2010-02-27 12:53:03 +01:00
param.h MIPS: Simplify param.h by using <asm-generic/param.h> 2010-02-27 12:53:04 +01:00
parport.h MIPS: Use generic parport.h 2010-02-27 12:53:27 +01:00
pci.h
percpu.h
pgalloc.h MIPS: Two-level pagetables for 64-bit kernels with 64KB pages. 2010-02-27 12:53:03 +01:00
pgtable-32.h MIPS: Implement Read Inhibit/eXecute Inhibit 2010-02-27 12:53:26 +01:00
pgtable-64.h MIPS: Implement Read Inhibit/eXecute Inhibit 2010-02-27 12:53:26 +01:00
pgtable-bits.h MIPS: Implement Read Inhibit/eXecute Inhibit 2010-02-27 12:53:26 +01:00
pgtable.h Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-01 09:15:15 -08:00
pmon.h
poll.h
posix_types.h
prefetch.h
processor.h
ptrace.h
r4k-timer.h
r4kcache.h
reboot.h
reg.h
regdef.h
resource.h
rm9k-ocd.h
rtlx.h
scatterlist.h
seccomp.h
sections.h
segment.h
sembuf.h
serial.h MIPS: Use generic serial.h 2010-02-27 12:53:27 +01:00
setup.h MIPS: Extend COMMAND_LINE_SIZE 2009-11-02 12:00:01 +01:00
sgialib.h MIPS: ARC: Cleanup unused definitions from sgialib.h 2010-02-27 12:53:45 +01:00
sgiarcs.h
sgidefs.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
sim.h
smp-ops.h cpumask: arch_send_call_function_ipi_mask: mips 2009-09-24 09:34:45 +09:30
smp.h MIPS: SMP: Inline arch_send_call_function_{single_ipi,ipi_mask} 2009-09-30 21:47:00 +02:00
smtc_ipi.h MIPS: SMTC: Avoid queing multiple reschedule IPIs 2009-11-02 12:00:06 +01:00
smtc_proc.h
smtc.h
smvp.h
sni.h
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h
sparsemem.h MIPS: Nuke trailing blank lines 2010-02-27 12:53:14 +01:00
spinlock_types.h MIPS: Optimize spinlocks. 2010-02-27 12:53:42 +01:00
spinlock.h MIPS: Optimize spinlocks. 2010-02-27 12:53:42 +01:00
spram.h MIPS: SPRAM: Clean up support code a little 2009-11-02 12:00:05 +01:00
stackframe.h MIPS: Put PGD in C0_CONTEXT for 64-bit R2 processors. 2009-12-17 01:57:01 +00:00
stacktrace.h
stat.h
statfs.h
string.h
suspend.h
swab.h
sysmips.h
system.h MIPS: New macro smp_mb__before_llsc. 2010-02-27 12:53:06 +01:00
termbits.h
termios.h
thread_info.h MIPS: Cleanup CONFIG_DEBUG_STACK_USAGE version of alloc_thread_info. 2009-11-02 12:00:01 +01:00
time.h mips: Use generic mult/shift factor calculation for clocks 2009-11-13 20:46:24 +01:00
timex.h
titan_dep.h
tlb.h
tlbdebug.h
tlbflush.h
topology.h
traps.h
txx9irq.h
txx9pio.h
txx9tmr.h
types.h
uaccess.h
uasm.h MIPS: Add TLBR and ROTR to uasm. 2010-02-27 12:53:25 +01:00
ucontext.h MIPS: Use generic ucontext.h 2010-02-27 12:53:27 +01:00
unaligned.h MIPS: Avoid spurious make includecheck message 2009-09-30 21:47:02 +02:00
unistd.h Add generic sys_ipc wrapper 2010-03-12 15:52:32 -08:00
user.h
vga.h
vpe.h
war.h
watch.h
wbflush.h
xor.h