semihosting: Don't copy buffer after console_write()
The console_write() semihosting function outputs guest data from a buffer; it doesn't update that buffer. It therefore doesn't need to pass a length value to unlock_user(), but can pass 0, meaning "do not copy any data back to the guest memory". Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220719121110.225657-3-peter.maydell@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20220725140520.515340-8-alex.bennee@linaro.org>
This commit is contained in:
parent
aed04e6357
commit
45704e8904
@ -627,7 +627,7 @@ static void console_write(CPUState *cs, gdb_syscall_complete_cb complete,
|
|||||||
}
|
}
|
||||||
ret = qemu_semihosting_console_write(ptr, len);
|
ret = qemu_semihosting_console_write(ptr, len);
|
||||||
complete(cs, ret ? ret : -1, ret ? 0 : EIO);
|
complete(cs, ret ? ret : -1, ret ? 0 : EIO);
|
||||||
unlock_user(ptr, buf, ret);
|
unlock_user(ptr, buf, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void console_fstat(CPUState *cs, gdb_syscall_complete_cb complete,
|
static void console_fstat(CPUState *cs, gdb_syscall_complete_cb complete,
|
||||||
|
Loading…
Reference in New Issue
Block a user