linux-user: Fix NR_fadvise64 and NR_fadvise64_64 for 32-bit guests
commitbadd3cd8805de3b5f8c76b6a00612ed62a71eff8
authorPeter Maydell <peter.maydell@linaro.org>
Tue, 31 May 2016 14:45:10 +0000 (31 15:45 +0100)
committerRiku Voipio <riku.voipio@linaro.org>
Wed, 8 Jun 2016 07:13:45 +0000 (8 10:13 +0300)
tree2486de74f2c27bdc99b1a8d555f9aebd99c24141
parente0156a9dc43daea13b06b4c0edb755cc8f92dfdf
linux-user: Fix NR_fadvise64 and NR_fadvise64_64 for 32-bit guests

Fix errors in the implementation of NR_fadvise64 and NR_fadvise64_64
for 32-bit guests, which pass their off_t values in register pairs.
We can't use the 64-bit code path for this, so split out the 32-bit
cases, so that we can correctly handle the "only offset is 64-bit"
and "both offset and length are 64-bit" syscall flavours, and
"uses aligned register pairs" and "does not" flavours of target.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
linux-user/syscall.c