Re: Interface for the new fallocate() system call

From: Heiko Carstens
Date: Fri Mar 30 2007 - 03:19:49 EST


> > Even ARM prefers above kind of layout. For details please see the
> > definition of sys_arm_sync_file_range().
>
> This is a clean-looking option. Can s390 be changed to support seven-arg
> syscalls?
>
> > Option of loff_t => high u32 + low u32
> > --------------------------------------
> > Matthew and Russell have suggested another option of breaking each
> > "loff_t" into two "u32"s. This will result in 6 arguments in total.
> >
> > Following think that this is a good alternative:
> > Matthew Wilcox, Russell King, Heiko Carstens
> >
> > Following do not like this idea:
> > Chris Wedgwood
>
> It's a bit weird-looking, but the six-32-bit-args approach is simple
> enought to understand and implement. Presumably the glibc wrapper
> would hide that detail from everyone.

s390 can be changed to support seven-arg syscalls. But that would require
creating an additional stackframe in *libc to save original register
contents and in addition it would make our syscall hotpath slower.
That is because we have to take care of an additional register that might
contain user space passed contents and needs to be put on the kernel stack.
If possible I'd prefer the six-32-bit-args approach.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/