[PATCH] support: Handle FUSE_GETXATTR during FUSE FS mount
Arjun Shankar
arjun@redhat.com
Mon Aug 18 13:33:13 GMT 2025
When testing with some kernel versions, support FUSE infrastructure
encounters a FUSE_GETXATTR request, leading to FUSE tests hanging until
timed out. Therefore, pass FUSE_GETXATTR requests from
support_fuse_handle_mountpoint to support_fuse_handle_directory, and
adjust support_fuse_handle_directory to return ENOSYS so that tests can
proceed.
---
I ran into FUSE test failures on RHEL 10 aarch64 builders because during
mount, the test rig receives a FUSE_GETXATTR request and the test hangs.
Returning ENOSYS is sufficient for the tests to make progress and PASS.
---
support/support_fuse.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/support/support_fuse.c b/support/support_fuse.c
index a70a74c8e8..a90882e3aa 100644
--- a/support/support_fuse.c
+++ b/support/support_fuse.c
@@ -212,6 +212,9 @@ support_fuse_handle_directory (struct support_fuse *f)
support_fuse_reply_prepared (f);
}
return true;
+ case FUSE_GETXATTR:
+ support_fuse_reply_error (f, ENOSYS);
+ return true;
default:
return false;
}
@@ -222,7 +225,8 @@ support_fuse_handle_mountpoint (struct support_fuse *f)
{
TEST_VERIFY (f->inh != NULL);
/* 1 is the root node. */
- if (f->inh->opcode == FUSE_GETATTR && f->inh->nodeid == 1)
+ if ((f->inh->opcode == FUSE_GETATTR || f->inh->opcode == FUSE_GETXATTR)
+ && f->inh->nodeid == 1)
return support_fuse_handle_directory (f);
return false;
}
--
2.50.1
More information about the Libc-alpha
mailing list