2021-11-15 21:08:52 +08:00
|
|
|
/*
|
|
|
|
* safe-syscall-error.c: errno setting fragment
|
|
|
|
* This is intended to be invoked by safe-syscall.S
|
|
|
|
*
|
|
|
|
* Written by Richard Henderson <rth@twiddle.net>
|
|
|
|
* Copyright (C) 2021 Red Hat, Inc.
|
|
|
|
*
|
|
|
|
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
|
|
|
* See the COPYING file in the top-level directory.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "qemu/osdep.h"
|
2021-11-17 23:14:00 +08:00
|
|
|
#include "user/safe-syscall.h"
|
2021-11-15 21:08:52 +08:00
|
|
|
|
|
|
|
/*
|
|
|
|
* This is intended to be invoked via tail-call on the error path
|
|
|
|
* from the assembly in host/arch/safe-syscall.inc.S. This takes
|
|
|
|
* care of the host specific addressing of errno.
|
|
|
|
* Return -1 to finalize the return value for safe_syscall_base.
|
|
|
|
*/
|
|
|
|
long safe_syscall_set_errno_tail(int value)
|
|
|
|
{
|
|
|
|
errno = value;
|
|
|
|
return -1;
|
|
|
|
}
|