[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