[apparmor] [PATCH 04/13] Apparmor: Use simple_start_creating() / simple_done_creating()

kernel test robot lkp at intel.com
Wed Feb 4 10:58:08 UTC 2026


Hi NeilBrown,

kernel test robot noticed the following build warnings:

[auto build test WARNING on brauner-vfs/vfs.all]
[also build test WARNING on viro-vfs/for-next linus/master v6.19-rc8 next-20260203]
[cannot apply to pcmoore-selinux/next]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/NeilBrown/fs-proc-Don-t-lock-root-inode-when-creating-self-and-thread-self/20260204-131659
base:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git vfs.all
patch link:    https://lore.kernel.org/r/20260204050726.177283-5-neilb%40ownmail.net
patch subject: [PATCH 04/13] Apparmor: Use simple_start_creating() / simple_done_creating()
config: arm-randconfig-r133-20260204 (https://download.01.org/0day-ci/archive/20260204/202602041851.x2RfFgKO-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260204/202602041851.x2RfFgKO-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202602041851.x2RfFgKO-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> security/apparmor/apparmorfs.c:295:16: sparse: sparse: Using plain integer as NULL pointer

vim +295 security/apparmor/apparmorfs.c

   247	
   248	/**
   249	 * aafs_create - create a dentry in the apparmorfs filesystem
   250	 *
   251	 * @name: name of dentry to create
   252	 * @mode: permissions the file should have
   253	 * @parent: parent directory for this dentry
   254	 * @data: data to store on inode.i_private, available in open()
   255	 * @link: if symlink, symlink target string
   256	 * @fops: struct file_operations that should be used for
   257	 * @iops: struct of inode_operations that should be used
   258	 *
   259	 * This is the basic "create a xxx" function for apparmorfs.
   260	 *
   261	 * Returns a pointer to a dentry if it succeeds, that must be free with
   262	 * aafs_remove(). Will return ERR_PTR on failure.
   263	 */
   264	static struct dentry *aafs_create(const char *name, umode_t mode,
   265					  struct dentry *parent, void *data, void *link,
   266					  const struct file_operations *fops,
   267					  const struct inode_operations *iops)
   268	{
   269		struct dentry *dentry;
   270		struct inode *dir;
   271		int error;
   272	
   273		AA_BUG(!name);
   274		AA_BUG(!parent);
   275	
   276		if (!(mode & S_IFMT))
   277			mode = (mode & S_IALLUGO) | S_IFREG;
   278	
   279		error = simple_pin_fs(&aafs_ops, &aafs_mnt, &aafs_count);
   280		if (error)
   281			return ERR_PTR(error);
   282	
   283		dir = d_inode(parent);
   284	
   285		dentry = simple_start_creating(parent, name);
   286		if (IS_ERR(dentry)) {
   287			error = PTR_ERR(dentry);
   288			goto fail;
   289		}
   290	
   291		error = __aafs_setup_d_inode(dir, dentry, mode, data, link, fops, iops);
   292		simple_done_creating(dentry);
   293		if (error)
   294			goto fail;
 > 295		return 0;
   296	fail:
   297		simple_release_fs(&aafs_mnt, &aafs_count);
   298		return ERR_PTR(error);
   299	}
   300	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki



More information about the AppArmor mailing list