linux-stable/include/asm-arm
Nicolas Pitre 68d9102f76 [ARM] 2865/2: fix fadvise64_64 syscall argument passing
Patch from Nicolas Pitre

The prototype for sys_fadvise64_64() is:
    long sys_fadvise64_64(int fd, loff_t offset, loff_t len, int advice)
The argument list is therefore as follows on legacy ABI:
	fd: type int (r0)
	offset: type long long (r1-r2)
	len: type long long (r3-sp[0])
	advice: type int (sp[4])
With EABI this becomes:
	fd: type int (r0)
	offset: type long long (r2-r3)
	len: type long long (sp[0]-sp[4])
	advice: type int (sp[8])
Not only do we have ABI differences here, but the EABI version requires
one additional word on the syscall stack.
To avoid the ABI mismatch and the extra stack space required with EABI
this syscall is now defined with a different argument ordering
on ARM as follows:
    long sys_arm_fadvise64_64(int fd, int advice, loff_t offset, loff_t len)
This gives us the following ABI independent argument distribution:
	fd: type int (r0)
	advice: type int (r1)
	offset: type long long (r2-r3)
	len: type long long (sp[0]-sp[4])
Now, since the syscall entry code takes care of 5 registers only by
default including the store of r4 to the stack, we need a wrapper to
store r5 to the stack as well.  Because that wrapper was missing and was
always required this means that sys_fadvise64_64 never worked on ARM and
therefore we can safely reuse its syscall number for our new
sys_arm_fadvise64_64 interface.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-01 12:37:13 +01:00
..
arch-aaec2000 [PATCH] ARM: 2686/2: AAEC-2000 Core support 2005-06-20 18:51:05 +01:00
arch-cl7500 [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-clps711x [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-ebsa110 [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-ebsa285 [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-epxa10db [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-h720x [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-imx [PATCH] ARM: 2687/1: i.MX framebuffer: make dmacr register platform configurable 2005-07-17 20:15:36 +01:00
arch-integrator [PATCH] ARM SMP: Add missed files from Integrator/CP platform 2005-06-19 09:52:07 +01:00
arch-iop3xx [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-ixp4xx [ARM] 2869/1: ixp4xx: correct ioread*/iowrite* 2005-08-31 21:45:14 +01:00
arch-ixp2000 [PATCH] ARM: 2793/1: platform serial support for ixp2000 2005-07-10 19:44:53 +01:00
arch-l7200 [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-lh7a40x [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-omap [PATCH] ARM: 2804/1: OMAP update 9/11: Update OMAP arch files 2005-07-10 19:58:18 +01:00
arch-pxa [ARM] 2861/1: PXA: Add some extra pxa27x register definitions 2005-08-29 22:46:33 +01:00
arch-rpc [PATCH] ARM: cleanup vmalloc start/offset macros 2005-05-03 12:20:29 +01:00
arch-s3c2410 [ARM] 2855/1: S3C2410 - add CLKSLOW definitions, and show in init 2005-08-29 22:46:30 +01:00
arch-sa1100 [MFD] Add SA11x0 MCP platform device support 2005-08-18 10:10:46 +01:00
arch-shark [PATCH] ARM: 2815/1: Shark: new defconfig, fixes with __io and serial ports 2005-07-16 17:17:18 +01:00
arch-versatile [PATCH] ARM: 2693/1: Add PCI support for Versatile/PB 2005-06-20 18:51:06 +01:00
hardware [ARM] Add support for ARM GIC 2005-08-18 21:31:00 +01:00
mach [PATCH] ARM: Change 'param_offset' to 'boot_params' 2005-07-04 10:43:36 +01:00
a.out.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
apm.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
assembler.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
atomic.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bitops.h [ARM SMP] Fix another ARMv6 bitop problem 2005-07-28 20:36:26 +01:00
bug.h [PATCH] qualifiers in return types - easy cases 2005-08-23 18:43:45 -07:00
bugs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
byteorder.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cache.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cacheflush.h [PATCH] ARM: Add common CACHE_COLOUR macro 2005-06-20 11:31:09 +01:00
checksum.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpu-multi32.h [PATCH] qualifiers in return types - easy cases 2005-08-23 18:43:45 -07:00
cpu-single.h [PATCH] qualifiers in return types - easy cases 2005-08-23 18:43:45 -07:00
cpu.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cputime.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
current.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
delay.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
div64.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dma-mapping.h [PATCH] arm: add comment about dma_supported() 2005-04-16 15:23:57 -07:00
dma.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
domain.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ecard.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
elf.h [PATCH] ARM: 2696/1: remove ';' in ELF_DATA define in asm-arm{,26}/elf.h 2005-06-03 20:52:26 +01:00
emergency-restart.h [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
errno.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fcntl.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fiq.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
floppy.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fpstate.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
glue.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hardirq.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hardware.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hdreg.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ide.h [PATCH] ARM: 2758/1: Fix comment in file header to read "ARM" instead i386 2005-06-27 15:58:39 +01:00
io.h [PATCH] ARM: Fix speeling eroor in io.h 2005-06-27 14:23:38 +01:00
ioctl.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ioctls.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipcbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irq.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
kmap_types.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
leds.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
limits.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
linkage.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
local.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
locks.h [PATCH] ARM SMP: Add ARMv6 memory barriers 2005-07-26 19:44:26 +01:00
mc146818rtc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
memory.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mman.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmu.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmu_context.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmzone.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
module.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
msgbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mtd-xip.h [MTD] XIP cleanup 2005-07-07 16:50:16 +02:00
namei.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
numnodes.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nwflash.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
page.h [PATCH] ARM: Move copy/clear user_page locking into implementation 2005-05-10 14:23:01 +01:00
param.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
parport.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci.h [PATCH] pci and yenta: pcibios_bus_to_resource 2005-08-04 21:32:46 -07:00
percpu.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pgalloc.h [PATCH] ARM: Factor out common pmd_populate functionality 2005-06-22 20:58:29 +01:00
pgtable.h [ARM] Control v6 'global' bit via Linux PTE entries 2005-08-10 16:18:35 +01:00
poll.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
posix_types.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
proc-fns.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
processor.h [PATCH] ARM: Fix kernel stack offset calculations 2005-05-05 13:11:00 +01:00
procinfo.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ptrace.h [PATCH] ARM: showregs 2005-04-17 15:50:36 +01:00
resource.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rtc.h [PATCH] ARM: RTC: allow driver methods to return error 2005-04-30 12:19:28 +01:00
scatterlist.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sections.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
segment.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
semaphore-helper.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
semaphore.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sembuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
serial.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
shmbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
shmparam.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sigcontext.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
siginfo.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
signal.h [PATCH] ARM: Generic Dynamic Tick Timer support for ARM, take 4 2005-06-25 19:39:45 +01:00
sizes.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
smp.h [PATCH] ARM SMP: Rename cpu_present_mask to cpu_possible_map 2005-07-11 17:38:36 +01:00
socket.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sockios.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
spinlock.h [PATCH] ARM SMP: Add ARMv6 memory barriers 2005-07-26 19:44:26 +01:00
stat.h [PATCH] ARM: Fix new-ABI layout of struct stat64 2005-07-04 13:02:46 +01:00
statfs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
string.h [PATCH] ARM: 2653/1: Fix memset and memzero macro double-reference of parameters 2005-04-25 23:40:05 +01:00
suspend.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
system.h [PATCH] ARM SMP: Add ARMv6 memory barriers 2005-07-26 19:44:26 +01:00
termbits.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
termios.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
therm.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
thread_info.h [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
timex.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tlb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tlbflush.h [PATCH] ARM SMP: TLB implementations only affect local CPU 2005-06-28 13:40:39 +01:00
topology.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
traps.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
types.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
uaccess.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ucontext.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
unaligned.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
unistd.h [ARM] 2865/2: fix fadvise64_64 syscall argument passing 2005-09-01 12:37:13 +01:00
user.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vfp.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vfpmacros.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vga.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xor.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00