Re: [PATCH] fs: fix sysctls.c built

From: Christian Brauner
Date: Thu Apr 13 2023 - 04:35:39 EST


On Thu, Apr 13, 2023 at 09:34:54AM +0800, Kefeng Wang wrote:
>
>
> On 2023/4/12 17:19, Christian Brauner wrote:
> > On Tue, Apr 11, 2023 at 12:14:44PM +0800, Kefeng Wang wrote:
> > > /proc/sys/fs/overflowuid and overflowgid will be lost without
> > > building this file, kindly ping, any comments, thanks.
> > >
> > >
> > > On 2023/3/31 16:45, Kefeng Wang wrote:
> > > > 'obj-$(CONFIG_SYSCTL) += sysctls.o' must be moved after "obj-y :=",
> > > > or it won't be built as it is overwrited.
>
> ...
>
> > Given the description in
> > ab171b952c6e ("fs: move namespace sysctls and declare fs base directory")
> > you probably want to move this earlier.
>
> Oh, missing that part, but the /proc/sys/fs/overflowuid and overflowgid are
> lost after it, is it expected? Luis, could you take a look? thanks.

No, /proc/sys/fs/overflow{g,u}id need to be there of course. What I mean
is something like the following (similar to how net/core/ does it):

UNTESTED
---
fs/Makefile | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/fs/Makefile b/fs/Makefile
index 05f89b5c962f..dfaea8a28d92 100644
--- a/fs/Makefile
+++ b/fs/Makefile
@@ -6,17 +6,19 @@
# Rewritten to use lists instead of if-statements.
#

-obj-$(CONFIG_SYSCTL) += sysctls.o
-
-obj-y := open.o read_write.o file_table.o super.o \
- char_dev.o stat.o exec.o pipe.o namei.o fcntl.o \
- ioctl.o readdir.o select.o dcache.o inode.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 d_path.o \
- stack.o fs_struct.o statfs.o fs_pin.o nsfs.o \
- fs_types.o fs_context.o fs_parser.o fsopen.o init.o \
- kernel_read_file.o mnt_idmapping.o remap_range.o
+obj-y := fs_types.o
+obj-$(CONFIG_SYSCTL) += sysctls.o
+obj-y += open.o read_write.o file_table.o super.o \
+ char_dev.o stat.o exec.o pipe.o namei.o \
+ fcntl.o ioctl.o readdir.o select.o dcache.o \
+ inode.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 d_path.o stack.o \
+ fs_struct.o statfs.o fs_pin.o nsfs.o \
+ fs_types.o fs_context.o fs_parser.o \
+ fsopen.o init.o kernel_read_file.o \
+ mnt_idmapping.o remap_range.o

ifeq ($(CONFIG_BLOCK),y)
obj-y += buffer.o mpage.o
--
2.34.1