All of lore.kernel.org
 help / color / mirror / Atom feed
* [android-common:android-mainline-tracking 357/836] fs/incfs/format.c:86:25: error: passing argument 1 of 'notify_change' from incompatible pointer type
@ 2021-04-10 20:01 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-04-10 20:01 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 50908 bytes --]

tree:   https://android.googlesource.com/kernel/common android-mainline-tracking
head:   74f61c888eeeb9cbc57d44c61fafe32df9b3da51
commit: f2a64330429497063865c4a69cff003b698dbb91 [357/836] ANDROID: Initial commit of Incremental FS
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        git remote add android-common https://android.googlesource.com/kernel/common
        git fetch --no-tags android-common android-mainline-tracking
        git checkout f2a64330429497063865c4a69cff003b698dbb91
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

Note: the android-common/android-mainline-tracking HEAD 74f61c888eeeb9cbc57d44c61fafe32df9b3da51 builds fine.
      It only hurts bisectibility.

All errors (new ones prefixed by >>):

   fs/incfs/format.c: In function 'truncate_backing_file':
>> fs/incfs/format.c:86:25: error: passing argument 1 of 'notify_change' from incompatible pointer type [-Werror=incompatible-pointer-types]
      86 |  result = notify_change(dentry, &attr, NULL);
         |                         ^~~~~~
         |                         |
         |                         struct dentry *
   In file included from fs/incfs/format.c:5:
   include/linux/fs.h:2865:19: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
    2865 | int notify_change(struct user_namespace *, struct dentry *,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/format.c:86:33: error: passing argument 2 of 'notify_change' from incompatible pointer type [-Werror=incompatible-pointer-types]
      86 |  result = notify_change(dentry, &attr, NULL);
         |                                 ^~~~~
         |                                 |
         |                                 struct iattr *
   In file included from fs/incfs/format.c:5:
   include/linux/fs.h:2865:44: note: expected 'struct dentry *' but argument is of type 'struct iattr *'
    2865 | int notify_change(struct user_namespace *, struct dentry *,
         |                                            ^~~~~~~~~~~~~~~
>> fs/incfs/format.c:86:11: error: too few arguments to function 'notify_change'
      86 |  result = notify_change(dentry, &attr, NULL);
         |           ^~~~~~~~~~~~~
   In file included from fs/incfs/format.c:5:
   include/linux/fs.h:2865:5: note: declared here
    2865 | int notify_change(struct user_namespace *, struct dentry *,
         |     ^~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
>> fs/incfs/integrity.c:5:10: fatal error: crypto/sha.h: No such file or directory
       5 | #include <crypto/sha.h>
         |          ^~~~~~~~~~~~~~
   compilation terminated.
--
>> fs/incfs/vfs.c:101:11: error: initialization of 'int (*)(struct user_namespace *, struct inode *, struct dentry *, umode_t)' {aka 'int (*)(struct user_namespace *, struct inode *, struct dentry *, short unsigned int)'} from incompatible pointer type 'int (*)(struct inode *, struct dentry *, umode_t)' {aka 'int (*)(struct inode *, struct dentry *, short unsigned int)'} [-Werror=incompatible-pointer-types]
     101 |  .mkdir = dir_mkdir,
         |           ^~~~~~~~~
   fs/incfs/vfs.c:101:11: note: (near initialization for 'incfs_dir_inode_ops.mkdir')
>> fs/incfs/vfs.c:102:12: error: initialization of 'int (*)(struct user_namespace *, struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int)' from incompatible pointer type 'int (*)(struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int)' [-Werror=incompatible-pointer-types]
     102 |  .rename = dir_rename_wrap,
         |            ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:102:12: note: (near initialization for 'incfs_dir_inode_ops.rename')
   fs/incfs/vfs.c: In function 'read_size_attr':
>> fs/incfs/vfs.c:332:28: error: passing argument 1 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
     332 |  bytes_read = vfs_getxattr(backing_dentry, INCFS_XATTR_SIZE_NAME,
         |                            ^~~~~~~~~~~~~~
         |                            |
         |                            struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:22: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:19:
>> include/uapi/linux/incrementalfs.h:33:31: error: passing argument 2 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
      33 | #define INCFS_XATTR_SIZE_NAME (XATTR_USER_PREFIX "incfs.size")
         |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                               |
         |                               char *
   fs/incfs/vfs.c:332:44: note: in expansion of macro 'INCFS_XATTR_SIZE_NAME'
     332 |  bytes_read = vfs_getxattr(backing_dentry, INCFS_XATTR_SIZE_NAME,
         |                                            ^~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:47: note: expected 'struct dentry *' but argument is of type 'char *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                                               ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:333:25: warning: passing argument 4 of 'vfs_getxattr' makes pointer from integer without a cast [-Wint-conversion]
     333 |    (char *)&attr_value, sizeof(attr_value));
         |                         ^~~~~~~~~~~~~~~~~~
         |                         |
         |                         long unsigned int
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:54:8: note: expected 'void *' but argument is of type 'long unsigned int'
      54 |        void *, size_t);
         |        ^~~~~~
>> fs/incfs/vfs.c:332:15: error: too few arguments to function 'vfs_getxattr'
     332 |  bytes_read = vfs_getxattr(backing_dentry, INCFS_XATTR_SIZE_NAME,
         |               ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:9: note: declared here
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |         ^~~~~~~~~~~~
   fs/incfs/vfs.c: In function 'inode_set':
   fs/incfs/vfs.c:368:20: error: passing argument 1 of 'inode_init_owner' from incompatible pointer type [-Werror=incompatible-pointer-types]
     368 |   inode_init_owner(inode, NULL, backing_inode->i_mode);
         |                    ^~~~~
         |                    |
         |                    struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:46: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
   fs/incfs/vfs.c:368:46: warning: passing argument 3 of 'inode_init_owner' makes pointer from integer without a cast [-Wint-conversion]
     368 |   inode_init_owner(inode, NULL, backing_inode->i_mode);
         |                                 ~~~~~~~~~~~~~^~~~~~~~
         |                                              |
         |                                              umode_t {aka short unsigned int}
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1829:29: note: expected 'const struct inode *' but argument is of type 'umode_t' {aka 'short unsigned int'}
    1829 |         const struct inode *dir, umode_t mode);
         |         ~~~~~~~~~~~~~~~~~~~~^~~
   fs/incfs/vfs.c:368:3: error: too few arguments to function 'inode_init_owner'
     368 |   inode_init_owner(inode, NULL, backing_inode->i_mode);
         |   ^~~~~~~~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:6: note: declared here
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |      ^~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:411:20: error: passing argument 1 of 'inode_init_owner' from incompatible pointer type [-Werror=incompatible-pointer-types]
     411 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |                    ^~~~~
         |                    |
         |                    struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:46: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
   In file included from include/linux/stat.h:7,
                    from include/linux/fs.h:10,
                    from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/uapi/linux/stat.h:12:18: warning: passing argument 3 of 'inode_init_owner' makes pointer from integer without a cast [-Wint-conversion]
      12 | #define S_IFREG  0100000
   fs/incfs/vfs.c:411:33: note: in expansion of macro 'S_IFREG'
     411 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |                                 ^~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1829:29: note: expected 'const struct inode *' but argument is of type 'int'
    1829 |         const struct inode *dir, umode_t mode);
         |         ~~~~~~~~~~~~~~~~~~~~^~~
   fs/incfs/vfs.c:411:3: error: too few arguments to function 'inode_init_owner'
     411 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |   ^~~~~~~~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:6: note: declared here
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |      ^~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:426:20: error: passing argument 1 of 'inode_init_owner' from incompatible pointer type [-Werror=incompatible-pointer-types]
     426 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |                    ^~~~~
         |                    |
         |                    struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:46: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |                       ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
   In file included from include/linux/stat.h:7,
                    from include/linux/fs.h:10,
                    from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/uapi/linux/stat.h:12:18: warning: passing argument 3 of 'inode_init_owner' makes pointer from integer without a cast [-Wint-conversion]
      12 | #define S_IFREG  0100000
   fs/incfs/vfs.c:426:33: note: in expansion of macro 'S_IFREG'
     426 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |                                 ^~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1829:29: note: expected 'const struct inode *' but argument is of type 'int'
    1829 |         const struct inode *dir, umode_t mode);
         |         ~~~~~~~~~~~~~~~~~~~~^~~
   fs/incfs/vfs.c:426:3: error: too few arguments to function 'inode_init_owner'
     426 |   inode_init_owner(inode, NULL, S_IFREG | READ_WRITE_FILE_MODE);
         |   ^~~~~~~~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1828:6: note: declared here
    1828 | void inode_init_owner(struct user_namespace *mnt_userns, struct inode *inode,
         |      ^~~~~~~~~~~~~~~~
   fs/incfs/vfs.c: In function 'open_or_create_index_dir':
>> fs/incfs/vfs.c:773:18: error: passing argument 1 of 'vfs_mkdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
     773 |  err = vfs_mkdir(backing_inode, index_dentry, 0777);
         |                  ^~~~~~~~~~~~~
         |                  |
         |                  struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:15: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |               ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:773:33: error: passing argument 2 of 'vfs_mkdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
     773 |  err = vfs_mkdir(backing_inode, index_dentry, 0777);
         |                                 ^~~~~~~~~~~~
         |                                 |
         |                                 struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:40: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |                                        ^~~~~~~~~~~~~~
   fs/incfs/vfs.c:773:47: warning: passing argument 3 of 'vfs_mkdir' makes pointer from integer without a cast [-Wint-conversion]
     773 |  err = vfs_mkdir(backing_inode, index_dentry, 0777);
         |                                               ^~~~
         |                                               |
         |                                               int
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1774:8: note: expected 'struct dentry *' but argument is of type 'int'
    1774 |        struct dentry *, umode_t);
         |        ^~~~~~~~~~~~~~~
>> fs/incfs/vfs.c:773:8: error: too few arguments to function 'vfs_mkdir'
     773 |  err = vfs_mkdir(backing_inode, index_dentry, 0777);
         |        ^~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:5: note: declared here
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |     ^~~~~~~~~
   fs/incfs/vfs.c: In function 'incfs_link':
>> fs/incfs/vfs.c:1065:25: error: passing argument 2 of 'vfs_link' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1065 |  error = vfs_link(what, pinode, where, NULL);
         |                         ^~~~~~
         |                         |
         |                         struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1779:31: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1779 | int vfs_link(struct dentry *, struct user_namespace *, struct inode *,
         |                               ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1065:33: error: passing argument 3 of 'vfs_link' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1065 |  error = vfs_link(what, pinode, where, NULL);
         |                                 ^~~~~
         |                                 |
         |                                 struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1779:56: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1779 | int vfs_link(struct dentry *, struct user_namespace *, struct inode *,
         |                                                        ^~~~~~~~~~~~~~
>> fs/incfs/vfs.c:1065:10: error: too few arguments to function 'vfs_link'
    1065 |  error = vfs_link(what, pinode, where, NULL);
         |          ^~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1779:5: note: declared here
    1779 | int vfs_link(struct dentry *, struct user_namespace *, struct inode *,
         |     ^~~~~~~~
   fs/incfs/vfs.c: In function 'incfs_unlink':
>> fs/incfs/vfs.c:1079:21: error: passing argument 1 of 'vfs_unlink' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1079 |  error = vfs_unlink(pinode, dentry, NULL);
         |                     ^~~~~~
         |                     |
         |                     struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1782:16: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1782 | int vfs_unlink(struct user_namespace *, struct inode *, struct dentry *,
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1079:29: error: passing argument 2 of 'vfs_unlink' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1079 |  error = vfs_unlink(pinode, dentry, NULL);
         |                             ^~~~~~
         |                             |
         |                             struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1782:41: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1782 | int vfs_unlink(struct user_namespace *, struct inode *, struct dentry *,
         |                                         ^~~~~~~~~~~~~~
>> fs/incfs/vfs.c:1079:10: error: too few arguments to function 'vfs_unlink'
    1079 |  error = vfs_unlink(pinode, dentry, NULL);
         |          ^~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1782:5: note: declared here
    1782 | int vfs_unlink(struct user_namespace *, struct inode *, struct dentry *,
         |     ^~~~~~~~~~
   fs/incfs/vfs.c: In function 'incfs_rmdir':
>> fs/incfs/vfs.c:1093:20: error: passing argument 1 of 'vfs_rmdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1093 |  error = vfs_rmdir(pinode, dentry);
         |                    ^~~~~~
         |                    |
         |                    struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1781:15: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1781 | int vfs_rmdir(struct user_namespace *, struct inode *, struct dentry *);
         |               ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1093:28: error: passing argument 2 of 'vfs_rmdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1093 |  error = vfs_rmdir(pinode, dentry);
         |                            ^~~~~~
         |                            |
         |                            struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1781:40: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1781 | int vfs_rmdir(struct user_namespace *, struct inode *, struct dentry *);
         |                                        ^~~~~~~~~~~~~~
>> fs/incfs/vfs.c:1093:10: error: too few arguments to function 'vfs_rmdir'
    1093 |  error = vfs_rmdir(pinode, dentry);
         |          ^~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1781:5: note: declared here
    1781 | int vfs_rmdir(struct user_namespace *, struct inode *, struct dentry *);
         |     ^~~~~~~~~
   fs/incfs/vfs.c: In function 'dir_relative_path_resolve':
   fs/incfs/vfs.c:1132:2: error: implicit declaration of function 'ksys_close'; did you mean 'ksys_chown'? [-Werror=implicit-function-declaration]
    1132 |  ksys_close(dir_fd);
         |  ^~~~~~~~~~
         |  ksys_chown
   fs/incfs/vfs.c: In function 'ioctl_create_file':
   fs/incfs/vfs.c:1256:21: error: passing argument 1 of 'vfs_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1256 |  error = vfs_create(index_dir_inode, index_file_dentry,
         |                     ^~~~~~~~~~~~~~~
         |                     |
         |                     struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1771:16: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1771 | int vfs_create(struct user_namespace *, struct inode *,
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1256:38: error: passing argument 2 of 'vfs_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1256 |  error = vfs_create(index_dir_inode, index_file_dentry,
         |                                      ^~~~~~~~~~~~~~~~~
         |                                      |
         |                                      struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1771:41: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1771 | int vfs_create(struct user_namespace *, struct inode *,
         |                                         ^~~~~~~~~~~~~~
   fs/incfs/vfs.c:1257:8: warning: passing argument 3 of 'vfs_create' makes pointer from integer without a cast [-Wint-conversion]
    1257 |    args.mode, true);
         |    ~~~~^~~~~
         |        |
         |        __u16 {aka short unsigned int}
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1772:9: note: expected 'struct dentry *' but argument is of type '__u16' {aka 'short unsigned int'}
    1772 |         struct dentry *, umode_t, bool);
         |         ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1256:10: error: too few arguments to function 'vfs_create'
    1256 |  error = vfs_create(index_dir_inode, index_file_dentry,
         |          ^~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1771:5: note: declared here
    1771 | int vfs_create(struct user_namespace *, struct inode *,
         |     ^~~~~~~~~~
>> fs/incfs/vfs.c:1268:23: error: passing argument 1 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1268 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_ID_NAME,
         |                       ^~~~~~~~~~~~~~~~~
         |                       |
         |                       struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:18: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                  ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:19:
>> include/uapi/linux/incrementalfs.h:32:29: error: passing argument 2 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
      32 | #define INCFS_XATTR_ID_NAME (XATTR_USER_PREFIX "incfs.id")
         |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                             |
         |                             char *
   fs/incfs/vfs.c:1268:42: note: in expansion of macro 'INCFS_XATTR_ID_NAME'
    1268 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_ID_NAME,
         |                                          ^~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:43: note: expected 'struct dentry *' but argument is of type 'char *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                                           ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1269:16: warning: passing argument 4 of 'vfs_setxattr' makes pointer from integer without a cast [-Wint-conversion]
    1269 |   file_id_str, strlen(file_id_str), XATTR_CREATE);
         |                ^~~~~~~~~~~~~~~~~~~
         |                |
         |                size_t {aka long unsigned int}
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:64:4: note: expected 'const void *' but argument is of type 'size_t' {aka 'long unsigned int'}
      64 |    const void *, size_t, int);
         |    ^~~~~~~~~~~~
>> fs/incfs/vfs.c:1268:10: error: too few arguments to function 'vfs_setxattr'
    1268 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_ID_NAME,
         |          ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:5: note: declared here
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |     ^~~~~~~~~~~~
   fs/incfs/vfs.c:1277:23: error: passing argument 1 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1277 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_SIZE_NAME,
         |                       ^~~~~~~~~~~~~~~~~
         |                       |
         |                       struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:18: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                  ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:19:
   include/uapi/linux/incrementalfs.h:33:31: error: passing argument 2 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
      33 | #define INCFS_XATTR_SIZE_NAME (XATTR_USER_PREFIX "incfs.size")
         |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                               |
         |                               char *
   fs/incfs/vfs.c:1277:42: note: in expansion of macro 'INCFS_XATTR_SIZE_NAME'
    1277 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_SIZE_NAME,
         |                                          ^~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:43: note: expected 'struct dentry *' but argument is of type 'char *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                                           ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1278:29: warning: passing argument 4 of 'vfs_setxattr' makes pointer from integer without a cast [-Wint-conversion]
    1278 |   (char *)&size_attr_value, sizeof(size_attr_value),
         |                             ^~~~~~~~~~~~~~~~~~~~~~~
         |                             |
         |                             long unsigned int
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:64:4: note: expected 'const void *' but argument is of type 'long unsigned int'
      64 |    const void *, size_t, int);
         |    ^~~~~~~~~~~~
   fs/incfs/vfs.c:1277:10: error: too few arguments to function 'vfs_setxattr'
    1277 |  error = vfs_setxattr(index_file_dentry, INCFS_XATTR_SIZE_NAME,
         |          ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:5: note: declared here
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |     ^~~~~~~~~~~~
   fs/incfs/vfs.c:1311:24: error: passing argument 1 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1311 |   error = vfs_setxattr(index_file_dentry,
         |                        ^~~~~~~~~~~~~~~~~
         |                        |
         |                        struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:18: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                  ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:19:
   include/uapi/linux/incrementalfs.h:34:35: error: passing argument 2 of 'vfs_setxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
      34 | #define INCFS_XATTR_METADATA_NAME (XATTR_USER_PREFIX "incfs.metadata")
         |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                   |
         |                                   char *
   fs/incfs/vfs.c:1312:5: note: in expansion of macro 'INCFS_XATTR_METADATA_NAME'
    1312 |     INCFS_XATTR_METADATA_NAME,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:43: note: expected 'struct dentry *' but argument is of type 'char *'
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |                                           ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1313:21: warning: passing argument 4 of 'vfs_setxattr' makes pointer from integer without a cast [-Wint-conversion]
    1313 |     attr_value, args.file_attr_len,
         |                 ~~~~^~~~~~~~~~~~~~
         |                     |
         |                     __u32 {aka unsigned int}
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:64:4: note: expected 'const void *' but argument is of type '__u32' {aka 'unsigned int'}
      64 |    const void *, size_t, int);
         |    ^~~~~~~~~~~~
   fs/incfs/vfs.c:1311:11: error: too few arguments to function 'vfs_setxattr'
    1311 |   error = vfs_setxattr(index_file_dentry,
         |           ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:63:5: note: declared here
      63 | int vfs_setxattr(struct user_namespace *, struct dentry *, const char *,
         |     ^~~~~~~~~~~~
   fs/incfs/vfs.c: In function 'dir_mkdir':
   fs/incfs/vfs.c:1556:26: error: passing argument 1 of 'vfs_mkdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1556 |  err = vfs_mkdir(dir_node->n_backing_inode, backing_dentry, mode);
         |                  ~~~~~~~~^~~~~~~~~~~~~~~~~
         |                          |
         |                          struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:15: note: expected 'struct user_namespace *' but argument is of type 'struct inode *'
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |               ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1556:45: error: passing argument 2 of 'vfs_mkdir' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1556 |  err = vfs_mkdir(dir_node->n_backing_inode, backing_dentry, mode);
         |                                             ^~~~~~~~~~~~~~
         |                                             |
         |                                             struct dentry *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:40: note: expected 'struct inode *' but argument is of type 'struct dentry *'
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |                                        ^~~~~~~~~~~~~~
   fs/incfs/vfs.c:1556:61: warning: passing argument 3 of 'vfs_mkdir' makes pointer from integer without a cast [-Wint-conversion]
    1556 |  err = vfs_mkdir(dir_node->n_backing_inode, backing_dentry, mode);
         |                                                             ^~~~
         |                                                             |
         |                                                             umode_t {aka short unsigned int}
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1774:8: note: expected 'struct dentry *' but argument is of type 'umode_t' {aka 'short unsigned int'}
    1774 |        struct dentry *, umode_t);
         |        ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1556:8: error: too few arguments to function 'vfs_mkdir'
    1556 |  err = vfs_mkdir(dir_node->n_backing_inode, backing_dentry, mode);
         |        ^~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1773:5: note: declared here
    1773 | int vfs_mkdir(struct user_namespace *, struct inode *,
         |     ^~~~~~~~~
   fs/incfs/vfs.c: In function 'final_file_delete':
   fs/incfs/vfs.c:1595:27: error: passing argument 1 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1595 |  uuid_size = vfs_getxattr(backing_dentry, INCFS_XATTR_ID_NAME,
         |                           ^~~~~~~~~~~~~~
         |                           |
         |                           struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:22: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:19:
   include/uapi/linux/incrementalfs.h:32:29: error: passing argument 2 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
      32 | #define INCFS_XATTR_ID_NAME (XATTR_USER_PREFIX "incfs.id")
         |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                             |
         |                             char *
   fs/incfs/vfs.c:1595:43: note: in expansion of macro 'INCFS_XATTR_ID_NAME'
    1595 |  uuid_size = vfs_getxattr(backing_dentry, INCFS_XATTR_ID_NAME,
         |                                           ^~~~~~~~~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:47: note: expected 'struct dentry *' but argument is of type 'char *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                                               ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:1596:17: warning: passing argument 4 of 'vfs_getxattr' makes pointer from integer without a cast [-Wint-conversion]
    1596 |    file_id_str, 2 * sizeof(incfs_uuid_t));
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~
         |                 |
         |                 long unsigned int
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:54:8: note: expected 'void *' but argument is of type 'long unsigned int'
      54 |        void *, size_t);
         |        ^~~~~~
   fs/incfs/vfs.c:1595:14: error: too few arguments to function 'vfs_getxattr'
    1595 |  uuid_size = vfs_getxattr(backing_dentry, INCFS_XATTR_ID_NAME,
         |              ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:9: note: declared here
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |         ^~~~~~~~~~~~
   fs/incfs/vfs.c: In function 'dir_rename':
>> fs/incfs/vfs.c:1800:21: error: passing argument 1 of 'vfs_rename' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1800 |  error = vfs_rename(d_inode(backing_old_dir_dentry), backing_old_dentry,
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                     |
         |                     struct inode *
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1796:16: note: expected 'struct renamedata *' but argument is of type 'struct inode *'
    1796 | int vfs_rename(struct renamedata *);
         |                ^~~~~~~~~~~~~~~~~~~
>> fs/incfs/vfs.c:1800:10: error: too many arguments to function 'vfs_rename'
    1800 |  error = vfs_rename(d_inode(backing_old_dir_dentry), backing_old_dentry,
         |          ^~~~~~~~~~
   In file included from include/linux/huge_mm.h:8,
                    from include/linux/mm.h:707,
                    from include/linux/bvec.h:14,
                    from include/linux/blk_types.h:10,
                    from include/linux/genhd.h:19,
                    from include/linux/blkdev.h:8,
                    from fs/incfs/vfs.c:6:
   include/linux/fs.h:1796:5: note: declared here
    1796 | int vfs_rename(struct renamedata *);
         |     ^~~~~~~~~~
   fs/incfs/vfs.c: In function 'incfs_getxattr':
   fs/incfs/vfs.c:2044:38: error: passing argument 1 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    2044 |  return vfs_getxattr(di->backing_path.dentry, name, value, size);
         |                      ~~~~~~~~~~~~~~~~^~~~~~~
         |                                      |
         |                                      struct dentry *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:22: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~
   fs/incfs/vfs.c:2044:47: error: passing argument 2 of 'vfs_getxattr' from incompatible pointer type [-Werror=incompatible-pointer-types]
    2044 |  return vfs_getxattr(di->backing_path.dentry, name, value, size);
         |                                               ^~~~
         |                                               |
         |                                               const char *
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:47: note: expected 'struct dentry *' but argument is of type 'const char *'
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |                                               ^~~~~~~~~~~~~~~
   fs/incfs/vfs.c:2044:60: warning: passing argument 4 of 'vfs_getxattr' makes pointer from integer without a cast [-Wint-conversion]
    2044 |  return vfs_getxattr(di->backing_path.dentry, name, value, size);
         |                                                            ^~~~
         |                                                            |
         |                                                            size_t {aka long unsigned int}
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:54:8: note: expected 'void *' but argument is of type 'size_t' {aka 'long unsigned int'}
      54 |        void *, size_t);
         |        ^~~~~~
   fs/incfs/vfs.c:2044:9: error: too few arguments to function 'vfs_getxattr'
    2044 |  return vfs_getxattr(di->backing_path.dentry, name, value, size);
         |         ^~~~~~~~~~~~
   In file included from fs/incfs/vfs.c:17:
   include/linux/xattr.h:53:9: note: declared here
      53 | ssize_t vfs_getxattr(struct user_namespace *, struct dentry *, const char *,
         |         ^~~~~~~~~~~~
   fs/incfs/vfs.c: At top level:
   fs/incfs/vfs.c:2057:16: warning: no previous prototype for 'incfs_mount_fs' [-Wmissing-prototypes]
    2057 | struct dentry *incfs_mount_fs(struct file_system_type *type, int flags,
         |                ^~~~~~~~~~~~~~
   fs/incfs/vfs.c:2176:6: warning: no previous prototype for 'incfs_kill_sb' [-Wmissing-prototypes]
    2176 | void incfs_kill_sb(struct super_block *sb)
         |      ^~~~~~~~~~~~~
   fs/incfs/vfs.c: In function 'incfs_getxattr':
   fs/incfs/vfs.c:2045:1: error: control reaches end of non-void function [-Werror=return-type]
    2045 | }
         | ^
   cc1: some warnings being treated as errors


vim +/notify_change +86 fs/incfs/format.c

    51	
    52	/*
    53	 * Truncate the tail of the file to the given length.
    54	 * Used to rollback partially successful multistep writes.
    55	 */
    56	static int truncate_backing_file(struct backing_file_context *bfc,
    57					loff_t new_end)
    58	{
    59		struct inode *inode = NULL;
    60		struct dentry *dentry = NULL;
    61		loff_t old_end = 0;
    62		struct iattr attr;
    63		int result = 0;
    64	
    65		if (!bfc)
    66			return -EFAULT;
    67	
    68		LOCK_REQUIRED(bfc->bc_mutex);
    69	
    70		if (!bfc->bc_file)
    71			return -EFAULT;
    72	
    73		old_end = incfs_get_end_offset(bfc->bc_file);
    74		if (old_end == new_end)
    75			return 0;
    76		if (old_end < new_end)
    77			return -EINVAL;
    78	
    79		inode = bfc->bc_file->f_inode;
    80		dentry = bfc->bc_file->f_path.dentry;
    81	
    82		attr.ia_size = new_end;
    83		attr.ia_valid = ATTR_SIZE;
    84	
    85		inode_lock(inode);
  > 86		result = notify_change(dentry, &attr, NULL);
    87		inode_unlock(inode);
    88	
    89		return result;
    90	}
    91	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 65193 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-04-10 20:01 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-10 20:01 [android-common:android-mainline-tracking 357/836] fs/incfs/format.c:86:25: error: passing argument 1 of 'notify_change' from incompatible pointer type kernel test robot

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.