tools/nolibc: move reboot() to sys/reboot.h

This is the location regular userspace expects this definition.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Acked-by: Willy Tarreau <w@1wt.eu>
Link: https://lore.kernel.org/r/20250515-nolibc-sys-v1-4-74f82eea3b59@weissschuh.net
This commit is contained in:
Thomas Weißschuh 2025-05-15 21:57:50 +02:00
parent 3edd5365f9
commit 2efb905090
5 changed files with 36 additions and 19 deletions

View File

@ -54,6 +54,7 @@ all_files := \
sys/mount.h \
sys/prctl.h \
sys/random.h \
sys/reboot.h \
sys/stat.h \
sys/syscall.h \
sys/time.h \

View File

@ -102,6 +102,7 @@
#include "sys/mount.h"
#include "sys/prctl.h"
#include "sys/random.h"
#include "sys/reboot.h"
#include "sys/stat.h"
#include "sys/syscall.h"
#include "sys/time.h"

View File

@ -730,24 +730,6 @@ ssize_t read(int fd, void *buf, size_t count)
}
/*
* int reboot(int cmd);
* <cmd> is among LINUX_REBOOT_CMD_*
*/
static __attribute__((unused))
ssize_t sys_reboot(int magic1, int magic2, int cmd, void *arg)
{
return my_syscall4(__NR_reboot, magic1, magic2, cmd, arg);
}
static __attribute__((unused))
int reboot(int cmd)
{
return __sysret(sys_reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, 0));
}
/*
* int getrlimit(int resource, struct rlimit *rlim);
* int setrlimit(int resource, const struct rlimit *rlim);

View File

@ -0,0 +1,34 @@
/* SPDX-License-Identifier: LGPL-2.1 OR MIT */
/*
* Reboot definitions for NOLIBC
* Copyright (C) 2017-2021 Willy Tarreau <w@1wt.eu>
*/
/* make sure to include all global symbols */
#include "../nolibc.h"
#ifndef _NOLIBC_SYS_REBOOT_H
#define _NOLIBC_SYS_REBOOT_H
#include "../sys.h"
#include <linux/reboot.h>
/*
* int reboot(int cmd);
* <cmd> is among LINUX_REBOOT_CMD_*
*/
static __attribute__((unused))
ssize_t sys_reboot(int magic1, int magic2, int cmd, void *arg)
{
return my_syscall4(__NR_reboot, magic1, magic2, cmd, arg);
}
static __attribute__((unused))
int reboot(int cmd)
{
return __sysret(sys_reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, 0));
}
#endif /* _NOLIBC_SYS_REBOOT_H */

View File

@ -12,7 +12,6 @@
#include "std.h"
#include <linux/mman.h>
#include <linux/reboot.h> /* for LINUX_REBOOT_* */
#include <linux/stat.h>
#include <linux/time.h>
#include <linux/wait.h>