Message ID | 20241217060432.GA594052@mit.edu (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [REGRESSION] generic/{467,477} in linux-next | expand |
On Tue, Dec 17, 2024 at 01:04:32AM -0500, Theodore Ts'o wrote: > For at least the last two days, I've been noticing xfstest failures > for generic/467 and generic/477 for all file systems. It can be > reproduced by "install-kconfig; kbuild ; kvm-xfstests -c > ext4/4k,xfs/4k generic/467 generic/477". > > I tried doing a bisection, which fingered commit 3660c5fd9482 > ("exportfs: add permission method"). When I tried reverting this > commit, and then fixing up a compile failure in fs/pidfs.c by the most > obvious way, the test stopped failing. > > Christian, could you take a look? Many thanks!! On it!
On Tue, Dec 17, 2024 at 08:59:20AM +0100, Christian Brauner wrote: > On Tue, Dec 17, 2024 at 01:04:32AM -0500, Theodore Ts'o wrote: > > For at least the last two days, I've been noticing xfstest failures > > for generic/467 and generic/477 for all file systems. It can be > > reproduced by "install-kconfig; kbuild ; kvm-xfstests -c > > ext4/4k,xfs/4k generic/467 generic/477". > > > > I tried doing a bisection, which fingered commit 3660c5fd9482 > > ("exportfs: add permission method"). When I tried reverting this > > commit, and then fixing up a compile failure in fs/pidfs.c by the most > > obvious way, the test stopped failing. > > > > Christian, could you take a look? Many thanks!! > > On it! Ok, pretty obvious bug. may_decode_fh() returned a bool instead of a negative error code. This is now fixed and tested with both xfs and ext4.
From 8bc129cceb59663ca3a054ea3f8f67abec17298b Mon Sep 17 00:00:00 2001 From: Theodore Ts'o <tytso@mit.edu> Date: Tue, 17 Dec 2024 00:40:01 -0500 Subject: [PATCH 2/2] pidfs: fix up after reverting "exportfs: add permission method" Signed-off-by: Theodore Ts'o <tytso@mit.edu> --- fs/pidfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/pidfs.c b/fs/pidfs.c index c5a51c69acc8..0e2c49499814 100644 --- a/fs/pidfs.c +++ b/fs/pidfs.c @@ -610,6 +610,7 @@ static struct dentry *pidfs_fh_to_dentry(struct super_block *sb, #define VALID_FILE_HANDLE_OPEN_FLAGS \ (O_RDONLY | O_WRONLY | O_RDWR | O_NONBLOCK | O_CLOEXEC | O_EXCL) +#if 0 static int pidfs_export_permission(struct handle_to_path_ctx *ctx, unsigned int oflags) { @@ -623,6 +624,7 @@ static int pidfs_export_permission(struct handle_to_path_ctx *ctx, */ return 0; } +#endif static struct file *pidfs_export_open(struct path *path, unsigned int oflags) { @@ -638,7 +640,7 @@ static const struct export_operations pidfs_export_operations = { .encode_fh = pidfs_encode_fh, .fh_to_dentry = pidfs_fh_to_dentry, .open = pidfs_export_open, - .permission = pidfs_export_permission, +// .permission = pidfs_export_permission, }; static int pidfs_init_inode(struct inode *inode, void *data) -- 2.45.2