diff --git a/core/linux-armv7/0001-AUFS-fix-for-3.18.1.patch b/core/linux-armv7/0001-AUFS-fix-for-3.18.1.patch new file mode 100644 index 000000000..d94b704ba --- /dev/null +++ b/core/linux-armv7/0001-AUFS-fix-for-3.18.1.patch @@ -0,0 +1,86 @@ +From b4e9c2511bfe0eed13f7d0550241b60f6730d76a Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Thu, 18 Dec 2014 00:41:44 -0700 +Subject: [PATCH] AUFS fix for 3.18.1 + +Signed-off-by: Kevin Mihelich +--- + fs/aufs/dcsub.c | 4 ++-- + fs/aufs/debug.c | 2 +- + fs/aufs/export.c | 2 +- + fs/aufs/hnotify.c | 4 ++-- + 4 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/fs/aufs/dcsub.c b/fs/aufs/dcsub.c +index 9fbc218..04663e5 100644 +--- a/fs/aufs/dcsub.c ++++ b/fs/aufs/dcsub.c +@@ -134,7 +134,7 @@ resume: + while (next != &this_parent->d_subdirs) { + struct list_head *tmp = next; + struct dentry *dentry = list_entry(tmp, struct dentry, +- d_u.d_child); ++ d_child); + + next = tmp->next; + spin_lock_nested(&dentry->d_lock, DENTRY_D_LOCK_NESTED); +@@ -170,7 +170,7 @@ resume: + this_parent = tmp; + spin_lock(&this_parent->d_lock); + rcu_read_unlock(); +- next = child->d_u.d_child.next; ++ next = child->d_child.next; + goto resume; + } + +diff --git a/fs/aufs/debug.c b/fs/aufs/debug.c +index e3ee24d..563bac0 100644 +--- a/fs/aufs/debug.c ++++ b/fs/aufs/debug.c +@@ -169,7 +169,7 @@ void au_dpri_dalias(struct inode *inode) + struct dentry *d; + + spin_lock(&inode->i_lock); +- hlist_for_each_entry(d, &inode->i_dentry, d_alias) ++ hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) + au_dpri_dentry(d); + spin_unlock(&inode->i_lock); + } +diff --git a/fs/aufs/export.c b/fs/aufs/export.c +index 32df1ed..864ec30 100644 +--- a/fs/aufs/export.c ++++ b/fs/aufs/export.c +@@ -243,7 +243,7 @@ static struct dentry *decode_by_ino(struct super_block *sb, ino_t ino, + dentry = d_find_alias(inode); + else { + spin_lock(&inode->i_lock); +- hlist_for_each_entry(d, &inode->i_dentry, d_alias) { ++ hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) { + spin_lock(&d->d_lock); + if (!au_test_anon(d) + && d->d_parent->d_inode->i_ino == dir_ino) { +diff --git a/fs/aufs/hnotify.c b/fs/aufs/hnotify.c +index e120c55..94d6d6e 100644 +--- a/fs/aufs/hnotify.c ++++ b/fs/aufs/hnotify.c +@@ -211,7 +211,7 @@ static int hn_gen_by_inode(char *name, unsigned int nlen, struct inode *inode, + AuDebugOn(!name); + au_iigen_dec(inode); + spin_lock(&inode->i_lock); +- hlist_for_each_entry(d, &inode->i_dentry, d_alias) { ++ hlist_for_each_entry(d, &inode->i_dentry, d_u.d_alias) { + spin_lock(&d->d_lock); + dname = &d->d_name; + if (dname->len != nlen +@@ -378,7 +378,7 @@ static struct dentry *lookup_wlock_by_name(char *name, unsigned int nlen, + + dentry = NULL; + spin_lock(&parent->d_lock); +- list_for_each_entry(d, &parent->d_subdirs, d_u.d_child) { ++ list_for_each_entry(d, &parent->d_subdirs, d_child) { + /* AuDbg("%pd\n", d); */ + spin_lock_nested(&d->d_lock, DENTRY_D_LOCK_NESTED); + dname = &d->d_name; +-- +2.1.3 + diff --git a/core/linux-armv7/PKGBUILD b/core/linux-armv7/PKGBUILD index d3aa19f61..682f12918 100644 --- a/core/linux-armv7/PKGBUILD +++ b/core/linux-armv7/PKGBUILD @@ -24,7 +24,8 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz" '0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch' '0003-SMILE-Plug-device-tree-file.patch' '0004-fix-mvsdio-eMMC-timing.patch' - '0005-mmc-mvsdio-Work-around-broken-TX-DMA.patch' + '0005-mmc-mvsdio-Work-around-broken-TX-DMA.patch' + '0001-AUFS-fix-for-3.18.1.patch' 'config') md5sums=('9e854df51ca3fef8bfe566dbd7b89241' '82864000fde42252dd5e80cceb971479' @@ -35,6 +36,7 @@ md5sums=('9e854df51ca3fef8bfe566dbd7b89241' '0586896c14824b5e988597617f923f5e' 'fc1cd549e20f3cf49d7b0af8b01cc900' '1c45963a5bfcb535864a86139346217d' + 'aa83d1bca3a3583aa4011d03ff23bfd5' 'fe77781fcc6a50e59745b31098a84c1f') prepare() { @@ -64,6 +66,9 @@ prepare() { git apply ../aufs3-standalone/aufs3-mmap.patch git apply ../aufs3-standalone/aufs3-standalone.patch + # Fix until patched upstream + git apply ../0001-AUFS-fix-for-3.18.1.patch + cat "${srcdir}/config" > ./.config # add pkgrel to extraversion