* Re: [PATCH 3/3] NFS: Initialise verifiers for visible dentries in _nfs4_open_and_get_state
[not found] <4c4b51c67f7b38e4df4cb389007058e37ade0d14.1763560328.git.trond.myklebust@hammerspace.com>
@ 2025-11-20 10:47 ` kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-11-20 10:47 UTC (permalink / raw)
To: Trond Myklebust, Michael Stoler; +Cc: llvm, oe-kbuild-all, linux-nfs
Hi Trond,
kernel test robot noticed the following build warnings:
[auto build test WARNING on trondmy-nfs/linux-next]
[also build test WARNING on linus/master v6.18-rc6 next-20251119]
[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/Trond-Myklebust/NFS-Initialise-verifiers-for-visible-dentries-in-readdir-and-lookup/20251119-222523
base: git://git.linux-nfs.org/projects/trondmy/linux-nfs.git linux-next
patch link: https://lore.kernel.org/r/4c4b51c67f7b38e4df4cb389007058e37ade0d14.1763560328.git.trond.myklebust%40hammerspace.com
patch subject: [PATCH 3/3] NFS: Initialise verifiers for visible dentries in _nfs4_open_and_get_state
config: hexagon-randconfig-6002-20251120 (https://download.01.org/0day-ci/archive/20251120/202511201835.LXbDRKN5-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 9e9fe08b16ea2c4d9867fb4974edf2a3776d6ece)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251120/202511201835.LXbDRKN5-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/202511201835.LXbDRKN5-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> fs/nfs/nfs4proc.c:3188:19: warning: variable 'dentry' is uninitialized when used here [-Wuninitialized]
3188 | nfs_set_verifier(dentry, dir_verifier);
| ^~~~~~
fs/nfs/nfs4proc.c:3152:23: note: initialize the variable 'dentry' to silence this warning
3152 | struct dentry *dentry;
| ^
| = NULL
1 warning generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for OF_GPIO
Depends on [n]: GPIOLIB [=y] && OF [=n] && HAS_IOMEM [=y]
Selected by [y]:
- GPIO_TB10X [=y] && GPIOLIB [=y] && HAS_IOMEM [=y] && (ARC_PLAT_TB10X || COMPILE_TEST [=y])
WARNING: unmet direct dependencies detected for MFD_STMFX
Depends on [n]: HAS_IOMEM [=y] && I2C [=y] && OF [=n]
Selected by [y]:
- PINCTRL_STMFX [=y] && PINCTRL [=y] && I2C [=y] && OF_GPIO [=y] && HAS_IOMEM [=y]
WARNING: unmet direct dependencies detected for GPIO_SYSCON
Depends on [n]: GPIOLIB [=y] && HAS_IOMEM [=y] && MFD_SYSCON [=y] && OF [=n]
Selected by [y]:
- GPIO_SAMA5D2_PIOBU [=y] && GPIOLIB [=y] && HAS_IOMEM [=y] && MFD_SYSCON [=y] && OF_GPIO [=y] && (ARCH_AT91 || COMPILE_TEST [=y])
vim +/dentry +3188 fs/nfs/nfs4proc.c
aa53ed541a1fec Jeff Layton 2007-06-05 3146
c21443c2c792cd Trond Myklebust 2013-02-07 3147 static int _nfs4_open_and_get_state(struct nfs4_opendata *opendata,
d564d2c4c2445c ChenXiaoSong 2022-09-23 3148 struct nfs_open_context *ctx)
c21443c2c792cd Trond Myklebust 2013-02-07 3149 {
c21443c2c792cd Trond Myklebust 2013-02-07 3150 struct nfs4_state_owner *sp = opendata->owner;
c21443c2c792cd Trond Myklebust 2013-02-07 3151 struct nfs_server *server = sp->so_server;
275bb307865a31 Trond Myklebust 2013-05-29 3152 struct dentry *dentry;
c21443c2c792cd Trond Myklebust 2013-02-07 3153 struct nfs4_state *state;
1bf85d8c987564 Trond Myklebust 2019-06-27 3154 fmode_t acc_mode = _nfs4_ctx_to_accessmode(ctx);
cf5b4059ba7197 Trond Myklebust 2020-02-05 3155 struct inode *dir = d_inode(opendata->dir);
cf5b4059ba7197 Trond Myklebust 2020-02-05 3156 unsigned long dir_verifier;
c21443c2c792cd Trond Myklebust 2013-02-07 3157 int ret;
c21443c2c792cd Trond Myklebust 2013-02-07 3158
cf5b4059ba7197 Trond Myklebust 2020-02-05 3159 dir_verifier = nfs_save_change_attribute(dir);
c21443c2c792cd Trond Myklebust 2013-02-07 3160
3b65a30df9b3f1 Fred Isaman 2016-09-19 3161 ret = _nfs4_proc_open(opendata, ctx);
dca780016dab84 Trond Myklebust 2014-10-23 3162 if (ret != 0)
c21443c2c792cd Trond Myklebust 2013-02-07 3163 goto out;
c21443c2c792cd Trond Myklebust 2013-02-07 3164
ae55e59da0e401 Trond Myklebust 2018-05-22 3165 state = _nfs4_opendata_to_nfs4_state(opendata);
c21443c2c792cd Trond Myklebust 2013-02-07 3166 ret = PTR_ERR(state);
c21443c2c792cd Trond Myklebust 2013-02-07 3167 if (IS_ERR(state))
c21443c2c792cd Trond Myklebust 2013-02-07 3168 goto out;
a974deee477af8 Trond Myklebust 2017-02-08 3169 ctx->state = state;
c21443c2c792cd Trond Myklebust 2013-02-07 3170 if (server->caps & NFS_CAP_POSIX_LOCK)
c21443c2c792cd Trond Myklebust 2013-02-07 3171 set_bit(NFS_STATE_POSIX_LOCKS, &state->flags);
a8ce377a5db8d3 Jeff Layton 2016-09-17 3172 if (opendata->o_res.rflags & NFS4_OPEN_RESULT_MAY_NOTIFY_LOCK)
a8ce377a5db8d3 Jeff Layton 2016-09-17 3173 set_bit(NFS_STATE_MAY_NOTIFY_LOCK, &state->flags);
43245eca6e670e Olga Kornievskaia 2022-02-02 3174 if (opendata->o_res.rflags & NFS4_OPEN_RESULT_PRESERVE_UNLINKED)
43245eca6e670e Olga Kornievskaia 2022-02-02 3175 set_bit(NFS_INO_PRESERVE_UNLINKED, &NFS_I(state->inode)->flags);
c21443c2c792cd Trond Myklebust 2013-02-07 3176
cf5b4059ba7197 Trond Myklebust 2020-02-05 3177 switch(opendata->o_arg.claim) {
cf5b4059ba7197 Trond Myklebust 2020-02-05 3178 default:
cf5b4059ba7197 Trond Myklebust 2020-02-05 3179 break;
cf5b4059ba7197 Trond Myklebust 2020-02-05 3180 case NFS4_OPEN_CLAIM_NULL:
cf5b4059ba7197 Trond Myklebust 2020-02-05 3181 case NFS4_OPEN_CLAIM_DELEGATE_CUR:
cf5b4059ba7197 Trond Myklebust 2020-02-05 3182 case NFS4_OPEN_CLAIM_DELEGATE_PREV:
cf5b4059ba7197 Trond Myklebust 2020-02-05 3183 if (!opendata->rpc_done)
cf5b4059ba7197 Trond Myklebust 2020-02-05 3184 break;
820620516993c1 Trond Myklebust 2024-06-16 3185 if (opendata->o_res.delegation.type != 0)
cf5b4059ba7197 Trond Myklebust 2020-02-05 3186 dir_verifier = nfs_save_change_attribute(dir);
26573137bc0af6 Trond Myklebust 2025-11-19 3187 }
cf5b4059ba7197 Trond Myklebust 2020-02-05 @3188 nfs_set_verifier(dentry, dir_verifier);
26573137bc0af6 Trond Myklebust 2025-11-19 3189
26573137bc0af6 Trond Myklebust 2025-11-19 3190 dentry = opendata->dentry;
26573137bc0af6 Trond Myklebust 2025-11-19 3191 if (d_really_is_negative(dentry)) {
26573137bc0af6 Trond Myklebust 2025-11-19 3192 struct dentry *alias;
26573137bc0af6 Trond Myklebust 2025-11-19 3193 d_drop(dentry);
26573137bc0af6 Trond Myklebust 2025-11-19 3194 alias = d_splice_alias(igrab(state->inode), dentry);
26573137bc0af6 Trond Myklebust 2025-11-19 3195 /* d_splice_alias() can't fail here - it's a non-directory */
26573137bc0af6 Trond Myklebust 2025-11-19 3196 if (alias) {
26573137bc0af6 Trond Myklebust 2025-11-19 3197 dput(ctx->dentry);
26573137bc0af6 Trond Myklebust 2025-11-19 3198 nfs_set_verifier(alias, dir_verifier);
26573137bc0af6 Trond Myklebust 2025-11-19 3199 ctx->dentry = dentry = alias;
26573137bc0af6 Trond Myklebust 2025-11-19 3200 }
275bb307865a31 Trond Myklebust 2013-05-29 3201 }
275bb307865a31 Trond Myklebust 2013-05-29 3202
af9b6d7570ca9a Trond Myklebust 2018-06-29 3203 /* Parse layoutget results before we check for access */
af9b6d7570ca9a Trond Myklebust 2018-06-29 3204 pnfs_parse_lgopen(state->inode, opendata->lgp, ctx);
af9b6d7570ca9a Trond Myklebust 2018-06-29 3205
d564d2c4c2445c ChenXiaoSong 2022-09-23 3206 ret = nfs4_opendata_access(sp->so_cred, opendata, state, acc_mode);
c21443c2c792cd Trond Myklebust 2013-02-07 3207 if (ret != 0)
c21443c2c792cd Trond Myklebust 2013-02-07 3208 goto out;
c21443c2c792cd Trond Myklebust 2013-02-07 3209
0460253913e50a Trond Myklebust 2024-02-24 3210 if (d_inode(dentry) == state->inode)
c45ffdd2696130 Trond Myklebust 2013-05-29 3211 nfs_inode_attach_open_context(ctx);
2409a976a2990e Fred Isaman 2016-10-06 3212
c21443c2c792cd Trond Myklebust 2013-02-07 3213 out:
2135e5d56278ff Trond Myklebust 2022-08-02 3214 if (!opendata->cancelled) {
6949493884fe88 Trond Myklebust 2022-05-14 3215 if (opendata->lgp) {
6949493884fe88 Trond Myklebust 2022-05-14 3216 nfs4_lgopen_release(opendata->lgp);
6949493884fe88 Trond Myklebust 2022-05-14 3217 opendata->lgp = NULL;
6949493884fe88 Trond Myklebust 2022-05-14 3218 }
ae55e59da0e401 Trond Myklebust 2018-05-22 3219 nfs4_sequence_free_slot(&opendata->o_res.seq_res);
2135e5d56278ff Trond Myklebust 2022-08-02 3220 }
c21443c2c792cd Trond Myklebust 2013-02-07 3221 return ret;
c21443c2c792cd Trond Myklebust 2013-02-07 3222 }
c21443c2c792cd Trond Myklebust 2013-02-07 3223
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread