linux-user: added support for preadv() system call.
authorDejan Jovicevic <dejan.jovicevic@rt-rk.com>
Tue, 11 Oct 2016 09:52:46 +0000 (11:52 +0200)
committerRiku Voipio <riku.voipio@linaro.org>
Fri, 21 Oct 2016 12:20:13 +0000 (15:20 +0300)
commit0f26386c27d977d523c1e88410414af7739a1730
treef30e9812f5599a3222e79fb1e75ed468b1d79f67
parent2f2bd444bea156c5ba8dccf3b3b018c770fba03b
linux-user: added support for preadv() system call.

This system call performs the same task as the readv() system call,
with the exception of having the fourth argument, offset, which
specifes the file offset at which the input operation is to be performed.
Because of this, the preadv() implementation is based on the readv()
implementation in linux-user mode.

But, since preadv() is implemented in the kernel as a 5-argument syscall,
5 arguments are needed to be handled as input and passed to the host
syscall.

The pos_l and pos_h argument of the safe_preadv() are of type unsigned
long, which can be of different sizes on different platforms. The input
arguments are converted to the appropriate host size when passed to
safe_preadv().

Signed-off-by: Dejan Jovicevic <dejan.jovicevic@rt-rk.com>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
linux-user/syscall.c