block/export/fuse.c | 4 ++++ 1 file changed, 4 insertions(+)
Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix
https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb
and avoid the following build failure on musl:
../block/export/fuse.c: In function 'fuse_fallocate':
../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function)
643 | else if (mode & FALLOC_FL_ZERO_RANGE) {
| ^~~~~~~~~~~~~~~~~~~~
Fixes:
- http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
block/export/fuse.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/block/export/fuse.c b/block/export/fuse.c
index 2e3bf8270b..823c126d23 100644
--- a/block/export/fuse.c
+++ b/block/export/fuse.c
@@ -31,6 +31,10 @@
#include <fuse.h>
#include <fuse_lowlevel.h>
+#if defined(CONFIG_FALLOCATE_ZERO_RANGE)
+#include <linux/falloc.h>
+#endif
+
#ifdef __linux__
#include <linux/fs.h>
#endif
--
2.33.0
22.10.2021 12:52, Fabrice Fontaine пишет: > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > and avoid the following build failure on musl: > > ../block/export/fuse.c: In function 'fuse_fallocate': > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > | ^~~~~~~~~~~~~~~~~~~~ > > Fixes: > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > --- > block/export/fuse.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/block/export/fuse.c b/block/export/fuse.c > index 2e3bf8270b..823c126d23 100644 > --- a/block/export/fuse.c > +++ b/block/export/fuse.c > @@ -31,6 +31,10 @@ > #include <fuse.h> > #include <fuse_lowlevel.h> > > +#if defined(CONFIG_FALLOCATE_ZERO_RANGE) shouldn't it be "if !defined" ? /mjt > +#include <linux/falloc.h> > +#endif > + > #ifdef __linux__ > #include <linux/fs.h> > #endif >
Le lun. 25 oct. 2021 à 08:31, Michael Tokarev <mjt@tls.msk.ru> a écrit : > > 22.10.2021 12:52, Fabrice Fontaine пишет: > > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > > and avoid the following build failure on musl: > > > > ../block/export/fuse.c: In function 'fuse_fallocate': > > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > > | ^~~~~~~~~~~~~~~~~~~~ > > > > Fixes: > > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > --- > > block/export/fuse.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/block/export/fuse.c b/block/export/fuse.c > > index 2e3bf8270b..823c126d23 100644 > > --- a/block/export/fuse.c > > +++ b/block/export/fuse.c > > @@ -31,6 +31,10 @@ > > #include <fuse.h> > > #include <fuse_lowlevel.h> > > > > +#if defined(CONFIG_FALLOCATE_ZERO_RANGE) > > shouldn't it be "if !defined" ? Nope, here is an extract of meson.build: config_host_data.set('CONFIG_FALLOCATE_ZERO_RANGE', cc.has_header_symbol('linux/falloc.h', 'FALLOC_FL_ZERO_RANGE')) So, CONFIG_FALLOCATE_ZERO_RANGE is defined if FALLOC_FL_ZERO_RANGE is found in linux/falloc.h which is fine. However, because linux/falloc.h is not included in fuse.c, a build failure will be raised on musl (which does not define FALLOC_FL_ZERO_RANGE) > > /mjt > > > +#include <linux/falloc.h> > > +#endif > > + > > #ifdef __linux__ > > #include <linux/fs.h> > > #endif > > > Best Regards, Fabrice
Am 22.10.2021 um 11:52 hat Fabrice Fontaine geschrieben: > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > and avoid the following build failure on musl: > > ../block/export/fuse.c: In function 'fuse_fallocate': > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > | ^~~~~~~~~~~~~~~~~~~~ > > Fixes: > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> This patches makes sense to me, but does this mean that commit 50482fda was completely untested and the build still failed after the patch? If so, is at least this one tested and builds successfully now? Kevin
Le lun. 25 oct. 2021 à 11:33, Kevin Wolf <kwolf@redhat.com> a écrit : > > Am 22.10.2021 um 11:52 hat Fabrice Fontaine geschrieben: > > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > > and avoid the following build failure on musl: > > > > ../block/export/fuse.c: In function 'fuse_fallocate': > > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > > | ^~~~~~~~~~~~~~~~~~~~ > > > > Fixes: > > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > This patches makes sense to me, but does this mean that commit 50482fda > was completely untested and the build still failed after the patch? First iteration of this patch was tested (and applied on buildroot side): https://lists.gnu.org/archive/html/qemu-devel/2021-08/msg01394.html. Unfortunately, second iteration (which was merged) was not tested: https://lists.gnu.org/archive/html/qemu-devel/2021-08/msg01440.html. > > If so, is at least this one tested and builds successfully now? Yes, this patch builds fine. > > Kevin > Fabrice
Am 22.10.2021 um 11:52 hat Fabrice Fontaine geschrieben: > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > and avoid the following build failure on musl: > > ../block/export/fuse.c: In function 'fuse_fallocate': > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > | ^~~~~~~~~~~~~~~~~~~~ > > Fixes: > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Thanks, applied to the block branch. Kevin
On 10/22/21 11:52, Fabrice Fontaine wrote: > Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix > https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb > and avoid the following build failure on musl: > > ../block/export/fuse.c: In function 'fuse_fallocate': > ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) > 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { > | ^~~~~~~~~~~~~~~~~~~~ > > Fixes: > - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b The 2 previous lines aren't really helpful, however this is: Fixes: 50482fda98b ("block/export/fuse.c: fix musl build") > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > --- > block/export/fuse.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/block/export/fuse.c b/block/export/fuse.c > index 2e3bf8270b..823c126d23 100644 > --- a/block/export/fuse.c > +++ b/block/export/fuse.c > @@ -31,6 +31,10 @@ > #include <fuse.h> > #include <fuse_lowlevel.h> > > +#if defined(CONFIG_FALLOCATE_ZERO_RANGE) > +#include <linux/falloc.h> > +#endif > + > #ifdef __linux__ > #include <linux/fs.h> > #endif > With 'Fixes:' tag: Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On 10/25/21 13:01, Philippe Mathieu-Daudé wrote: > On 10/22/21 11:52, Fabrice Fontaine wrote: >> Include linux/falloc.h if CONFIG_FALLOCATE_ZERO_RANGE is defined to fix >> https://gitlab.com/qemu-project/qemu/-/commit/50482fda98bd62e072c30b7ea73c985c4e9d9bbb >> and avoid the following build failure on musl: >> >> ../block/export/fuse.c: In function 'fuse_fallocate': >> ../block/export/fuse.c:643:21: error: 'FALLOC_FL_ZERO_RANGE' undeclared (first use in this function) >> 643 | else if (mode & FALLOC_FL_ZERO_RANGE) { >> | ^~~~~~~~~~~~~~~~~~~~ >> >> Fixes: >> - http://autobuild.buildroot.org/results/be24433a429fda681fb66698160132c1c99bc53b > > The 2 previous lines aren't really helpful, however this is: > > Fixes: 50482fda98b ("block/export/fuse.c: fix musl build") Also better to change this patch subject to distinct: "block/export/fuse.c: fix musl build (again)" >> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> >> --- >> block/export/fuse.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/block/export/fuse.c b/block/export/fuse.c >> index 2e3bf8270b..823c126d23 100644 >> --- a/block/export/fuse.c >> +++ b/block/export/fuse.c >> @@ -31,6 +31,10 @@ >> #include <fuse.h> >> #include <fuse_lowlevel.h> >> >> +#if defined(CONFIG_FALLOCATE_ZERO_RANGE) >> +#include <linux/falloc.h> >> +#endif >> + >> #ifdef __linux__ >> #include <linux/fs.h> >> #endif >> > > With 'Fixes:' tag: > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
© 2016 - 2024 Red Hat, Inc.