[PATCH] Wire up sys_sync_file_range() on powerpc
David Woodhouse
dwmw2 at infradead.org
Sun Jun 17 04:20:44 EST 2007
On Sat, 2007-06-16 at 12:18 +0100, David Woodhouse wrote:
> Every time I build a ppc kernel it bitches at me that
> sys_sync_file_range is unimplemented. Shut it up...
>
> Signed-off-by: David Woodhouse <dwmw2 at infradead.org>
>
> ---
> The compat bit is untested although the assembly looks right, when
> compared with 32-bit calls to sys_sync_file_range(). Test kernel
> building now, although I leave for the airport within 24 hours and may
> not get round to actually testing it.
+asmlinkage long compat_sys_sync_file_range(int fd, int dummy,
+ unsigned offset_hi, unsigned offset_lo,
+ unsigned nbytes_hi, unsigned nbytes_lo,
+ int flags)
Pants. It doesn't work because the 'flags' argument ends up in r9, and
we can only use r3-r8 for syscall arguments. We'll need to do it the
same way as ARM does, with the flags as the second argument.
I _wish_ people would remember that not all the world's an i386 when
they add new syscalls.
And I wish Linus would refuse to merge anything which just says "I wired
it up on i386" without even thinking about 32-on-64 compatibility.
Once we've merged it, it's too late to change the ABI to be sane.
Or is it? Can we ditch sys_sync_file_range now and implement a new
sys_sync_file_range2 with the two 32-bit arguments first?
--
dwmw2
More information about the Linuxppc-dev
mailing list