[packages/kernel] - update aufs from upstream aufs7.x-rcN branch

baggins baggins at pld-linux.org
Sat Jun 20 23:32:28 CEST 2026


commit 8482740aa0c56a5a7b91b9c26b9843b3c1433a01
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sat Jun 20 23:31:39 2026 +0200

    - update aufs from upstream aufs7.x-rcN branch

 kernel-aufs.patch | 347 ++++++++++++++++++++++++++++++++++++++----------------
 update-source.sh  |   4 +-
 2 files changed, 248 insertions(+), 103 deletions(-)
---
diff --git a/kernel-aufs.patch b/kernel-aufs.patch
index 50b240d6..435f952a 100644
--- a/kernel-aufs.patch
+++ b/kernel-aufs.patch
@@ -1743,7 +1743,7 @@ diff -urN /usr/share/empty/fs/aufs/aufs.h linux/fs/aufs/aufs.h
 +#endif /* __AUFS_H__ */
 diff -urN /usr/share/empty/fs/aufs/branch.c linux/fs/aufs/branch.c
 --- /usr/share/empty/fs/aufs/branch.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/branch.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/branch.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1412 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -2471,7 +2471,7 @@ diff -urN /usr/share/empty/fs/aufs/branch.c linux/fs/aufs/branch.c
 +		    && au_h_iptr(i, bindex)
 +		    && au_test_ibusy(i, btop, bbot)) {
 +			err = -EBUSY;
-+			AuVerbose(verbose, "busy i%lu\n", i->i_ino);
++			AuVerbose(verbose, "busy i%llu\n", i->i_ino);
 +			AuDbgInode(i);
 +		}
 +		ii_read_unlock(i);
@@ -3569,7 +3569,7 @@ diff -urN /usr/share/empty/fs/aufs/conf.mk linux/fs/aufs/conf.mk
 +-include ${srctree}/${src}/conf_priv.mk
 diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 --- /usr/share/empty/fs/aufs/cpup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/cpup.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/cpup.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1439 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -4394,7 +4394,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 +	if (dst_inode) {
 +		if (unlikely(!plink)) {
 +			err = -EIO;
-+			AuIOErr("hi%lu(i%lu) exists on b%d "
++			AuIOErr("hi%llu(i%llu) exists on b%d "
 +				"but plink is disabled\n",
 +				dst_inode->i_ino, inode->i_ino, cpg->bdst);
 +			goto out_mnt_write;
@@ -4409,7 +4409,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 +				goto out_mnt_write;
 +			if (unlikely(d_is_negative(h_src))) {
 +				err = -EIO;
-+				AuIOErr("i%lu exists on b%d "
++				AuIOErr("i%llu exists on b%d "
 +					"but not pseudo-linked\n",
 +					inode->i_ino, cpg->bdst);
 +				dput(h_src);
@@ -6010,7 +6010,7 @@ diff -urN /usr/share/empty/fs/aufs/dcsub.h linux/fs/aufs/dcsub.h
 +#endif /* __AUFS_DCSUB_H__ */
 diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 --- /usr/share/empty/fs/aufs/debug.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/debug.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/debug.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,435 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -6129,7 +6129,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 +	}
 +
 +	ctime = inode_get_ctime(inode);
-+	dpri("i%d: %p, i%lu, %s, cnt %d, nl %u?, 0%o, sz %llu, blk %llu,"
++	dpri("i%d: %p, i%llu, %s, cnt %d, nl %u?, 0%o, sz %llu, blk %llu,"
 +	     " acl %p, def_acl %p,"
 +	     " hn %d, ct %lld, np %lu, st 0x%x, f 0x%x, v %llu, g %x%s%.*s\n",
 +	     bindex, inode,
@@ -6174,7 +6174,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 +	struct dentry *d;
 +
 +	spin_lock(&inode->i_lock);
-+	hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias)
++	for_each_alias(d, inode)
 +		au_dpri_dentry(d);
 +	spin_unlock(&inode->i_lock);
 +}
@@ -6666,7 +6666,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.h linux/fs/aufs/debug.h
 +#endif /* __AUFS_DEBUG_H__ */
 diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
 --- /usr/share/empty/fs/aufs/dentry.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dentry.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/dentry.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1217 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -6743,7 +6743,7 @@ diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
 +		 /* && h_inode */
 +		 && !au_dr_lkup_h_ino(args, bindex, h_inode->i_ino)) {
 +		AuDbg("b%d %pd ignored hi%llu\n", bindex, h_dentry,
-+		      (unsigned long long)h_inode->i_ino);
++		      h_inode->i_ino);
 +		goto out_neg;
 +	}
 +
@@ -6974,7 +6974,7 @@ diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
 +
 +/* subset of struct inode */
 +struct au_iattr {
-+	unsigned long		i_ino;
++	u64			i_ino;
 +	/* unsigned int		i_nlink; */
 +	kuid_t			i_uid;
 +	kgid_t			i_gid;
@@ -9578,7 +9578,7 @@ diff -urN /usr/share/empty/fs/aufs/dir.h linux/fs/aufs/dir.h
 +#endif /* __AUFS_DIR_H__ */
 diff -urN /usr/share/empty/fs/aufs/dirren.c linux/fs/aufs/dirren.c
 --- /usr/share/empty/fs/aufs/dirren.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dirren.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/dirren.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1294 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -10008,7 +10008,7 @@ diff -urN /usr/share/empty/fs/aufs/dirren.c linux/fs/aufs/dirren.c
 +	AuDebugOn(err > sz);
 +	p += err;
 +	sz -= err;
-+	err = snprintf(p, sz, "_%llu", (unsigned long long)h_inode->i_ino);
++	err = snprintf(p, sz, "_%llu", h_inode->i_ino);
 +	AuDebugOn(err > sz);
 +	p += err;
 +	sz -= err;
@@ -11430,7 +11430,7 @@ diff -urN /usr/share/empty/fs/aufs/dynop.h linux/fs/aufs/dynop.h
 +#endif /* __AUFS_DYNOP_H__ */
 diff -urN /usr/share/empty/fs/aufs/export.c linux/fs/aufs/export.c
 --- /usr/share/empty/fs/aufs/export.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/export.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/export.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,816 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -11663,7 +11663,7 @@ diff -urN /usr/share/empty/fs/aufs/export.c linux/fs/aufs/export.c
 +		dentry = d_find_alias(inode);
 +	else {
 +		spin_lock(&inode->i_lock);
-+		hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) {
++		for_each_alias(d, inode) {
 +			spin_lock(&d->d_lock);
 +			if (!au_test_anon(d)
 +			    && d_inode(d->d_parent)->i_ino == dir_ino) {
@@ -14745,8 +14745,8 @@ diff -urN /usr/share/empty/fs/aufs/f_op.c linux/fs/aufs/f_op.c
 +};
 diff -urN /usr/share/empty/fs/aufs/fsctx.c linux/fs/aufs/fsctx.c
 --- /usr/share/empty/fs/aufs/fsctx.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/fsctx.c	2026-05-13 01:29:20.693332780 +0200
-@@ -0,0 +1,1232 @@
++++ linux/fs/aufs/fsctx.c	2026-06-20 09:58:16.176588071 +0200
+@@ -0,0 +1,1234 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2022-2026 Junjiro R. Okajima
@@ -15080,6 +15080,8 @@ diff -urN /usr/share/empty/fs/aufs/fsctx.c linux/fs/aufs/fsctx.c
 +
 +/* ---------------------------------------------------------------------- */
 +
++#define fsparam_path(NAME, OPT)	__fsparam(fs_param_is_string, NAME, OPT, 0, NULL)
++
 +/*
 + * For conditionally compiled mount options.
 + * Instead of fsparam_flag_no(), use this macro to distinguish ignore_silent.
@@ -16779,7 +16781,7 @@ diff -urN /usr/share/empty/fs/aufs/hfsplus.c linux/fs/aufs/hfsplus.c
 +}
 diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
 --- /usr/share/empty/fs/aufs/hnotify.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hnotify.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/hnotify.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,702 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -16977,7 +16979,7 @@ diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
 +		AuDebugOn(!name);
 +		au_iigen_dec(inode);
 +		spin_lock(&inode->i_lock);
-+		hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) {
++		for_each_alias(d, inode) {
 +			spin_lock(&d->d_lock);
 +			dname = &d->d_name;
 +			if (dname->len != nlen
@@ -17212,7 +17214,7 @@ diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
 +	AuDebugOn(!a->h_dir);
 +	AuDebugOn(!a->dir);
 +	AuDebugOn(!a->mask);
-+	AuDbg("mask 0x%x, i%lu, hi%lu, hci%lu\n",
++	AuDbg("mask 0x%x, i%llu, hi%llu, hci%llu\n",
 +	      a->mask, a->dir->i_ino, a->h_dir->i_ino,
 +	      a->h_child_inode ? a->h_child_inode->i_ino : 0);
 +
@@ -17764,7 +17766,7 @@ diff -urN /usr/share/empty/fs/aufs/iinfo.c linux/fs/aufs/iinfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/inode.c linux/fs/aufs/inode.c
 --- /usr/share/empty/fs/aufs/inode.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/inode.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/inode.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,520 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -18166,7 +18168,7 @@ diff -urN /usr/share/empty/fs/aufs/inode.c linux/fs/aufs/inode.c
 +		}
 +	}
 +
-+	AuDbg("i%lu\n", (unsigned long)ino);
++	AuDbg("i%llu\n", (unsigned long long)ino);
 +	inode = au_iget_locked(sb, ino);
 +	err = PTR_ERR(inode);
 +	if (IS_ERR(inode))
@@ -18220,9 +18222,9 @@ diff -urN /usr/share/empty/fs/aufs/inode.c linux/fs/aufs/inode.c
 +
 +	if (unlikely(au_test_fs_unique_ino(h_inode)))
 +		AuWarn1("Warning: Un-notified UDBA or repeatedly renamed dir,"
-+			" b%d, %s, %pd, hi%lu, i%lu.\n",
++			" b%d, %s, %pd, hi%llu, i%llu.\n",
 +			btop, au_sbtype(h_dentry->d_sb), dentry,
-+			(unsigned long)h_ino, (unsigned long)ino);
++			(unsigned long long)h_ino, (unsigned long long)ino);
 +	ino = 0;
 +	err = au_xino_write(sb, btop, h_ino, /*ino*/0);
 +	if (!err) {
@@ -19219,7 +19221,7 @@ diff -urN /usr/share/empty/fs/aufs/ioctl.c linux/fs/aufs/ioctl.c
 +#endif
 diff -urN /usr/share/empty/fs/aufs/i_op_add.c linux/fs/aufs/i_op_add.c
 --- /usr/share/empty/fs/aufs/i_op_add.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op_add.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/i_op_add.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,943 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -19880,7 +19882,7 @@ diff -urN /usr/share/empty/fs/aufs/i_op_add.c linux/fs/aufs/i_op_add.c
 +					 &a->h_path);
 +			dput(h_src_dentry);
 +		} else {
-+			AuIOErr("no dentry found for hi%lu on b%d\n",
++			AuIOErr("no dentry found for hi%llu on b%d\n",
 +				h_inode->i_ino, a->bdst);
 +			err = -EIO;
 +		}
@@ -20166,7 +20168,7 @@ diff -urN /usr/share/empty/fs/aufs/i_op_add.c linux/fs/aufs/i_op_add.c
 +}
 diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 --- /usr/share/empty/fs/aufs/i_op.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/i_op.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1504 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -21580,8 +21582,8 @@ diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 +		 * communicating. If we copied it up, then the communication
 +		 * would be corrupted.
 +		 */
-+		AuWarn1("timestamps for i%lu are ignored "
-+			"since it is on readonly branch (hi%lu).\n",
++		AuWarn1("timestamps for i%llu are ignored "
++			"since it is on readonly branch (hi%llu).\n",
 +			inode->i_ino, h_inode->i_ino);
 +	} else if (type != FS_UPD_ATIME) {
 +		err = -EIO;
@@ -26600,7 +26602,7 @@ diff -urN /usr/share/empty/fs/aufs/opts.h linux/fs/aufs/opts.h
 +#endif /* __AUFS_OPTS_H__ */
 diff -urN /usr/share/empty/fs/aufs/plink.c linux/fs/aufs/plink.c
 --- /usr/share/empty/fs/aufs/plink.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/plink.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/plink.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,495 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -26741,7 +26743,7 @@ diff -urN /usr/share/empty/fs/aufs/plink.c linux/fs/aufs/plink.c
 +		hbl = sbinfo->si_plink + i;
 +		hlist_bl_lock(hbl);
 +		hlist_bl_for_each_entry(icntnr, pos, hbl, plink)
-+			AuDbg("%lu\n", icntnr->vfs_inode.i_ino);
++			AuDbg("%llu\n", icntnr->vfs_inode.i_ino);
 +		hlist_bl_unlock(hbl);
 +	}
 +}
@@ -26790,7 +26792,7 @@ diff -urN /usr/share/empty/fs/aufs/plink.c linux/fs/aufs/plink.c
 +	struct inode *h_inode;
 +
 +	h_inode = au_h_iptr(inode, bindex);
-+	rlen = snprintf(name, len, "%lu.%lu", inode->i_ino, h_inode->i_ino);
++	rlen = snprintf(name, len, "%llu.%llu", inode->i_ino, h_inode->i_ino);
 +	return rlen;
 +}
 +
@@ -28160,7 +28162,7 @@ diff -urN /usr/share/empty/fs/aufs/sbinfo.c linux/fs/aufs/sbinfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 --- /usr/share/empty/fs/aufs/super.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/super.c	2026-04-24 21:34:40.150886425 +0200
++++ linux/fs/aufs/super.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,858 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -28834,7 +28836,7 @@ diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 +			e = au_refresh_hinode_self(inode);
 +			if (unlikely(e)) {
 +				au_refresh_iop(inode, /*force_getattr*/1);
-+				pr_err("error %d, i%lu\n", e, inode->i_ino);
++				pr_err("error %d, i%llu\n", e, inode->i_ino);
 +				if (!err)
 +					err = e;
 +				/* go on even if err */
@@ -30325,7 +30327,7 @@ diff -urN /usr/share/empty/fs/aufs/sysrq.c linux/fs/aufs/sysrq.c
 +}
 diff -urN /usr/share/empty/fs/aufs/vdir.c linux/fs/aufs/vdir.c
 --- /usr/share/empty/fs/aufs/vdir.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vdir.c	2026-04-24 21:34:40.153340997 +0200
++++ linux/fs/aufs/vdir.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,883 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -31182,9 +31184,9 @@ diff -urN /usr/share/empty/fs/aufs/vdir.c linux/fs/aufs/vdir.c
 +		deblk_end.deblk += deblk_sz;
 +		while (!is_deblk_end(&vdir_cache->vd_last.p, &deblk_end)) {
 +			de = vdir_cache->vd_last.p.de;
-+			AuDbg("%.*s, off%lld, i%lu, dt%d\n",
++			AuDbg("%.*s, off%lld, i%llu, dt%d\n",
 +			      de->de_str.len, de->de_str.name, ctx->pos,
-+			      (unsigned long)de->de_ino, de->de_type);
++			      (unsigned long long)de->de_ino, de->de_type);
 +			if (unlikely(!dir_emit(ctx, de->de_str.name,
 +					       de->de_str.len, de->de_ino,
 +					       de->de_type))) {
@@ -35448,7 +35450,7 @@ diff -urN /usr/share/empty/fs/aufs/xattr.c linux/fs/aufs/xattr.c
 +}
 diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 --- /usr/share/empty/fs/aufs/xino.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/xino.c	2026-04-24 21:34:40.153340997 +0200
++++ linux/fs/aufs/xino.c	2026-06-20 09:58:16.176588071 +0200
 @@ -0,0 +1,1913 @@
 +// SPDX-License-Identifier: GPL-2.0
 +/*
@@ -37179,7 +37181,7 @@ diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 +	pindex = sbinfo->si_xib_last_pindex;
 +	mutex_unlock(&sbinfo->si_xib_mtx);
 +	ino = xib_calc_ino(pindex, free_bit);
-+	AuDbg("i%lu\n", (unsigned long)ino);
++	AuDbg("i%llu\n", (unsigned long long)ino);
 +	return ino;
 +out_err:
 +	mutex_unlock(&sbinfo->si_xib_mtx);
@@ -37365,8 +37367,8 @@ diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 +}
 diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/linux/aufs_type.h
 --- /usr/share/empty/include/uapi/linux/aufs_type.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/include/uapi/linux/aufs_type.h	2026-06-07 14:19:27.412733782 +0200
-@@ -0,0 +1,439 @@
++++ linux/include/uapi/linux/aufs_type.h	2026-06-20 09:58:16.176588071 +0200
+@@ -0,0 +1,434 @@
 +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
 +/*
 + * Copyright (C) 2005-2026 Junjiro R. Okajima
@@ -37396,7 +37398,7 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +#include <limits.h>
 +#endif /* __KERNEL__ */
 +
-+#define AUFS_VERSION	"7.0-20260525"
++#define AUFS_VERSION	"7.x-rcN-20260525"
 +
 +/* todo? move this to linux-2.6.19/include/magic.h */
 +#define AUFS_SUPER_MAGIC	('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
@@ -37610,13 +37612,8 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +
 +/* borrowed from linux/include/linux/kernel.h */
 +#ifndef ALIGN
-+#ifdef _GNU_SOURCE
-+#define ALIGN(x, a)		__ALIGN_MASK(x, (typeof(x))(a)-1)
-+#else
 +#define ALIGN(x, a)		(((x) + (a) - 1) & ~((a) - 1))
 +#endif
-+#define __ALIGN_MASK(x, mask)	(((x)+(mask))&~(mask))
-+#endif
 +
 +/* borrowed from linux/include/linux/compiler-gcc3.h */
 +#ifndef __aligned
@@ -37807,13 +37804,13 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +
 +#endif /* __AUFS_TYPE_H__ */
 SPDX-License-Identifier: GPL-2.0
-aufs7.0 kbuild patch
+aufs7.x-rcN kbuild patch
 
 diff --git a/fs/Kconfig b/fs/Kconfig
-index 0bfdaecaa8775..22d84f31397cb 100644
+index 43cb06de297ff..2ee4a03843dbc 100644
 --- a/fs/Kconfig
 +++ b/fs/Kconfig
-@@ -332,6 +332,7 @@ source "fs/pstore/Kconfig"
+@@ -333,6 +333,7 @@ source "fs/pstore/Kconfig"
  source "fs/ufs/Kconfig"
  source "fs/erofs/Kconfig"
  source "fs/vboxsf/Kconfig"
@@ -37822,22 +37819,22 @@ index 0bfdaecaa8775..22d84f31397cb 100644
  endif # MISC_FILESYSTEMS
  
 diff --git a/fs/Makefile b/fs/Makefile
-index cf4a745e96798..31a5a0fb7fae5 100644
+index ae1b07f9c6a0c..a2d17bc51a7a4 100644
 --- a/fs/Makefile
 +++ b/fs/Makefile
-@@ -129,3 +129,4 @@ obj-$(CONFIG_VBOXSF_FS)		+= vboxsf/
+@@ -130,3 +130,4 @@ obj-$(CONFIG_VBOXSF_FS)		+= vboxsf/
  obj-$(CONFIG_ZONEFS_FS)		+= zonefs/
  obj-$(CONFIG_BPF_LSM)		+= bpf_fs_kfuncs.o
  obj-$(CONFIG_RESCTRL_FS)	+= resctrl/
 +obj-$(CONFIG_AUFS_FS)		+= aufs/
 SPDX-License-Identifier: GPL-2.0
-aufs7.0 base patch
+aufs7.x-rcN base patch
 
 diff --git a/MAINTAINERS b/MAINTAINERS
-index d1cc0e12fe1f0..7a33d5b80baa0 100644
+index c2c6d79275c6e..17da34936613d 100644
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -4231,6 +4231,19 @@ F:	kernel/audit*
+@@ -4249,6 +4249,19 @@ F:	kernel/audit*
  F:	lib/*audit.c
  K:	\baudit_[a-z_0-9]\+\b
  
@@ -37894,10 +37891,10 @@ index 0000913f7efcc..f016a310ca460 100644
  
  static ssize_t loop_attr_show(struct device *dev, char *page,
 diff --git a/fs/dcache.c b/fs/dcache.c
-index 7ba1801d81329..79b9f1a239d6e 100644
+index 2c61aeea41f45..fa77362b92bc3 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
-@@ -1311,6 +1311,10 @@ enum d_walk_ret {
+@@ -1359,6 +1359,10 @@ enum d_walk_ret {
  	D_WALK_SKIP,
  };
  
@@ -37908,7 +37905,7 @@ index 7ba1801d81329..79b9f1a239d6e 100644
  /**
   * d_walk - walk the dentry tree
   * @parent:	start of walk
-@@ -1319,7 +1323,7 @@ enum d_walk_ret {
+@@ -1367,7 +1371,7 @@ enum d_walk_ret {
   *
   * The @enter() callbacks are called with d_lock held.
   */
@@ -37918,7 +37915,7 @@ index 7ba1801d81329..79b9f1a239d6e 100644
  {
  	struct dentry *this_parent, *dentry;
 diff --git a/fs/exec.c b/fs/exec.c
-index 9ea3a775d51e9..746e5fdab7b2a 100644
+index ba12b4c466f6d..b05e6fab20756 100644
 --- a/fs/exec.c
 +++ b/fs/exec.c
 @@ -777,6 +777,9 @@ static struct file *do_open_execat(int fd, struct filename *name, int flags)
@@ -37981,11 +37978,33 @@ index ae19e51365986..3725f6730b8e5 100644
  	CLASS(filename_flags, filename)(path,
  			 (flags & FSPICK_EMPTY_PATH) ? LOOKUP_EMPTY : 0);
  	ret = filename_lookup(dfd, filename, lookup_flags, &target, NULL);
+diff --git a/fs/namei.c b/fs/namei.c
+index c7fac83c9a85e..106ba5cffdf48 100644
+--- a/fs/namei.c
++++ b/fs/namei.c
+@@ -3781,7 +3781,7 @@ static struct dentry *lock_two_directories(struct dentry *p1, struct dentry *p2)
+ /*
+  * p1 and p2 should be directories on the same fs.
+  */
+-static struct dentry *lock_rename(struct dentry *p1, struct dentry *p2)
++struct dentry *lock_rename(struct dentry *p1, struct dentry *p2)
+ {
+ 	if (p1 == p2) {
+ 		inode_lock_nested(p1->d_inode, I_MUTEX_PARENT);
+@@ -3833,7 +3833,7 @@ static struct dentry *lock_rename_child(struct dentry *c1, struct dentry *p2)
+ 	return NULL;
+ }
+ 
+-static void unlock_rename(struct dentry *p1, struct dentry *p2)
++void unlock_rename(struct dentry *p1, struct dentry *p2)
+ {
+ 	inode_unlock(p1->d_inode);
+ 	if (p1 != p2) {
 diff --git a/fs/namespace.c b/fs/namespace.c
-index 854f4fc664697..f325581def786 100644
+index fe919abd2f011..87ced06314001 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
-@@ -3198,6 +3198,9 @@ static struct file *vfs_open_tree(int dfd, const char __user *filename, unsigned
+@@ -3207,6 +3207,9 @@ static struct file *vfs_open_tree(int dfd, const char __user *filename, unsigned
  		lookup_flags &= ~LOOKUP_AUTOMOUNT;
  	if (flags & AT_SYMLINK_NOFOLLOW)
  		lookup_flags &= ~LOOKUP_FOLLOW;
@@ -37995,7 +38014,7 @@ index 854f4fc664697..f325581def786 100644
  
  	/*
  	 * If we create a new mount namespace with the cloned mount tree we
-@@ -5120,6 +5123,9 @@ SYSCALL_DEFINE5(mount_setattr, int, dfd, const char __user *, path,
+@@ -5150,6 +5153,9 @@ SYSCALL_DEFINE5(mount_setattr, int, dfd, const char __user *, path,
  		lookup_flags &= ~LOOKUP_AUTOMOUNT;
  	if (flags & AT_SYMLINK_NOFOLLOW)
  		lookup_flags &= ~LOOKUP_FOLLOW;
@@ -38006,10 +38025,10 @@ index 854f4fc664697..f325581def786 100644
  	kattr = (struct mount_kattr) {
  		.lookup_flags	= lookup_flags,
 diff --git a/fs/open.c b/fs/open.c
-index 91f1139591abe..207d229a90699 100644
+index 681d405bc61eb..41c7e8f23c058 100644
 --- a/fs/open.c
 +++ b/fs/open.c
-@@ -478,6 +478,9 @@ static int do_faccessat(int dfd, const char __user *filename, int mode, int flag
+@@ -476,6 +476,9 @@ static int do_faccessat(int dfd, const char __user *filename, int mode, int flag
  
  	if (flags & AT_SYMLINK_NOFOLLOW)
  		lookup_flags &= ~LOOKUP_FOLLOW;
@@ -38019,7 +38038,7 @@ index 91f1139591abe..207d229a90699 100644
  
  	if (access_need_override_creds(flags)) {
  		old_cred = access_override_creds();
-@@ -677,6 +680,9 @@ static int do_fchmodat(int dfd, const char __user *filename, umode_t mode,
+@@ -675,6 +678,9 @@ static int do_fchmodat(int dfd, const char __user *filename, umode_t mode,
  		return -EINVAL;
  
  	lookup_flags = (flags & AT_SYMLINK_NOFOLLOW) ? 0 : LOOKUP_FOLLOW;
@@ -38029,7 +38048,7 @@ index 91f1139591abe..207d229a90699 100644
  	CLASS(filename_uflags, name)(filename, flags);
  retry:
  	error = filename_lookup(dfd, name, lookup_flags, &path, NULL);
-@@ -797,6 +803,9 @@ int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group,
+@@ -795,6 +801,9 @@ int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group,
  		return -EINVAL;
  
  	lookup_flags = (flag & AT_SYMLINK_NOFOLLOW) ? 0 : LOOKUP_FOLLOW;
@@ -38053,10 +38072,10 @@ index 9d8f63e2fd1ab..d2b70cb432d1d 100644
  {
  	if (unlikely(!out->f_op->splice_write))
 diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 8b3dd145b25ec..53a16e37ccba4 100644
+index 11559c513dfbb..391dfb0ca7719 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -1389,6 +1389,7 @@ extern void fasync_free(struct fasync_struct *);
+@@ -1390,6 +1390,7 @@ extern void fasync_free(struct fasync_struct *);
  /* can be called from interrupts */
  extern void kill_fasync(struct fasync_struct **, int, int);
  
@@ -38085,6 +38104,19 @@ index 621566345406d..24d2eca0dc1d0 100644
  /*
   * Acquire a lock.
   *
+diff --git a/include/linux/namei.h b/include/linux/namei.h
+index 2ad6dd9987b90..78ca5f08511ca 100644
+--- a/include/linux/namei.h
++++ b/include/linux/namei.h
+@@ -165,6 +165,8 @@ extern int follow_down_one(struct path *);
+ extern int follow_down(struct path *path, unsigned int flags);
+ extern int follow_up(struct path *);
+ 
++struct dentry *lock_rename(struct dentry *p1, struct dentry *p2);
++void unlock_rename(struct dentry *p1, struct dentry *p2);
+ int start_renaming(struct renamedata *rd, int lookup_flags,
+ 		   struct qstr *old_last, struct qstr *new_last);
+ int start_renaming_dentry(struct renamedata *rd, int lookup_flags,
 diff --git a/include/linux/splice.h b/include/linux/splice.h
 index 9dec4861d09f6..14583d8468640 100644
 --- a/include/linux/splice.h
@@ -38118,24 +38150,117 @@ index 2d4c5bab5af88..b720d966c7b92 100644
  
  #ifdef CONFIG_LOCK_STAT
  static DEFINE_PER_CPU(struct lock_class_stats[MAX_LOCKDEP_KEYS], cpu_lock_stats);
+diff --git a/usr/dummy-include/fcntl.h b/usr/dummy-include/fcntl.h
+new file mode 100644
+index 0000000000000..6c4bdc826c992
+--- /dev/null
++++ b/usr/dummy-include/fcntl.h
+@@ -0,0 +1,10 @@
++/* SPDX-License-Identifier: GPL-2.0-only */
++#ifndef _DUMMY_FCNTL_H
++#define _DUMMY_FCNTL_H
++
++#ifndef O_RDWR
++#define O_RDWR		00000002
++#endif
++extern int open(const char *__file, int __oflag, ...);
++
++#endif /* _DUMMY_FCNTL_H */
+diff --git a/usr/dummy-include/stdio.h b/usr/dummy-include/stdio.h
+new file mode 100644
+index 0000000000000..12e5fd19ba81f
+--- /dev/null
++++ b/usr/dummy-include/stdio.h
+@@ -0,0 +1,8 @@
++/* SPDX-License-Identifier: GPL-2.0-only */
++#ifndef _DUMMY_STDIO_H
++#define _DUMMY_STDIO_H
++
++extern int sprintf(char *__restrict __s,
++		   const char *__restrict __format, ...);
++
++#endif /* _DUMMY_STDIO_H */
+diff --git a/usr/dummy-include/sys/ioctl.h b/usr/dummy-include/sys/ioctl.h
+index e69de29bb2d1d..110121a746414 100644
+--- a/usr/dummy-include/sys/ioctl.h
++++ b/usr/dummy-include/sys/ioctl.h
+@@ -0,0 +1,38 @@
++/* SPDX-License-Identifier: GPL-2.0-only */
++#ifndef _DUMMY_SYS_IOCTL_H
++#define _DUMMY_SYS_IOCTL_H
++
++#define _IOC_NRBITS	8
++#define _IOC_TYPEBITS	8
++
++#ifndef _IOC_SIZEBITS
++# define _IOC_SIZEBITS	14
++#endif
++
++#define _IOC_NRSHIFT	0
++#define _IOC_TYPESHIFT	(_IOC_NRSHIFT+_IOC_NRBITS)
++#define _IOC_SIZESHIFT	(_IOC_TYPESHIFT+_IOC_TYPEBITS)
++#define _IOC_DIRSHIFT	(_IOC_SIZESHIFT+_IOC_SIZEBITS)
++
++#ifndef _IOC_WRITE
++# define _IOC_WRITE	1U
++#endif
++
++#ifndef _IOC_READ
++# define _IOC_READ	2U
++#endif
++
++#define _IOC(dir, type, nr, size) \
++	(((dir)  << _IOC_DIRSHIFT) | \
++	 ((type) << _IOC_TYPESHIFT) | \
++	 ((nr)   << _IOC_NRSHIFT) | \
++	 ((size) << _IOC_SIZESHIFT))
++
++#define _IOC_TYPECHECK(t) (sizeof(t))
++
++#define _IOW(type, nr, size)	_IOC(_IOC_WRITE, (type), (nr), (_IOC_TYPECHECK(size)))
++#define _IOWR(type, nr, size)	_IOC(_IOC_READ|_IOC_WRITE, (type), (nr), (_IOC_TYPECHECK(size)))
++
++extern int ioctl(int __fd, unsigned long __request, ...);
++
++#endif /* _DUMMY_SYS_IOCTL_H */
+diff --git a/usr/dummy-include/sys/stat.h b/usr/dummy-include/sys/stat.h
+new file mode 100644
+index 0000000000000..e69de29bb2d1d
+diff --git a/usr/dummy-include/unistd.h b/usr/dummy-include/unistd.h
+index e69de29bb2d1d..6a13344a3c126 100644
+--- a/usr/dummy-include/unistd.h
++++ b/usr/dummy-include/unistd.h
+@@ -0,0 +1,12 @@
++/* SPDX-License-Identifier: GPL-2.0-only */
++#ifndef _DUMMY_UNISTD_H
++#define _DUMMY_UNISTD_H
++
++# ifndef __pid_t_defined
++typedef int pid_t;
++#  define __pid_t_defined
++# endif
++
++extern int close(int __fd);
++
++#endif /* _DUMMY_UNISTD_H */
 diff --git a/usr/include/Makefile b/usr/include/Makefile
-index 6d86a53c6f0a3..37f8d2f7460e4 100644
+index ee69dd9d970e5..22ecfa69b9711 100644
 --- a/usr/include/Makefile
 +++ b/usr/include/Makefile
-@@ -134,6 +134,8 @@ uses-libc += linux/wireless.h
+@@ -145,6 +145,8 @@ uses-libc += linux/wireless.h
  uses-libc += regulator/regulator.h
  uses-libc += scsi/fc/fc_els.h
  
 +uses-libc += linux/aufs_type.h
 +
- ifeq ($(SRCARCH),hexagon)
+ ifeq ($(UAPI_ARCH),hexagon)
  uses-libc += asm/sigcontext.h
  endif
 SPDX-License-Identifier: GPL-2.0
-aufs7.0 mmap patch
+aufs7.x-rcN mmap patch
 
 diff --git a/fs/Makefile b/fs/Makefile
-index 31a5a0fb7fae5..3a6b76f1cce95 100644
+index a2d17bc51a7a4..2f446b8f9f61f 100644
 --- a/fs/Makefile
 +++ b/fs/Makefile
 @@ -18,6 +18,12 @@ obj-y :=	open.o read_write.o file_table.o super.o \
@@ -38217,7 +38342,7 @@ index 0000000000000..64c4d93ba9f50
 +}
 +EXPORT_SYMBOL_GPL(au_file_user_inode);
 diff --git a/fs/proc/base.c b/fs/proc/base.c
-index 4c863d17dfb4c..3b1e5276db400 100644
+index d9acfa89c894b..f3d4acf9ac6b6 100644
 --- a/fs/proc/base.c
 +++ b/fs/proc/base.c
 @@ -1788,8 +1788,8 @@ static int proc_exe_link(struct dentry *dentry, struct path *exe_path)
@@ -38258,10 +38383,10 @@ index d362919f4f688..79a2590d40f4d 100644
  		ino = inode->i_ino;
  		pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
 diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 53a16e37ccba4..518c6a8a746d7 100644
+index 391dfb0ca7719..f00a7f9efa825 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -2477,6 +2477,21 @@ struct file *dentry_create(struct path *path, int flags, umode_t mode,
+@@ -2491,6 +2491,21 @@ static inline void backing_file_set_security(struct file *f, void *security)
  }
  #endif /* CONFIG_SECURITY */
  
@@ -38283,7 +38408,7 @@ index 53a16e37ccba4..518c6a8a746d7 100644
  /*
   * When mmapping a file on a stackable filesystem (e.g., overlayfs), the file
   * stored in ->vm_file is a backing file whose f_inode is on the underlying
-@@ -2489,15 +2504,25 @@ const struct path *backing_file_user_path(const struct file *f);
+@@ -2503,15 +2518,25 @@ static inline void backing_file_set_security(struct file *f, void *security)
  /* Get the path to display in /proc/<pid>/maps */
  static inline const struct path *file_user_path(const struct file *f)
  {
@@ -38310,13 +38435,13 @@ index 53a16e37ccba4..518c6a8a746d7 100644
  }
  
 SPDX-License-Identifier: GPL-2.0
-aufs7.0 standalone patch
+aufs7.x-rcN standalone patch
 
 diff --git a/fs/dcache.c b/fs/dcache.c
-index 79b9f1a239d6e..2304ef273e3f9 100644
+index fa77362b92bc3..6155fe0eaa1f5 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
-@@ -1422,6 +1422,7 @@ void d_walk(struct dentry *parent, void *data,
+@@ -1470,6 +1470,7 @@ void d_walk(struct dentry *parent, void *data,
  	seq = 1;
  	goto again;
  }
@@ -38325,7 +38450,7 @@ index 79b9f1a239d6e..2304ef273e3f9 100644
  struct check_mount {
  	struct vfsmount *mnt;
 diff --git a/fs/exec.c b/fs/exec.c
-index 746e5fdab7b2a..4d936496b6315 100644
+index b05e6fab20756..8cab297c63b13 100644
 --- a/fs/exec.c
 +++ b/fs/exec.c
 @@ -120,6 +120,7 @@ bool path_noexec(const struct path *path)
@@ -38349,10 +38474,10 @@ index c9e5300ff82b8..92255e819fb08 100644
  /*
   * Allocate an file->f_owner struct if it doesn't exist, handling racing
 diff --git a/fs/file_table.c b/fs/file_table.c
-index aaa5faaace1e9..2619d87cb4a85 100644
+index 16e52e7fc2ace..2446dc5dc2df0 100644
 --- a/fs/file_table.c
 +++ b/fs/file_table.c
-@@ -256,6 +256,7 @@ struct file *alloc_empty_file(int flags, const struct cred *cred)
+@@ -281,6 +281,7 @@ struct file *alloc_empty_file(int flags, const struct cred *cred)
  	}
  	return ERR_PTR(-ENFILE);
  }
@@ -38360,11 +38485,31 @@ index aaa5faaace1e9..2619d87cb4a85 100644
  
  /*
   * Variant of alloc_empty_file() that doesn't check and modify nr_files.
+diff --git a/fs/namei.c b/fs/namei.c
+index 106ba5cffdf48..09fc6abab9c8d 100644
+--- a/fs/namei.c
++++ b/fs/namei.c
+@@ -3791,6 +3791,7 @@ struct dentry *lock_rename(struct dentry *p1, struct dentry *p2)
+ 	mutex_lock(&p1->d_sb->s_vfs_rename_mutex);
+ 	return lock_two_directories(p1, p2);
+ }
++EXPORT_SYMBOL_GPL(lock_rename);
+ 
+ /*
+  * c1 and p2 should be on the same fs.
+@@ -3841,6 +3842,7 @@ void unlock_rename(struct dentry *p1, struct dentry *p2)
+ 		mutex_unlock(&p1->d_sb->s_vfs_rename_mutex);
+ 	}
+ }
++EXPORT_SYMBOL_GPL(unlock_rename);
+ 
+ /**
+  * __start_renaming - lookup and lock names for rename
 diff --git a/fs/namespace.c b/fs/namespace.c
-index f325581def786..68a32452a3e4b 100644
+index 87ced06314001..b41fdccd95665 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
-@@ -6293,6 +6293,7 @@ bool our_mnt(struct vfsmount *mnt)
+@@ -6323,6 +6323,7 @@ bool our_mnt(struct vfsmount *mnt)
  {
  	return check_mnt(real_mount(mnt));
  }
@@ -38373,7 +38518,7 @@ index f325581def786..68a32452a3e4b 100644
  bool current_chrooted(void)
  {
 diff --git a/fs/notify/fsnotify.c b/fs/notify/fsnotify.c
-index 9995de1710e59..6c33ace511198 100644
+index 2dac70b99b0d7..12ec866be4883 100644
 --- a/fs/notify/fsnotify.c
 +++ b/fs/notify/fsnotify.c
 @@ -169,6 +169,11 @@ int fsnotify_pre_content(const struct path *path, const loff_t *ppos,
@@ -38401,7 +38546,7 @@ index b56d1c1d9644a..9e2d893a3371d 100644
  /*
   * Drop a reference to a group.  Free it if it's through.
 diff --git a/fs/open.c b/fs/open.c
-index 207d229a90699..1e2c9069d458c 100644
+index 41c7e8f23c058..f250652ba0794 100644
 --- a/fs/open.c
 +++ b/fs/open.c
 @@ -69,6 +69,7 @@ int do_truncate(struct mnt_idmap *idmap, struct dentry *dentry,
@@ -38445,10 +38590,10 @@ index d2b70cb432d1d..81deb01e8ec02 100644
  /*
   * Indicate to the caller that there was a premature EOF when reading from the
 diff --git a/fs/xattr.c b/fs/xattr.c
-index 3e49e612e1bad..5c15a7119eca3 100644
+index 09ecbaaa16608..4eb3a474304a5 100644
 --- a/fs/xattr.c
 +++ b/fs/xattr.c
-@@ -405,6 +405,7 @@ vfs_getxattr_alloc(struct mnt_idmap *idmap, struct dentry *dentry,
+@@ -423,6 +423,7 @@ vfs_getxattr_alloc(struct mnt_idmap *idmap, struct dentry *dentry,
  	*xattr_value = value;
  	return error;
  }
@@ -38478,10 +38623,10 @@ index 0f7519f8e7c93..96c8ae6270187 100644
  }
 +EXPORT_SYMBOL_GPL(task_work_run);
 diff --git a/security/security.c b/security/security.c
-index a26c1474e2e49..2f19df6314041 100644
+index 4e999f0236516..8fd4da7c55768 100644
 --- a/security/security.c
 +++ b/security/security.c
-@@ -1406,6 +1406,7 @@ void security_path_post_mknod(struct mnt_idmap *idmap, struct dentry *dentry)
+@@ -1431,6 +1431,7 @@ void security_path_post_mknod(struct mnt_idmap *idmap, struct dentry *dentry)
  		return;
  	call_void_hook(path_post_mknod, idmap, dentry);
  }
@@ -38489,7 +38634,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_mkdir() - Check if creating a new directory is allowed
-@@ -1441,6 +1442,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
+@@ -1466,6 +1467,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
  		return 0;
  	return call_int_hook(path_rmdir, dir, dentry);
  }
@@ -38497,7 +38642,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_unlink() - Check if removing a hard link is allowed
-@@ -1476,6 +1478,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
+@@ -1501,6 +1503,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
  		return 0;
  	return call_int_hook(path_symlink, dir, dentry, old_name);
  }
@@ -38505,7 +38650,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_link - Check if creating a hard link is allowed
-@@ -1494,6 +1497,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
+@@ -1519,6 +1522,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
  		return 0;
  	return call_int_hook(path_link, old_dentry, new_dir, new_dentry);
  }
@@ -38513,7 +38658,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_rename() - Check if renaming a file is allowed
-@@ -1555,6 +1559,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
+@@ -1580,6 +1584,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
  		return 0;
  	return call_int_hook(path_chmod, path, mode);
  }
@@ -38521,7 +38666,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_chown() - Check if changing the file's owner/group is allowed
-@@ -1572,6 +1577,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
+@@ -1597,6 +1602,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
  		return 0;
  	return call_int_hook(path_chown, path, uid, gid);
  }
@@ -38529,7 +38674,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_path_chroot() - Check if changing the root directory is allowed
-@@ -1816,6 +1822,7 @@ int security_inode_permission(struct inode *inode, int mask)
+@@ -1841,6 +1847,7 @@ int security_inode_permission(struct inode *inode, int mask)
  		return 0;
  	return call_int_hook(inode_permission, inode, mask);
  }
@@ -38537,7 +38682,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_inode_setattr() - Check if setting file attributes is allowed
-@@ -2366,6 +2373,7 @@ int security_file_permission(struct file *file, int mask)
+@@ -2391,6 +2398,7 @@ int security_file_permission(struct file *file, int mask)
  {
  	return call_int_hook(file_permission, file, mask);
  }
@@ -38545,7 +38690,7 @@ index a26c1474e2e49..2f19df6314041 100644
  
  /**
   * security_file_alloc() - Allocate and init a file's LSM blob
-@@ -2668,6 +2676,7 @@ int security_file_truncate(struct file *file)
+@@ -2770,6 +2778,7 @@ int security_file_truncate(struct file *file)
  {
  	return call_int_hook(file_truncate, file);
  }
@@ -38554,7 +38699,7 @@ index a26c1474e2e49..2f19df6314041 100644
  /**
   * security_task_alloc() - Allocate a task's LSM blob
 SPDX-License-Identifier: GPL-2.0
-aufs7.0 loopback patch
+aufs7.x-rcN loopback patch
 
 diff --git a/drivers/block/loop.c b/drivers/block/loop.c
 index f016a310ca460..403de57f05174 100644
@@ -38763,7 +38908,7 @@ index 9c732a84586b3..82d28e85434fa 100644
  
  #endif /* __KERNEL__ */
 diff --git a/fs/aufs/super.c b/fs/aufs/super.c
-index e3243187beb6f..41e0bcb2d92c4 100644
+index 58ce8047f5573..6010f687f4d96 100644
 --- a/fs/aufs/super.c
 +++ b/fs/aufs/super.c
 @@ -757,7 +757,10 @@ const struct super_operations aufs_sop = {
diff --git a/update-source.sh b/update-source.sh
index 99581d63..595bff1b 100755
--- a/update-source.sh
+++ b/update-source.sh
@@ -1,8 +1,8 @@
 #!/bin/sh
 set -xe
 
-BRANCH=aufs7.0
-#BRANCH=aufs7.x-rcN
+#BRANCH=aufs7.1
+BRANCH=aufs7.x-rcN
 
 # aufs7
 [ -d aufs-standalone ] || git clone https://github.com/sfjro/aufs-standalone.git
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/kernel.git/commitdiff/8482740aa0c56a5a7b91b9c26b9843b3c1433a01



More information about the pld-cvs-commit mailing list