Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1588020

[PATCH 3/3] fs: Allows for the pivot_root syscall to be omitted

From bosrsf04@gmail.com
Newsgroups linux.kernel
Subject [PATCH 3/3] fs: Allows for the pivot_root syscall to be omitted
Date 2017-02-25 01:30 +0100
Message-ID <teypk-86z-15@gated-at.bofh.it> (permalink)
References <teypk-86z-7@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Brian Ashworth <bosrsf04@gmail.com>

The pivot_root syscall is not needed on systems that do not use
any intermediate filesystem. Allowing for pivot_root to be
ommitted from the kernel will aid in the tinification efforts.

Without CONFIG_PIVOT_ROOT_SYSCALL set
add/remove: 0/1 grow/shrink: 0/0 up/down: 0/-614 (-614)
function                                     old     new   delta
sys_pivot_root                               614       -    -614
Total: Before=1899577, After=1898963, chg -0.03%

Signed-off-by: Brian Ashworth <bosrsf04@gmail.com>
---
 fs/Makefile     |  4 +++-
 init/Kconfig    | 10 ++++++++++
 kernel/sys_ni.c |  1 +
 3 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/fs/Makefile b/fs/Makefile
index 34cb58c4127d..1a35bc90b0d5 100644
--- a/fs/Makefile
+++ b/fs/Makefile
@@ -11,7 +11,7 @@ obj-y :=	open.o read_write.o file_table.o super.o \
 		attr.o bad_inode.o file.o filesystems.o namespace.o \
 		seq_file.o xattr.o libfs.o fs-writeback.o \
 		pnode.o splice.o sync.o utimes.o \
-		stack.o fs_struct.o statfs.o fs_pin.o nsfs.o pivot_root.o
+		stack.o fs_struct.o statfs.o fs_pin.o nsfs.o
 
 ifeq ($(CONFIG_BLOCK),y)
 obj-y +=	buffer.o block_dev.o direct-io.o mpage.o
@@ -19,6 +19,8 @@ else
 obj-y +=	no-block.o
 endif
 
+obj-$(CONFIG_PIVOT_ROOT_SYSCALL) += pivot_root.o
+
 obj-$(CONFIG_PROC_FS) += proc_namespace.o
 
 obj-y				+= notify/
diff --git a/init/Kconfig b/init/Kconfig
index 4dd8bd232a1d..33ed0282765f 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1462,6 +1462,16 @@ config SYSCTL_SYSCALL
 
 	  If unsure say N here.
 
+config PIVOT_ROOT_SYSCALL
+	bool "Pivot_root syscall support" if EXPERT
+	default y
+	help
+	  pivot_root is a system call that allows the root to be moved and
+	  replaced by another root. This is needed for intermediate file
+	  systems such as initrd.
+
+	  If unsure say Y here.
+
 config POSIX_TIMERS
 	bool "Posix Clocks & timers" if EXPERT
 	default y
diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c
index 8acef8576ce9..7bd207571f87 100644
--- a/kernel/sys_ni.c
+++ b/kernel/sys_ni.c
@@ -178,6 +178,7 @@ cond_syscall(sys_setfsgid);
 cond_syscall(sys_capget);
 cond_syscall(sys_capset);
 cond_syscall(sys_copy_file_range);
+cond_syscall(sys_pivot_root);
 
 /* arch-specific weak syscall entries */
 cond_syscall(sys_pciconfig_read);
-- 
2.11.1

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH 3/3] fs: Allows for the pivot_root syscall to be omitted bosrsf04@gmail.com - 2017-02-25 01:30 +0100

csiph-web