mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 08:03:01 +09:00
Merge tag 'v5.11' into merge-5.15
Linux 5.11
This commit is contained in:
@@ -257,6 +257,30 @@ static inline int is_syscall_trace_event(struct trace_event_call *tp_event)
|
||||
static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
|
||||
#endif /* __SYSCALL_DEFINEx */
|
||||
|
||||
/* For split 64-bit arguments on 32-bit architectures */
|
||||
#ifdef __LITTLE_ENDIAN
|
||||
#define SC_ARG64(name) u32, name##_lo, u32, name##_hi
|
||||
#else
|
||||
#define SC_ARG64(name) u32, name##_hi, u32, name##_lo
|
||||
#endif
|
||||
#define SC_VAL64(type, name) ((type) name##_hi << 32 | name##_lo)
|
||||
|
||||
#ifdef CONFIG_COMPAT
|
||||
#define SYSCALL32_DEFINE1 COMPAT_SYSCALL_DEFINE1
|
||||
#define SYSCALL32_DEFINE2 COMPAT_SYSCALL_DEFINE2
|
||||
#define SYSCALL32_DEFINE3 COMPAT_SYSCALL_DEFINE3
|
||||
#define SYSCALL32_DEFINE4 COMPAT_SYSCALL_DEFINE4
|
||||
#define SYSCALL32_DEFINE5 COMPAT_SYSCALL_DEFINE5
|
||||
#define SYSCALL32_DEFINE6 COMPAT_SYSCALL_DEFINE6
|
||||
#else
|
||||
#define SYSCALL32_DEFINE1 SYSCALL_DEFINE1
|
||||
#define SYSCALL32_DEFINE2 SYSCALL_DEFINE2
|
||||
#define SYSCALL32_DEFINE3 SYSCALL_DEFINE3
|
||||
#define SYSCALL32_DEFINE4 SYSCALL_DEFINE4
|
||||
#define SYSCALL32_DEFINE5 SYSCALL_DEFINE5
|
||||
#define SYSCALL32_DEFINE6 SYSCALL_DEFINE6
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Called before coming back to user-mode. Returning to user-mode with an
|
||||
* address limit different than USER_DS can allow to overwrite kernel memory.
|
||||
@@ -323,7 +347,7 @@ asmlinkage long sys_io_uring_setup(u32 entries,
|
||||
struct io_uring_params __user *p);
|
||||
asmlinkage long sys_io_uring_enter(unsigned int fd, u32 to_submit,
|
||||
u32 min_complete, u32 flags,
|
||||
const sigset_t __user *sig, size_t sigsz);
|
||||
const void __user *argp, size_t argsz);
|
||||
asmlinkage long sys_io_uring_register(unsigned int fd, unsigned int op,
|
||||
void __user *arg, unsigned int nr_args);
|
||||
|
||||
@@ -368,6 +392,11 @@ asmlinkage long sys_epoll_pwait(int epfd, struct epoll_event __user *events,
|
||||
int maxevents, int timeout,
|
||||
const sigset_t __user *sigmask,
|
||||
size_t sigsetsize);
|
||||
asmlinkage long sys_epoll_pwait2(int epfd, struct epoll_event __user *events,
|
||||
int maxevents,
|
||||
const struct __kernel_timespec __user *timeout,
|
||||
const sigset_t __user *sigmask,
|
||||
size_t sigsetsize);
|
||||
|
||||
/* fs/fcntl.c */
|
||||
asmlinkage long sys_dup(unsigned int fildes);
|
||||
@@ -750,7 +779,7 @@ asmlinkage long sys_settimeofday(struct __kernel_old_timeval __user *tv,
|
||||
asmlinkage long sys_adjtimex(struct __kernel_timex __user *txc_p);
|
||||
asmlinkage long sys_adjtimex_time32(struct old_timex32 __user *txc_p);
|
||||
|
||||
/* kernel/timer.c */
|
||||
/* kernel/sys.c */
|
||||
asmlinkage long sys_getpid(void);
|
||||
asmlinkage long sys_getppid(void);
|
||||
asmlinkage long sys_getuid(void);
|
||||
@@ -1301,18 +1330,6 @@ static inline long ksys_ftruncate(unsigned int fd, loff_t length)
|
||||
return do_sys_ftruncate(fd, length, 1);
|
||||
}
|
||||
|
||||
extern int __close_fd(struct files_struct *files, unsigned int fd);
|
||||
|
||||
/*
|
||||
* In contrast to sys_close(), this stub does not check whether the syscall
|
||||
* should or should not be restarted, but returns the raw error codes from
|
||||
* __close_fd().
|
||||
*/
|
||||
static inline int ksys_close(unsigned int fd)
|
||||
{
|
||||
return __close_fd(current->files, fd);
|
||||
}
|
||||
|
||||
extern long do_sys_truncate(const char __user *pathname, loff_t length);
|
||||
|
||||
static inline long ksys_truncate(const char __user *pathname, loff_t length)
|
||||
|
||||
Reference in New Issue
Block a user