Peter Maydell <peter.mayd...@linaro.org> writes:
> If we fail a semihosting call we should always set the > semihosting errno to something; we were failing to do > this for some of the "check inputs for sanity" cases. > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> Reviewed-by: Alex Bennée <alex.ben...@linaro.org> although: > --- > target/arm/arm-semi.c | 45 ++++++++++++++++++++++++++----------------- > 1 file changed, 27 insertions(+), 18 deletions(-) > > diff --git a/target/arm/arm-semi.c b/target/arm/arm-semi.c > index 03e60105c05..51b55816faf 100644 > --- a/target/arm/arm-semi.c > +++ b/target/arm/arm-semi.c > @@ -232,11 +232,13 @@ static target_ulong arm_gdb_syscall(ARMCPU *cpu, > gdb_syscall_complete_cb cb, > #define GET_ARG(n) do { \ > if (is_a64(env)) { \ > if (get_user_u64(arg ## n, args + (n) * 8)) { \ > - return -1; \ > + errno = EFAULT; \ > + return set_swi_errno(ts, -1); \ This looks a little queasy given ts is NULL for the softmmu version. I wonder (depending on your approach to -smp for 1/13) if we should just pass the ARMCPU down to the helper? -- Alex Bennée