tools/nolibc: unistd.h: apply __sysret() helper
Use __sysret() to shrink the whole _syscall() to oneline code. Reviewed-by: Thomas Weißschuh <linux@weissschuh.net> Signed-off-by: Zhangjin Wu <falcon@tinylab.org> Signed-off-by: Willy Tarreau <w@1wt.eu>
This commit is contained in:
parent
428905da6e
commit
c8d54fa37c
@ -56,16 +56,7 @@ int tcsetpgrp(int fd, pid_t pid)
|
||||
return ioctl(fd, TIOCSPGRP, &pid);
|
||||
}
|
||||
|
||||
#define _syscall(N, ...) \
|
||||
({ \
|
||||
long _ret = my_syscall##N(__VA_ARGS__); \
|
||||
if (_ret < 0) { \
|
||||
SET_ERRNO(-_ret); \
|
||||
_ret = -1; \
|
||||
} \
|
||||
_ret; \
|
||||
})
|
||||
|
||||
#define _syscall(N, ...) __sysret(my_syscall##N(__VA_ARGS__))
|
||||
#define _syscall_narg(...) __syscall_narg(__VA_ARGS__, 6, 5, 4, 3, 2, 1, 0)
|
||||
#define __syscall_narg(_0, _1, _2, _3, _4, _5, _6, N, ...) N
|
||||
#define _syscall_n(N, ...) _syscall(N, __VA_ARGS__)
|
||||
|
Loading…
Reference in New Issue
Block a user