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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox