Re: [PATCH v2] Add preadv and pwritev system calls.

Russell King
2008-12-12T20:13:25Z

On Fri, Dec 12, 2008 at 08:56:00PM +0100, Gerd Hoffmann wrote:
> Russell King wrote:
> >> should be similar to pread/pwrite, e.g:
> >>
> >> int preadv(fd, iovec, iovec_size, offset)
> >
> > Yes, and that's easy for glibc to achieve.
>
> This hints the ABI problem exists at syscall level only. Is that
> correct? So we can have
>
> preadv(fd, vec, vlen, off)
>
> argument ordering at app <-> glibc level and
>
> preadv(fd, vec, off, vlen)
>
> ordering at glibc <-> kernel (aka syscall) level and it works fine for
> ARM + MIPS + PARISC?

Fine for ARM - and yes, the user visible API should be changed from the
BSD standard. I don't think anyone in this thread was suggesting that
the user visible argument ordering should be any different from the
original.

Having it in a different order from *BSD at the libc visible interface
is just crazy from the OS portability point of view.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/