Package: fuse3 / 3.17.2-3

Metadata

Package Version Patches format
fuse3 3.17.2-3 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
Fix_meson_function_tests.patch | (download)

meson.build | 67 49 + 18 - 0 !
1 file changed, 49 insertions(+), 18 deletions(-)

 [patch] fix meson function tests

Several meson tests were incorrectly failing

Checking for function "static_assert" : NO (cached)
Checking for function "pthread_setname_np" : NO (cached)
Check usable header "#include <linux/close_range.h>" : NO (cached)

These functions get now tested with compilation tests
and get found on my system.

Checking if "static_assert check" compiles: YES
Checking if "pthread_setname_np check" compiles: YES
Checking if "close_range check" compiles: YES

Signed-off-by: Bernd Schubert <bschubert@ddn.com>
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

meson.build make special_funcs check more reliable.patch | (download)

meson.build | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 [patch] meson.build: make special_funcs check more reliable

Unfortunately while cross-compiling with build tools like Buildroot it
happens to have repeated flags or anything that could lead to a warning.
This way the check fails because of a warning not related to the special
function. So let's use cc.links() and increase minimum meson_version to
0.60 since cc.links() has been added during that version.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Make_conn want want_ext_conversion_non_fatal.patch | (download)

lib/fuse.c | 16 1 + 15 - 0 !
lib/fuse_i.h | 5 1 + 4 - 0 !
lib/fuse_lowlevel.c | 9 1 + 8 - 0 !
3 files changed, 3 insertions(+), 27 deletions(-)

 [patch] make conn->want/want_ext conversion non fatal

there are too many issues with conn->want and conn->want_ext
conversion, for now just log a warning, but setting both
flags is now not fatal anymore.

Signed-off-by: Bernd Schubert <bschubert@ddn.com>

Add container_of and ROUND_UP macros.patch | (download)

lib/fuse.c | 4 0 + 4 - 0 !
lib/fuse_lowlevel.c | 4 0 + 4 - 0 !
lib/util.h | 6 6 + 0 - 0 !
3 files changed, 6 insertions(+), 8 deletions(-)

 [patch] add container_of and round_up macros

Needed by follow up commits. container_of is actually
just moved/consolidated to util.h.

Signed-off-by: Bernd Schubert <bschubert@ddn.com>
(cherry picked from commit c5a032b3410d7225ac0355355faa63565a209943)

Fix fuse_apply_conn_info_opts.patch | (download)

include/fuse_common.h | 50 31 + 19 - 0 !
lib/fuse.c | 9 1 + 8 - 0 !
lib/fuse_i.h | 38 7 + 31 - 0 !
lib/fuse_lowlevel.c | 78 72 + 6 - 0 !
lib/fuse_versionscript | 10 10 + 0 - 0 !
lib/helper.c | 15 11 + 4 - 0 !
lib/util.c | 8 8 + 0 - 0 !
lib/util.h | 3 3 + 0 - 0 !
test/test_want_conversion.c | 97 57 + 40 - 0 !
9 files changed, 200 insertions(+), 108 deletions(-)

 [patch] conn->want conversion: fix fuse_apply_conn_info_opts()

fuse_apply_conn_info_opts() was applying to 'want_ext',
which would cause conflicts with 'want' if the application
applied its own flags to 'conn->want'.

Solution is:
    - to move fuse_{set,unset,get}_feature_flag and
      convert_to_conn_want_ext() to fuse_lowlevel.c and
      to define them as part of the public API, although
      convert_to_conn_want_ext() should not be used - it is
      currently needed to be a public function due as it needs
      to be defined for the tests.

Related to https://github.com/libfuse/libfuse/issues/1171 and
https://github.com/libfuse/libfuse/pull/1172.

Closes: https://github.com/libfuse/libfuse/issues/1171
Signed-off-by: Bernd Schubert <bschubert@ddn.com>

Fix the close_range ifdef.patch | (download)

util/fusermount.c | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 [patch] fusermount: fix the close_range ifdef

This fixes commit 82bcd818
That commit had removed HAVE_LINUX_CLOSE_RANGE in meson generation,
but didn't remove the usage in fusermount.c - fusermount was then
not using the close_range syscall.

Closes: https://github.com/libfuse/libfuse/issues/1284
Signed-off-by: Bernd Schubert <bernd@bsbernd.com>

memfs_ll fix deadlock.patch | (download)

example/memfs_ll.cc | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 [patch] memfs_ll: fix deadlock in truncate operation

Remove redundant mutex lock acquisition in the truncate() method to
prevent deadlock. The issue occurs when memfs_setattr() already holds
the mutex lock and then calls truncate(), which attempts to acquire
the same lock again.

Signed-off-by: Long Li <leo.lilong@huawei.com>