mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	mm: wire up syscall process_mrelease
Split off from prev patch in the series that implements the syscall. Link: https://lkml.kernel.org/r/20210809185259.405936-2-surenb@google.com Signed-off-by: Suren Baghdasaryan <surenb@google.com> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Christian Brauner <christian.brauner@ubuntu.com> Cc: Christoph Hellwig <hch@infradead.org> Cc: David Hildenbrand <david@redhat.com> Cc: David Rientjes <rientjes@google.com> Cc: Florian Weimer <fweimer@redhat.com> Cc: Jan Engelhardt <jengelh@inai.de> Cc: Jann Horn <jannh@google.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Matthew Wilcox (Oracle) <willy@infradead.org> Cc: Michal Hocko <mhocko@suse.com> Cc: Minchan Kim <minchan@kernel.org> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Rik van Riel <riel@surriel.com> Cc: Roman Gushchin <guro@fb.com> Cc: Shakeel Butt <shakeelb@google.com> Cc: Tim Murray <timmurray@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
		
							parent
							
								
									884a7e5964
								
							
						
					
					
						commit
						dce4910396
					
				
					 21 changed files with 38 additions and 2 deletions
				
			
		| 
						 | 
					@ -486,3 +486,5 @@
 | 
				
			||||||
554	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					554	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
555	common	landlock_add_rule		sys_landlock_add_rule
 | 
					555	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
556	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					556	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 557 reserved for memfd_secret
 | 
				
			||||||
 | 
					558	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -460,3 +460,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,7 +38,7 @@
 | 
				
			||||||
#define __ARM_NR_compat_set_tls		(__ARM_NR_COMPAT_BASE + 5)
 | 
					#define __ARM_NR_compat_set_tls		(__ARM_NR_COMPAT_BASE + 5)
 | 
				
			||||||
#define __ARM_NR_COMPAT_END		(__ARM_NR_COMPAT_BASE + 0x800)
 | 
					#define __ARM_NR_COMPAT_END		(__ARM_NR_COMPAT_BASE + 0x800)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define __NR_compat_syscalls		447
 | 
					#define __NR_compat_syscalls		449
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define __ARCH_WANT_SYS_CLONE
 | 
					#define __ARCH_WANT_SYS_CLONE
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -901,6 +901,8 @@ __SYSCALL(__NR_landlock_create_ruleset, sys_landlock_create_ruleset)
 | 
				
			||||||
__SYSCALL(__NR_landlock_add_rule, sys_landlock_add_rule)
 | 
					__SYSCALL(__NR_landlock_add_rule, sys_landlock_add_rule)
 | 
				
			||||||
#define __NR_landlock_restrict_self 446
 | 
					#define __NR_landlock_restrict_self 446
 | 
				
			||||||
__SYSCALL(__NR_landlock_restrict_self, sys_landlock_restrict_self)
 | 
					__SYSCALL(__NR_landlock_restrict_self, sys_landlock_restrict_self)
 | 
				
			||||||
 | 
					#define __NR_process_mrelease 448
 | 
				
			||||||
 | 
					__SYSCALL(__NR_process_mrelease, sys_process_mrelease)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Please add new compat syscalls above this comment and update
 | 
					 * Please add new compat syscalls above this comment and update
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -367,3 +367,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -446,3 +446,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -452,3 +452,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -385,3 +385,5 @@
 | 
				
			||||||
444	n32	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	n32	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	n32	landlock_add_rule		sys_landlock_add_rule
 | 
					445	n32	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	n32	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	n32	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	n32	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -361,3 +361,5 @@
 | 
				
			||||||
444	n64	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	n64	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	n64	landlock_add_rule		sys_landlock_add_rule
 | 
					445	n64	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	n64	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	n64	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	n64	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -434,3 +434,5 @@
 | 
				
			||||||
444	o32	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	o32	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	o32	landlock_add_rule		sys_landlock_add_rule
 | 
					445	o32	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	o32	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	o32	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	o32	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -444,3 +444,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -526,3 +526,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -449,3 +449,5 @@
 | 
				
			||||||
444  common	landlock_create_ruleset	sys_landlock_create_ruleset	sys_landlock_create_ruleset
 | 
					444  common	landlock_create_ruleset	sys_landlock_create_ruleset	sys_landlock_create_ruleset
 | 
				
			||||||
445  common	landlock_add_rule	sys_landlock_add_rule		sys_landlock_add_rule
 | 
					445  common	landlock_add_rule	sys_landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446  common	landlock_restrict_self	sys_landlock_restrict_self	sys_landlock_restrict_self
 | 
					446  common	landlock_restrict_self	sys_landlock_restrict_self	sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448  common	process_mrelease	sys_process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -449,3 +449,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -492,3 +492,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -452,3 +452,4 @@
 | 
				
			||||||
