tree: https://github.com/ammarfaizi2/linux-block brauner/linux/fs.acl.rework head: 6d56d354d97c08df55b4c06e1f45903f000b7c7c commit: 315e66cfbf872ae0bba0451a60d76fc703b96144 [22/37] evm: add post set acl hook config: s390-randconfig-r044-20220922 compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 791a7ae1ba3efd6bca96338e10ffde557ba83920) 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 s390 cross compiling tool for clang build # apt-get install binutils-s390x-linux-gnu # https://github.com/ammarfaizi2/linux-block/commit/315e66cfbf872ae0bba0451a60d76fc703b96144 git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block git fetch --no-tags ammarfaizi2-block brauner/linux/fs.acl.rework git checkout 315e66cfbf872ae0bba0451a60d76fc703b96144 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=s390 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All errors (new ones prefixed by >>): >> fs/posix_acl.c:1356:44: error: too many arguments to function call, expected 2, have 3 evm_inode_post_set_acl(dentry, acl_name, kacl); ~~~~~~~~~~~~~~~~~~~~~~ ^~~~ include/linux/evm.h:127:20: note: 'evm_inode_post_set_acl' declared here static inline void evm_inode_post_set_acl(struct dentry *dentry, ^ 1 error generated. vim +1356 fs/posix_acl.c 1291 1292 /** 1293 * vfs_set_acl - set posix acls 1294 * @mnt_userns: user namespace of the mount 1295 * @dentry: the dentry based on which to set the posix acls 1296 * @acl_name: the name of the posix acl 1297 * @kacl: the posix acls in the appropriate VFS format 1298 * 1299 * This function sets @kacl. The caller must all posix_acl_release() on @kacl 1300 * afterwards. 1301 * 1302 * Return: On success 0, on error negative errno. 1303 */ 1304 int vfs_set_acl(struct user_namespace *mnt_userns, struct dentry *dentry, 1305 const char *acl_name, struct posix_acl *kacl) 1306 { 1307 int acl_type; 1308 int error; 1309 struct inode *inode = d_inode(dentry); 1310 struct inode *delegated_inode = NULL; 1311 1312 acl_type = posix_acl_type(acl_name); 1313 if (acl_type < 0) 1314 return -EINVAL; 1315 1316 if (kacl) { 1317 /* 1318 * If we're on an idmapped mount translate from mount specific 1319 * vfs{g,u}id_t into global filesystem k{g,u}id_t so. 1320 * Afterwards we can cache the POSIX ACLs filesystem wide and - 1321 * if this is a filesystem with a backing store - translate 1322 * them to backing store values. 1323 */ 1324 error = vfs_set_acl_idmapped_mnt(mnt_userns, i_user_ns(inode), kacl); 1325 if (error) 1326 return error; 1327 } 1328 1329 retry_deleg: 1330 inode_lock(inode); 1331 1332 /* 1333 * We only care about restrictions the inode struct itself places upon 1334 * us otherwise POSIX ACLs aren't subject to any VFS restrictions. 1335 */ 1336 error = xattr_permission(mnt_userns, inode, acl_name, MAY_WRITE); 1337 if (error) 1338 goto out_inode_unlock; 1339 1340 error = security_inode_set_acl(mnt_userns, dentry, acl_name, kacl); 1341 if (error) 1342 goto out_inode_unlock; 1343 1344 error = try_break_deleg(inode, &delegated_inode); 1345 if (error) 1346 goto out_inode_unlock; 1347 1348 if (inode->i_opflags & IOP_XATTR) 1349 error = set_posix_acl(mnt_userns, dentry, acl_type, kacl); 1350 else if (unlikely(is_bad_inode(inode))) 1351 error = -EIO; 1352 else 1353 error = -EOPNOTSUPP; 1354 if (!error) { 1355 fsnotify_xattr(dentry); > 1356 evm_inode_post_set_acl(dentry, acl_name, kacl); -- 0-DAY CI Kernel Test Service https://01.org/lkp