From: kernel test robot <lkp@intel.com>
To: trondmy@kernel.org, Anna Schumaker <anna@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
linux-nfs@vger.kernel.org
Subject: Re: [PATCH] NFS: Avoid flushing data while holding directory locks in nfs_rename()
Date: Mon, 28 Apr 2025 09:53:22 +0800 [thread overview]
Message-ID: <202504280902.aKsSfRfW-lkp@intel.com> (raw)
In-Reply-To: <a804c54445a3f028007763e05285d765afcab0f9.1745794273.git.trond.myklebust@hammerspace.com>
Hi,
kernel test robot noticed the following build errors:
[auto build test ERROR on trondmy-nfs/linux-next]
[also build test ERROR on linus/master v6.15-rc3 next-20250424]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/trondmy-kernel-org/NFS-Avoid-flushing-data-while-holding-directory-locks-in-nfs_rename/20250428-070327
base: git://git.linux-nfs.org/projects/trondmy/linux-nfs.git linux-next
patch link: https://lore.kernel.org/r/a804c54445a3f028007763e05285d765afcab0f9.1745794273.git.trond.myklebust%40hammerspace.com
patch subject: [PATCH] NFS: Avoid flushing data while holding directory locks in nfs_rename()
config: i386-buildonly-randconfig-004-20250428 (https://download.01.org/0day-ci/archive/20250428/202504280902.aKsSfRfW-lkp@intel.com/config)
compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250428/202504280902.aKsSfRfW-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202504280902.aKsSfRfW-lkp@intel.com/
All errors (new ones prefixed by >>):
>> fs/nfs/client.c:1109:10: error: no member named 'fh_expire_type' in 'struct nfs_server'
1109 | server->fh_expire_type = NFS_FH_VOL_RENAME;
| ~~~~~~ ^
>> fs/nfs/client.c:1109:27: error: use of undeclared identifier 'NFS_FH_VOL_RENAME'
1109 | server->fh_expire_type = NFS_FH_VOL_RENAME;
| ^
2 errors generated.
--
>> fs/nfs/dir.c:2686:14: error: no member named 'fh_expire_type' in 'struct nfs_server'
2686 | if (server->fh_expire_type & NFS_FH_RENAME_UNSAFE)
| ~~~~~~ ^
>> fs/nfs/dir.c:2686:31: error: use of undeclared identifier 'NFS_FH_RENAME_UNSAFE'
2686 | if (server->fh_expire_type & NFS_FH_RENAME_UNSAFE)
| ^
fs/nfs/dir.c:2687:20: error: no member named 'fh_expire_type' in 'struct nfs_server'
2687 | return !(server->fh_expire_type & NFS_FH_NOEXPIRE_WITH_OPEN);
| ~~~~~~ ^
>> fs/nfs/dir.c:2687:37: error: use of undeclared identifier 'NFS_FH_NOEXPIRE_WITH_OPEN'
2687 | return !(server->fh_expire_type & NFS_FH_NOEXPIRE_WITH_OPEN);
| ^
4 errors generated.
vim +1109 fs/nfs/client.c
1067
1068 /*
1069 * Create a version 2 or 3 volume record
1070 * - keyed on server and FSID
1071 */
1072 struct nfs_server *nfs_create_server(struct fs_context *fc)
1073 {
1074 struct nfs_fs_context *ctx = nfs_fc2context(fc);
1075 struct nfs_server *server;
1076 struct nfs_fattr *fattr;
1077 int error;
1078
1079 server = nfs_alloc_server();
1080 if (!server)
1081 return ERR_PTR(-ENOMEM);
1082
1083 server->cred = get_cred(fc->cred);
1084
1085 error = -ENOMEM;
1086 fattr = nfs_alloc_fattr();
1087 if (fattr == NULL)
1088 goto error;
1089
1090 /* Get a client representation */
1091 error = nfs_init_server(server, fc);
1092 if (error < 0)
1093 goto error;
1094
1095 /* Probe the root fh to retrieve its FSID */
1096 error = nfs_probe_fsinfo(server, ctx->mntfh, fattr);
1097 if (error < 0)
1098 goto error;
1099 if (server->nfs_client->rpc_ops->version == 3) {
1100 if (server->namelen == 0 || server->namelen > NFS3_MAXNAMLEN)
1101 server->namelen = NFS3_MAXNAMLEN;
1102 if (!(ctx->flags & NFS_MOUNT_NORDIRPLUS))
1103 server->caps |= NFS_CAP_READDIRPLUS;
1104 } else {
1105 if (server->namelen == 0 || server->namelen > NFS2_MAXNAMLEN)
1106 server->namelen = NFS2_MAXNAMLEN;
1107 }
1108 /* Linux 'subtree_check' borkenness mandates this setting */
> 1109 server->fh_expire_type = NFS_FH_VOL_RENAME;
1110
1111 if (!(fattr->valid & NFS_ATTR_FATTR)) {
1112 error = ctx->nfs_mod->rpc_ops->getattr(server, ctx->mntfh,
1113 fattr, NULL);
1114 if (error < 0) {
1115 dprintk("nfs_create_server: getattr error = %d\n", -error);
1116 goto error;
1117 }
1118 }
1119 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid));
1120
1121 dprintk("Server FSID: %llx:%llx\n",
1122 (unsigned long long) server->fsid.major,
1123 (unsigned long long) server->fsid.minor);
1124
1125 nfs_server_insert_lists(server);
1126 server->mount_time = jiffies;
1127 nfs_free_fattr(fattr);
1128 return server;
1129
1130 error:
1131 nfs_free_fattr(fattr);
1132 nfs_free_server(server);
1133 return ERR_PTR(error);
1134 }
1135 EXPORT_SYMBOL_GPL(nfs_create_server);
1136
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-04-28 1:53 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-27 23:01 [PATCH] NFS: Avoid flushing data while holding directory locks in nfs_rename() trondmy
2025-04-28 1:53 ` kernel test robot [this message]
2025-04-28 2:35 ` kernel test robot
2025-04-29 16:14 ` Chuck Lever
2025-04-29 16:54 ` Jeff Layton
2025-04-29 23:22 ` Trond Myklebust
2025-04-30 13:28 ` Chuck Lever
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202504280902.aKsSfRfW-lkp@intel.com \
--to=lkp@intel.com \
--cc=anna@kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=trondmy@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.