Hi Pradeep,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on fuse/for-next]
[also build test ERROR on v5.9-rc1 next-20200820]
[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]
url:
https://github.com/0day-ci/linux/commits/Pradeep-P-V-K/fuse-Fix-VM_BUG_ON...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git for-next
config: x86_64-randconfig-a003-20200820 (attached as .config)
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project
4deda57106f7c9b982a49cb907c33e3966c8de7f)
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
> fs/fuse/dev.c:955:11: error: no member named 'ff' in
'struct fuse_req'
if (req->ff)
~~~ ^
fs/fuse/dev.c:956:19: error: no member named 'ff' in 'struct fuse_req'
spin_lock(&req->ff->fc->lock);
~~~ ^
fs/fuse/dev.c:968:11: error: no member named 'ff' in 'struct fuse_req'
if (req->ff)
~~~ ^
fs/fuse/dev.c:969:21: error: no member named 'ff' in 'struct fuse_req'
spin_unlock(&req->ff->fc->lock);
~~~ ^
4 errors generated.
#
https://github.com/0day-ci/linux/commit/776d24e60b6fdfbd88fc0cf0bf0485929...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Pradeep-P-V-K/fuse-Fix-VM_BUG_ON_PAGE-issue-while-accessing-zero-ref-count-page/20200821-005756
git checkout 776d24e60b6fdfbd88fc0cf0bf04859293d42bd6
vim +955 fs/fuse/dev.c
945
946 /* Copy pages in the request to/from userspace buffer */
947 static int fuse_copy_pages(struct fuse_copy_state *cs, unsigned nbytes,
948 int zeroing)
949 {
950 unsigned i;
951 int err = 0;
952 struct fuse_req *req = cs->req;
953 struct fuse_args_pages *ap = container_of(req->args, typeof(*ap), args);
954
955 if (req->ff)
956 spin_lock(&req->ff->fc->lock);
957 for (i = 0; i < ap->num_pages && (nbytes || zeroing); i++) {
958 unsigned int offset = ap->descs[i].offset;
959 unsigned int count = min(nbytes, ap->descs[i].length);
960
961 err = fuse_copy_page(cs, &ap->pages[i], offset, count, zeroing);
962 if (err)
963 goto err;
964
965 nbytes -= count;
966 }
967 err:
968 if (req->ff)
969 spin_unlock(&req->ff->fc->lock);
970 return err;
971 }
972
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org