445	i386	landlock_add_rule	sys_landlock_add_rule
 | 
					445	i386	landlock_add_rule	sys_landlock_add_rule
 | 
				
			||||||
446	i386	landlock_restrict_self	sys_landlock_restrict_self
 | 
					446	i386	landlock_restrict_self	sys_landlock_restrict_self
 | 
				
			||||||
447	i386	memfd_secret		sys_memfd_secret
 | 
					447	i386	memfd_secret		sys_memfd_secret
 | 
				
			||||||
 | 
					448	i386	process_mrelease	sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -369,6 +369,7 @@
 | 
				
			||||||
445	common	landlock_add_rule	sys_landlock_add_rule
 | 
					445	common	landlock_add_rule	sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self	sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self	sys_landlock_restrict_self
 | 
				
			||||||
447	common	memfd_secret		sys_memfd_secret
 | 
					447	common	memfd_secret		sys_memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease	sys_process_mrelease
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# Due to a historical design error, certain syscalls are numbered differently
 | 
					# Due to a historical design error, certain syscalls are numbered differently
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -417,3 +417,5 @@
 | 
				
			||||||
444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
					444	common	landlock_create_ruleset		sys_landlock_create_ruleset
 | 
				
			||||||
445	common	landlock_add_rule		sys_landlock_add_rule
 | 
					445	common	landlock_add_rule		sys_landlock_add_rule
 | 
				
			||||||
446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
					446	common	landlock_restrict_self		sys_landlock_restrict_self
 | 
				
			||||||
 | 
					# 447 reserved for memfd_secret
 | 
				
			||||||
 | 
					448	common	process_mrelease		sys_process_mrelease
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -915,6 +915,7 @@ asmlinkage long sys_mincore(unsigned long start, size_t len,
 | 
				
			||||||
asmlinkage long sys_madvise(unsigned long start, size_t len, int behavior);
 | 
					asmlinkage long sys_madvise(unsigned long start, size_t len, int behavior);
 | 
				
			||||||
asmlinkage long sys_process_madvise(int pidfd, const struct iovec __user *vec,
 | 
					asmlinkage long sys_process_madvise(int pidfd, const struct iovec __user *vec,
 | 
				
			||||||
			size_t vlen, int behavior, unsigned int flags);
 | 
								size_t vlen, int behavior, unsigned int flags);
 | 
				
			||||||
 | 
					asmlinkage long sys_process_mrelease(int pidfd, unsigned int flags);
 | 
				
			||||||
asmlinkage long sys_remap_file_pages(unsigned long start, unsigned long size,
 | 
					asmlinkage long sys_remap_file_pages(unsigned long start, unsigned long size,
 | 
				
			||||||
			unsigned long prot, unsigned long pgoff,
 | 
								unsigned long prot, unsigned long pgoff,
 | 
				
			||||||
			unsigned long flags);
 | 
								unsigned long flags);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -877,9 +877,11 @@ __SYSCALL(__NR_landlock_restrict_self, sys_landlock_restrict_self)
 | 
				
			||||||
#define __NR_memfd_secret 447
 | 
					#define __NR_memfd_secret 447
 | 
				
			||||||
__SYSCALL(__NR_memfd_secret, sys_memfd_secret)
 | 
					__SYSCALL(__NR_memfd_secret, sys_memfd_secret)
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					#define __NR_process_mrelease 448
 | 
				
			||||||
 | 
					__SYSCALL(__NR_process_mrelease, sys_process_mrelease)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#undef __NR_syscalls
 | 
					#undef __NR_syscalls
 | 
				
			||||||
#define __NR_syscalls 448
 | 
					#define __NR_syscalls 449
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * 32 bit systems traditionally used different
 | 
					 * 32 bit systems traditionally used different
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -289,6 +289,7 @@ COND_SYSCALL(munlockall);
 | 
				
			||||||
COND_SYSCALL(mincore);
 | 
					COND_SYSCALL(mincore);
 | 
				
			||||||
COND_SYSCALL(madvise);
 | 
					COND_SYSCALL(madvise);
 | 
				
			||||||
COND_SYSCALL(process_madvise);
 | 
					COND_SYSCALL(process_madvise);
 | 
				
			||||||
 | 
					COND_SYSCALL(process_mrelease);
 | 
				
			||||||
COND_SYSCALL(remap_file_pages);
 | 
					COND_SYSCALL(remap_file_pages);
 | 
				
			||||||
COND_SYSCALL(mbind);
 | 
					COND_SYSCALL(mbind);
 | 
				
			||||||
COND_SYSCALL_COMPAT(mbind);
 | 
					COND_SYSCALL_COMPAT(mbind);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue