tools/testing/selftests/memfd/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
When writing a test for fusectl, I referred to this Makefile as a
reference for creating a FUSE daemon in the selftests.
While doing so, I noticed that there is a minor issue in the Makefile.
The fuse_mnt.c file is not actually compiled into fuse_mnt.o,
and the code setting CFLAGS for it never takes effect.
The reason fuse_mnt compiles successfully is because CFLAGS is set
at the very beginning of the file.
Signed-off-by: Chen Linxuan <chenlinxuan@uniontech.com>
---
tools/testing/selftests/memfd/Makefile | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/tools/testing/selftests/memfd/Makefile b/tools/testing/selftests/memfd/Makefile
index 163b6f68631c4..e9b886c65153d 100644
--- a/tools/testing/selftests/memfd/Makefile
+++ b/tools/testing/selftests/memfd/Makefile
@@ -1,5 +1,4 @@
# SPDX-License-Identifier: GPL-2.0
-CFLAGS += -D_FILE_OFFSET_BITS=64
CFLAGS += $(KHDR_INCLUDES)
TEST_GEN_PROGS := memfd_test
@@ -16,10 +15,9 @@ ifeq ($(VAR_LDLIBS),)
VAR_LDLIBS := -lfuse -pthread
endif
-fuse_mnt.o: CFLAGS += $(VAR_CFLAGS)
-
include ../lib.mk
+$(OUTPUT)/fuse_mnt: CFLAGS += $(VAR_CFLAGS)
$(OUTPUT)/fuse_mnt: LDLIBS += $(VAR_LDLIBS)
$(OUTPUT)/memfd_test: memfd_test.c common.c
--
2.43.0
On 6/9/25 20:05, Chen Linxuan wrote: > When writing a test for fusectl, I referred to this Makefile as a > reference for creating a FUSE daemon in the selftests. > While doing so, I noticed that there is a minor issue in the Makefile. What happens if this change isn't made? > > The fuse_mnt.c file is not actually compiled into fuse_mnt.o, > and the code setting CFLAGS for it never takes effect. > The reason fuse_mnt compiles successfully is because CFLAGS is set > at the very beginning of the file. > > Signed-off-by: Chen Linxuan <chenlinxuan@uniontech.com> > --- > tools/testing/selftests/memfd/Makefile | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/tools/testing/selftests/memfd/Makefile b/tools/testing/selftests/memfd/Makefile > index 163b6f68631c4..e9b886c65153d 100644 > --- a/tools/testing/selftests/memfd/Makefile > +++ b/tools/testing/selftests/memfd/Makefile > @@ -1,5 +1,4 @@ > # SPDX-License-Identifier: GPL-2.0 > -CFLAGS += -D_FILE_OFFSET_BITS=64 What's the reason for deleting the above? > CFLAGS += $(KHDR_INCLUDES) > > TEST_GEN_PROGS := memfd_test > @@ -16,10 +15,9 @@ ifeq ($(VAR_LDLIBS),) > VAR_LDLIBS := -lfuse -pthread > endif > > -fuse_mnt.o: CFLAGS += $(VAR_CFLAGS) > - > include ../lib.mk > > +$(OUTPUT)/fuse_mnt: CFLAGS += $(VAR_CFLAGS) > $(OUTPUT)/fuse_mnt: LDLIBS += $(VAR_LDLIBS) > > $(OUTPUT)/memfd_test: memfd_test.c common.c thanks, -- Shuah
On Thu, Jun 19, 2025 at 5:21 AM Shuah Khan <skhan@linuxfoundation.org> wrote: > > On 6/9/25 20:05, Chen Linxuan wrote: > > When writing a test for fusectl, I referred to this Makefile as a > > reference for creating a FUSE daemon in the selftests. > > While doing so, I noticed that there is a minor issue in the Makefile. > > What happens if this change isn't made? Nothing will happen. When I was writing tests for the fusectl filesystem in the kernel repository, I came across this file as a reference. Then I found that the process of passing CFLAGS was not correct. So, for the reason of not wanting others to be misled again, I want to update the compilation process here. > > > > > The fuse_mnt.c file is not actually compiled into fuse_mnt.o, > > and the code setting CFLAGS for it never takes effect. > > The reason fuse_mnt compiles successfully is because CFLAGS is set > > at the very beginning of the file. > > > > Signed-off-by: Chen Linxuan <chenlinxuan@uniontech.com> > > --- > > tools/testing/selftests/memfd/Makefile | 4 +--- > > 1 file changed, 1 insertion(+), 3 deletions(-) > > > > diff --git a/tools/testing/selftests/memfd/Makefile b/tools/testing/selftests/memfd/Makefile > > index 163b6f68631c4..e9b886c65153d 100644 > > --- a/tools/testing/selftests/memfd/Makefile > > +++ b/tools/testing/selftests/memfd/Makefile > > @@ -1,5 +1,4 @@ > > # SPDX-License-Identifier: GPL-2.0 > > -CFLAGS += -D_FILE_OFFSET_BITS=64 > > What's the reason for deleting the above? The CFLAGS update here actually doesn't take effect. I believe it is the -D_FILE_OFFSET_BITS=64 in VAR_CFLAGS that truly takes effect. > > > CFLAGS += $(KHDR_INCLUDES) > > > > TEST_GEN_PROGS := memfd_test > > @@ -16,10 +15,9 @@ ifeq ($(VAR_LDLIBS),) > > VAR_LDLIBS := -lfuse -pthread > > endif > > > > -fuse_mnt.o: CFLAGS += $(VAR_CFLAGS) > > - > > include ../lib.mk > > > > +$(OUTPUT)/fuse_mnt: CFLAGS += $(VAR_CFLAGS) > > $(OUTPUT)/fuse_mnt: LDLIBS += $(VAR_LDLIBS) > > > > $(OUTPUT)/memfd_test: memfd_test.c common.c > > thanks, > -- Shuah > > >
On 6/19/25 01:43, Chen Linxuan wrote: > On Thu, Jun 19, 2025 at 5:21 AM Shuah Khan <skhan@linuxfoundation.org> wrote: >> >> On 6/9/25 20:05, Chen Linxuan wrote: >>> When writing a test for fusectl, I referred to this Makefile as a >>> reference for creating a FUSE daemon in the selftests. >>> While doing so, I noticed that there is a minor issue in the Makefile. >> >> What happens if this change isn't made? > > Nothing will happen. > When I was writing tests for the fusectl filesystem in the kernel repository, > I came across this file as a reference. > Then I found that the process of passing CFLAGS was not correct. > So, for the reason of not wanting others to be misled again, > I want to update the compilation process here. > If there is no obvious reason then let's not make this change. thanks, -- Shuah
On Fri, Jun 20, 2025 at 1:02 AM Shuah Khan <skhan@linuxfoundation.org> wrote: > > On 6/19/25 01:43, Chen Linxuan wrote: > > On Thu, Jun 19, 2025 at 5:21 AM Shuah Khan <skhan@linuxfoundation.org> wrote: > >> > >> On 6/9/25 20:05, Chen Linxuan wrote: > >>> When writing a test for fusectl, I referred to this Makefile as a > >>> reference for creating a FUSE daemon in the selftests. > >>> While doing so, I noticed that there is a minor issue in the Makefile. > >> > >> What happens if this change isn't made? > > > > Nothing will happen. > > When I was writing tests for the fusectl filesystem in the kernel repository, > > I came across this file as a reference. > > Then I found that the process of passing CFLAGS was not correct. > > So, for the reason of not wanting others to be misled again, > > I want to update the compilation process here. > > > > If there is no obvious reason then let's not make this change. Once https://lore.kernel.org/all/20250612094033.2538122-2-chenlinxuan@uniontech.com/ gets merged, there will be another example of compiling fuse in selftests in the kernel. So I think it's not a big problem if we don't make this change here. thanks, Chen Linxuan > > thanks, > -- Shuah > >
© 2016 - 2025 Red Hat, Inc.