Hi Theodore, I love your patch! Yet something to improve: [auto build test ERROR on akpm-mm/mm-everything] url: https://github.com/intel-lab-lkp/linux/commits/Theodore-Ts-o/mm-shmem-add-support-for-FS_IOC_-SG-ETFLAGS-for-tmpfs/20220713-225257 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything config: um-i386_defconfig (https://download.01.org/0day-ci/archive/20220715/202207150754.j4ldkYik-lkp@xxxxxxxxx/config) compiler: gcc-11 (Debian 11.3.0-3) 11.3.0 reproduce (this is a W=1 build): # https://github.com/intel-lab-lkp/linux/commit/2a3164ac6dafb6c7a3cd8a1002e89370eec359c1 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Theodore-Ts-o/mm-shmem-add-support-for-FS_IOC_-SG-ETFLAGS-for-tmpfs/20220713-225257 git checkout 2a3164ac6dafb6c7a3cd8a1002e89370eec359c1 # save the config file mkdir build_dir && cp config build_dir/.config make W=1 O=build_dir ARCH=um SUBARCH=i386 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All error/warnings (new ones prefixed by >>): mm/shmem.c: In function 'shmem_getattr': >> mm/shmem.c:1062:29: error: 'EXT2_APPEND_FL' undeclared (first use in this function); did you mean 'FS_APPEND_FL'? 1062 | if (info->fsflags & EXT2_APPEND_FL) | ^~~~~~~~~~~~~~ | FS_APPEND_FL mm/shmem.c:1062:29: note: each undeclared identifier is reported only once for each function it appears in >> mm/shmem.c:1064:29: error: 'EXT2_IMMUTABLE_FL' undeclared (first use in this function); did you mean 'FS_IMMUTABLE_FL'? 1064 | if (info->fsflags & EXT2_IMMUTABLE_FL) | ^~~~~~~~~~~~~~~~~ | FS_IMMUTABLE_FL >> mm/shmem.c:1066:29: error: 'EXT2_NODUMP_FL' undeclared (first use in this function); did you mean 'FS_NODUMP_FL'? 1066 | if (info->fsflags & EXT2_NODUMP_FL) | ^~~~~~~~~~~~~~ | FS_NODUMP_FL mm/shmem.c: At top level: >> mm/shmem.c:2840:5: warning: no previous prototype for 'shmem_fileattr_get' [-Wmissing-prototypes] 2840 | int shmem_fileattr_get(struct dentry *dentry, struct fileattr *fa) | ^~~~~~~~~~~~~~~~~~ >> mm/shmem.c:2851:5: warning: no previous prototype for 'shmem_fileattr_set' [-Wmissing-prototypes] 2851 | int shmem_fileattr_set(struct user_namespace *mnt_userns, | ^~~~~~~~~~~~~~~~~~ vim +1062 mm/shmem.c 1049 1050 static int shmem_getattr(struct user_namespace *mnt_userns, 1051 const struct path *path, struct kstat *stat, 1052 u32 request_mask, unsigned int query_flags) 1053 { 1054 struct inode *inode = path->dentry->d_inode; 1055 struct shmem_inode_info *info = SHMEM_I(inode); 1056 1057 if (info->alloced - info->swapped != inode->i_mapping->nrpages) { 1058 spin_lock_irq(&info->lock); 1059 shmem_recalc_inode(inode); 1060 spin_unlock_irq(&info->lock); 1061 } > 1062 if (info->fsflags & EXT2_APPEND_FL) 1063 stat->attributes |= STATX_ATTR_APPEND; > 1064 if (info->fsflags & EXT2_IMMUTABLE_FL) 1065 stat->attributes |= STATX_ATTR_IMMUTABLE; > 1066 if (info->fsflags & EXT2_NODUMP_FL) 1067 stat->attributes |= STATX_ATTR_NODUMP; 1068 stat->attributes_mask |= (STATX_ATTR_APPEND | 1069 STATX_ATTR_IMMUTABLE | 1070 STATX_ATTR_NODUMP); 1071 generic_fillattr(&init_user_ns, inode, stat); 1072 1073 if (shmem_is_huge(NULL, inode, 0)) 1074 stat->blksize = HPAGE_PMD_SIZE; 1075 1076 if (request_mask & STATX_BTIME) { 1077 stat->result_mask |= STATX_BTIME; 1078 stat->btime.tv_sec = info->i_crtime.tv_sec; 1079 stat->btime.tv_nsec = info->i_crtime.tv_nsec; 1080 } 1081 1082 return 0; 1083 } 1084 -- 0-DAY CI Kernel Test Service https://01.org/lkp