提交 bbaa4168 编写于 作者: E Eric Paris

fanotify: sys_fanotify_mark declartion

This patch simply declares the new sys_fanotify_mark syscall

int fanotify_mark(int fanotify_fd, unsigned int flags, u64_mask,
		  int dfd const char *pathname)
Signed-off-by: NEric Paris <eparis@redhat.com>
上级 52c923dd
...@@ -843,4 +843,5 @@ ia32_sys_call_table: ...@@ -843,4 +843,5 @@ ia32_sys_call_table:
.quad sys_perf_event_open .quad sys_perf_event_open
.quad compat_sys_recvmmsg .quad compat_sys_recvmmsg
.quad sys_fanotify_init .quad sys_fanotify_init
.quad sys32_fanotify_mark
ia32_syscall_end: ia32_syscall_end:
...@@ -546,3 +546,12 @@ asmlinkage long sys32_fallocate(int fd, int mode, unsigned offset_lo, ...@@ -546,3 +546,12 @@ asmlinkage long sys32_fallocate(int fd, int mode, unsigned offset_lo,
return sys_fallocate(fd, mode, ((u64)offset_hi << 32) | offset_lo, return sys_fallocate(fd, mode, ((u64)offset_hi << 32) | offset_lo,
((u64)len_hi << 32) | len_lo); ((u64)len_hi << 32) | len_lo);
} }
asmlinkage long sys32_fanotify_mark(int fanotify_fd, unsigned int flags,
u32 mask_lo, u32 mask_hi,
int fd, const char __user *pathname)
{
return sys_fanotify_mark(fanotify_fd, flags,
((u64)mask_hi << 32) | mask_lo,
fd, pathname);
}
...@@ -80,4 +80,7 @@ asmlinkage long sys32_rt_sigreturn(struct pt_regs *); ...@@ -80,4 +80,7 @@ asmlinkage long sys32_rt_sigreturn(struct pt_regs *);
/* ia32/ipc32.c */ /* ia32/ipc32.c */
asmlinkage long sys32_ipc(u32, int, int, int, compat_uptr_t, u32); asmlinkage long sys32_ipc(u32, int, int, int, compat_uptr_t, u32);
asmlinkage long sys32_fanotify_mark(int, unsigned int, u32, u32, int,
const char __user *);
#endif /* _ASM_X86_SYS_IA32_H */ #endif /* _ASM_X86_SYS_IA32_H */
...@@ -344,10 +344,11 @@ ...@@ -344,10 +344,11 @@
#define __NR_perf_event_open 336 #define __NR_perf_event_open 336
#define __NR_recvmmsg 337 #define __NR_recvmmsg 337
#define __NR_fanotify_init 338 #define __NR_fanotify_init 338
#define __NR_fanotify_mark 339
#ifdef __KERNEL__ #ifdef __KERNEL__
#define NR_syscalls 339 #define NR_syscalls 340
#define __ARCH_WANT_IPC_PARSE_VERSION #define __ARCH_WANT_IPC_PARSE_VERSION
#define __ARCH_WANT_OLD_READDIR #define __ARCH_WANT_OLD_READDIR
......
...@@ -665,6 +665,8 @@ __SYSCALL(__NR_perf_event_open, sys_perf_event_open) ...@@ -665,6 +665,8 @@ __SYSCALL(__NR_perf_event_open, sys_perf_event_open)
__SYSCALL(__NR_recvmmsg, sys_recvmmsg) __SYSCALL(__NR_recvmmsg, sys_recvmmsg)
#define __NR_fanotify_init 300 #define __NR_fanotify_init 300
__SYSCALL(__NR_fanotify_init, sys_fanotify_init) __SYSCALL(__NR_fanotify_init, sys_fanotify_init)
#define __NR_fanotify_mark 301
__SYSCALL(__NR_fanotify_mark, sys_fanotify_mark)
#ifndef __NO_STUBS #ifndef __NO_STUBS
#define __ARCH_WANT_OLD_READDIR #define __ARCH_WANT_OLD_READDIR
......
...@@ -338,3 +338,4 @@ ENTRY(sys_call_table) ...@@ -338,3 +338,4 @@ ENTRY(sys_call_table)
.long sys_perf_event_open .long sys_perf_event_open
.long sys_recvmmsg .long sys_recvmmsg
.long sys_fanotify_init .long sys_fanotify_init
.long sys_fanotify_mark
...@@ -70,3 +70,9 @@ SYSCALL_DEFINE3(fanotify_init, unsigned int, flags, unsigned int, event_f_flags, ...@@ -70,3 +70,9 @@ SYSCALL_DEFINE3(fanotify_init, unsigned int, flags, unsigned int, event_f_flags,
fsnotify_put_group(group); fsnotify_put_group(group);
return fd; return fd;
} }
SYSCALL_DEFINE5(fanotify_mark, int, fanotify_fd, unsigned int, flags,
__u64, mask, int, dfd, const char __user *, pathname)
{
return -ENOSYS;
}
...@@ -815,6 +815,9 @@ asmlinkage long sys_ppoll(struct pollfd __user *, unsigned int, ...@@ -815,6 +815,9 @@ asmlinkage long sys_ppoll(struct pollfd __user *, unsigned int,
size_t); size_t);
asmlinkage long sys_fanotify_init(unsigned int flags, unsigned int event_f_flags, asmlinkage long sys_fanotify_init(unsigned int flags, unsigned int event_f_flags,
unsigned int priority); unsigned int priority);
asmlinkage long sys_fanotify_mark(int fanotify_fd, unsigned int flags,
u64 mask, int fd,
const char __user *pathname);
int kernel_execve(const char *filename, char *const argv[], char *const envp[]); int kernel_execve(const char *filename, char *const argv[], char *const envp[]);
......
...@@ -184,3 +184,4 @@ cond_syscall(sys_perf_event_open); ...@@ -184,3 +184,4 @@ cond_syscall(sys_perf_event_open);
/* fanotify! */ /* fanotify! */
cond_syscall(sys_fanotify_init); cond_syscall(sys_fanotify_init);
cond_syscall(sys_fanotify_mark);
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册