Hi Eric,
FYI, the error/warning still remains.
tree:
https://android.googlesource.com/kernel/common upstream-f2fs-stable-linux-5.4.y
head: b85eb593dc0ffde2c8ae4e91485fc022841aa97f
commit: 0e764ea6471e002f101dd7726b6e97f0e55c2288 [665/703] ubifs: report correct st_size
for encrypted symlinks
config: x86_64-allmodconfig
(
https://download.01.org/0day-ci/archive/20220120/202201200700.LUVQAZXU-lk...)
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 upstream-f2fs-stable-linux-5.4.y
git checkout 0e764ea6471e002f101dd7726b6e97f0e55c2288
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash fs/ubifs/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
fs/ubifs/file.c: In function 'ubifs_symlink_getattr':
> fs/ubifs/file.c:1644:16: error: passing argument 1 of
'ubifs_getattr' from incompatible pointer type
[-Werror=incompatible-pointer-types]
1644 | ubifs_getattr(mnt_userns, path,
stat, request_mask, query_flags);
| ^~~~~~~~~~
| |
| struct user_namespace *
In file included from fs/ubifs/file.c:40:
fs/ubifs/ubifs.h:1997:38: note: expected 'const struct path *' but argument is
of type 'struct user_namespace *'
1997 | int ubifs_getattr(const struct path *path, struct kstat *stat,
| ~~~~~~~~~~~~~~~~~~~^~~~
fs/ubifs/file.c:1644:28: error: passing argument 2 of 'ubifs_getattr' from
incompatible pointer type [-Werror=incompatible-pointer-types]
1644 | ubifs_getattr(mnt_userns, path, stat, request_mask, query_flags);
| ^~~~
| |
| const struct path *
In file included from fs/ubifs/file.c:40:
fs/ubifs/ubifs.h:1997:58: note: expected 'struct kstat *' but argument is of
type 'const struct path *'
1997 | int ubifs_getattr(const struct path *path, struct kstat *stat,
| ~~~~~~~~~~~~~~^~~~
> fs/ubifs/file.c:1644:34: warning: passing argument 3 of
'ubifs_getattr' makes integer from pointer without a cast [-Wint-conversion]
1644 | ubifs_getattr(mnt_userns, path, stat, request_mask, query_flags);
| ^~~~
| |
| struct kstat *
In file included from fs/ubifs/file.c:40:
fs/ubifs/ubifs.h:1998:9: note: expected 'u32' {aka 'unsigned int'} but
argument is of type 'struct kstat *'
1998 | u32 request_mask, unsigned int flags);
| ~~~~^~~~~~~~~~~~
> fs/ubifs/file.c:1644:2: error: too many arguments to function
'ubifs_getattr'
1644 | ubifs_getattr(mnt_userns, path, stat,
request_mask, query_flags);
| ^~~~~~~~~~~~~
In file included from fs/ubifs/file.c:40:
fs/ubifs/ubifs.h:1997:5: note: declared here
1997 | int ubifs_getattr(const struct path *path, struct kstat *stat,
| ^~~~~~~~~~~~~
fs/ubifs/file.c: At top level:
> fs/ubifs/file.c:1676:17: error: initialization of 'int
(*)(const struct path *, struct kstat *, u32, unsigned int)' {aka 'int (*)(const
struct path *, struct kstat *, unsigned int, unsigned int)'} from incompatible
pointer type 'int (*)(struct user_namespace *, const struct path *, struct kstat *,
u32, unsigned int)' {aka 'int (*)(struct user_namespace *, const struct path *,
struct kstat *, unsigned int, unsigned int)'} [-Werror=incompatible-pointer-types]
1676 | .getattr = ubifs_symlink_getattr,
| ^~~~~~~~~~~~~~~~~~~~~
fs/ubifs/file.c:1676:17: note: (near initialization for
'ubifs_symlink_inode_operations.getattr')
cc1: some warnings being treated as errors
vim +/ubifs_getattr +1644 fs/ubifs/file.c
1639
1640 static int ubifs_symlink_getattr(struct user_namespace *mnt_userns,
1641 const struct path *path, struct kstat *stat,
1642 u32 request_mask, unsigned int query_flags)
1643 {
1644 ubifs_getattr(mnt_userns, path, stat, request_mask,
query_flags);
1645
1646 if (IS_ENCRYPTED(d_inode(path->dentry)))
1647 return fscrypt_symlink_getattr(path, stat);
1648 return 0;
1649 }
1650
1651 const struct address_space_operations ubifs_file_address_operations = {
1652 .readpage = ubifs_readpage,
1653 .writepage = ubifs_writepage,
1654 .write_begin = ubifs_write_begin,
1655 .write_end = ubifs_write_end,
1656 .invalidatepage = ubifs_invalidatepage,
1657 .set_page_dirty = ubifs_set_page_dirty,
1658 #ifdef CONFIG_MIGRATION
1659 .migratepage = ubifs_migrate_page,
1660 #endif
1661 .releasepage = ubifs_releasepage,
1662 };
1663
1664 const struct inode_operations ubifs_file_inode_operations = {
1665 .setattr = ubifs_setattr,
1666 .getattr = ubifs_getattr,
1667 #ifdef CONFIG_UBIFS_FS_XATTR
1668 .listxattr = ubifs_listxattr,
1669 #endif
1670 .update_time = ubifs_update_time,
1671 };
1672
1673 const struct inode_operations ubifs_symlink_inode_operations = {
1674 .get_link = ubifs_get_link,
1675 .setattr = ubifs_setattr,
1676 .getattr = ubifs_symlink_getattr,
1677 #ifdef
CONFIG_UBIFS_FS_XATTR
1678 .listxattr = ubifs_listxattr,
1679 #endif
1680 .update_time = ubifs_update_time,
1681 };
1682
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org