[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201811060912.8bLhSeIK%fengguang.wu@intel.com>
Date: Tue, 6 Nov 2018 09:05:22 +0800
From: kbuild test robot <lkp@...el.com>
To: Mark Salyzyn <salyzyn@...roid.com>
Cc: kbuild-all@...org, linux-kernel@...r.kernel.org,
Mark Salyzyn <salyzyn@...roid.com>,
Miklos Szeredi <miklos@...redi.hu>,
Jonathan Corbet <corbet@....net>,
Vivek Goyal <vgoyal@...hat.com>,
"Eric W . Biederman" <ebiederm@...ssion.com>,
Amir Goldstein <amir73il@...il.com>,
Randy Dunlap <rdunlap@...radead.org>,
Stephen Smalley <sds@...ho.nsa.gov>,
linux-unionfs@...r.kernel.org, linux-doc@...r.kernel.org,
kernel-team@...roid.com
Subject: Re: [PATCH v6 1/2] overlayfs: check CAP_DAC_READ_SEARCH before
issuing exportfs_decode_fh
Hi Mark,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on miklos-vfs/overlayfs-next]
[also build test ERROR on v4.20-rc1 next-20181105]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Mark-Salyzyn/overlayfs-check-CAP_DAC_READ_SEARCH-before-issuing-exportfs_decode_fh/20181106-073038
base: https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-next
config: i386-randconfig-x002-201844 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
fs/overlayfs/namei.c: In function 'ovl_decode_real_fh':
>> fs/overlayfs/namei.c:167:3: error: 'origin' undeclared (first use in this function); did you mean 'orig_ist'?
origin = ERR_PTR(-EPERM);
^~~~~~
orig_ist
fs/overlayfs/namei.c:167:3: note: each undeclared identifier is reported only once for each function it appears in
>> fs/overlayfs/namei.c:168:3: error: label 'out' used but not defined
goto out;
^~~~
vim +167 fs/overlayfs/namei.c
152
153 struct dentry *ovl_decode_real_fh(struct ovl_fh *fh, struct vfsmount *mnt,
154 bool connected)
155 {
156 struct dentry *real;
157 int bytes;
158
159 /*
160 * Make sure that the stored uuid matches the uuid of the lower
161 * layer where file handle will be decoded.
162 */
163 if (!uuid_equal(&fh->uuid, &mnt->mnt_sb->s_uuid))
164 return NULL;
165
166 if (!capable(CAP_DAC_READ_SEARCH)) {
> 167 origin = ERR_PTR(-EPERM);
> 168 goto out;
169 }
170
171 bytes = (fh->len - offsetof(struct ovl_fh, fid));
172 real = exportfs_decode_fh(mnt, (struct fid *)fh->fid,
173 bytes >> 2, (int)fh->type,
174 connected ? ovl_acceptable : NULL, mnt);
175 if (IS_ERR(real)) {
176 /*
177 * Treat stale file handle to lower file as "origin unknown".
178 * upper file handle could become stale when upper file is
179 * unlinked and this information is needed to handle stale
180 * index entries correctly.
181 */
182 if (real == ERR_PTR(-ESTALE) &&
183 !(fh->flags & OVL_FH_FLAG_PATH_UPPER))
184 real = NULL;
185 return real;
186 }
187
188 if (ovl_dentry_weird(real)) {
189 dput(real);
190 return NULL;
191 }
192
193 return real;
194 }
195
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (32369 bytes)
Powered by blists - more mailing lists