mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
tools/nolibc: move prctl() to sys/prctl.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-3-74f82eea3b59@weissschuh.net
This commit is contained in:
parent
6e7c805a93
commit
3edd5365f9
4 changed files with 38 additions and 21 deletions
|
@ -52,6 +52,7 @@ all_files := \
|
||||||
sys/ioctl.h \
|
sys/ioctl.h \
|
||||||
sys/mman.h \
|
sys/mman.h \
|
||||||
sys/mount.h \
|
sys/mount.h \
|
||||||
|
sys/prctl.h \
|
||||||
sys/random.h \
|
sys/random.h \
|
||||||
sys/stat.h \
|
sys/stat.h \
|
||||||
sys/syscall.h \
|
sys/syscall.h \
|
||||||
|
|
|
@ -100,6 +100,7 @@
|
||||||
#include "sys/ioctl.h"
|
#include "sys/ioctl.h"
|
||||||
#include "sys/mman.h"
|
#include "sys/mman.h"
|
||||||
#include "sys/mount.h"
|
#include "sys/mount.h"
|
||||||
|
#include "sys/prctl.h"
|
||||||
#include "sys/random.h"
|
#include "sys/random.h"
|
||||||
#include "sys/stat.h"
|
#include "sys/stat.h"
|
||||||
#include "sys/syscall.h"
|
#include "sys/syscall.h"
|
||||||
|
|
|
@ -23,7 +23,6 @@
|
||||||
#include <linux/auxvec.h>
|
#include <linux/auxvec.h>
|
||||||
#include <linux/fcntl.h> /* for O_* and AT_* */
|
#include <linux/fcntl.h> /* for O_* and AT_* */
|
||||||
#include <linux/stat.h> /* for statx() */
|
#include <linux/stat.h> /* for statx() */
|
||||||
#include <linux/prctl.h>
|
|
||||||
#include <linux/resource.h>
|
#include <linux/resource.h>
|
||||||
#include <linux/utsname.h>
|
#include <linux/utsname.h>
|
||||||
|
|
||||||
|
@ -697,26 +696,6 @@ int pipe(int pipefd[2])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* int prctl(int option, unsigned long arg2, unsigned long arg3,
|
|
||||||
* unsigned long arg4, unsigned long arg5);
|
|
||||||
*/
|
|
||||||
|
|
||||||
static __attribute__((unused))
|
|
||||||
int sys_prctl(int option, unsigned long arg2, unsigned long arg3,
|
|
||||||
unsigned long arg4, unsigned long arg5)
|
|
||||||
{
|
|
||||||
return my_syscall5(__NR_prctl, option, arg2, arg3, arg4, arg5);
|
|
||||||
}
|
|
||||||
|
|
||||||
static __attribute__((unused))
|
|
||||||
int prctl(int option, unsigned long arg2, unsigned long arg3,
|
|
||||||
unsigned long arg4, unsigned long arg5)
|
|
||||||
{
|
|
||||||
return __sysret(sys_prctl(option, arg2, arg3, arg4, arg5));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* int pivot_root(const char *new, const char *old);
|
* int pivot_root(const char *new, const char *old);
|
||||||
*/
|
*/
|
||||||
|
|
36
tools/include/nolibc/sys/prctl.h
Normal file
36
tools/include/nolibc/sys/prctl.h
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
/* SPDX-License-Identifier: LGPL-2.1 OR MIT */
|
||||||
|
/*
|
||||||
|
* Prctl 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_PRCTL_H
|
||||||
|
#define _NOLIBC_SYS_PRCTL_H
|
||||||
|
|
||||||
|
#include "../sys.h"
|
||||||
|
|
||||||
|
#include <linux/prctl.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* int prctl(int option, unsigned long arg2, unsigned long arg3,
|
||||||
|
* unsigned long arg4, unsigned long arg5);
|
||||||
|
*/
|
||||||
|
|
||||||
|
static __attribute__((unused))
|
||||||
|
int sys_prctl(int option, unsigned long arg2, unsigned long arg3,
|
||||||
|
unsigned long arg4, unsigned long arg5)
|
||||||
|
{
|
||||||
|
return my_syscall5(__NR_prctl, option, arg2, arg3, arg4, arg5);
|
||||||
|
}
|
||||||
|
|
||||||
|
static __attribute__((unused))
|
||||||
|
int prctl(int option, unsigned long arg2, unsigned long arg3,
|
||||||
|
unsigned long arg4, unsigned long arg5)
|
||||||
|
{
|
||||||
|
return __sysret(sys_prctl(option, arg2, arg3, arg4, arg5));
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* _NOLIBC_SYS_PRCTL_H */
|
Loading…
Add table
Reference in a new issue