[kernel] r18703 - in dists/trunk/linux-2.6/debian: . config/amd64 config/i386 patches/bugfix/all patches/bugfix/arm patches/bugfix/ia64 patches/bugfix/x86 patches/debian patches/debian/dfsg patches/features/all patches/features/all/aufs3 patches/features/arm patches/series

Ben Hutchings benh at alioth.debian.org
Sun Feb 19 22:01:31 UTC 2012


Author: benh
Date: Sun Feb 19 22:01:27 2012
New Revision: 18703

Log:
Update to 3.3-rc4

aufs: Update to aufs3.x-rcN-20120123
rt: Disable until it is updated for Linux 3.3 or later

Deleted:
   dists/trunk/linux-2.6/debian/patches/bugfix/all/0001-media-staging-lirc_serial-Fix-init-exit-order.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/0002-media-staging-lirc_serial-Free-resources-on-failure-.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/0003-media-staging-lirc_serial-Fix-deadlock-on-resume-fai.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/0004-media-staging-lirc_serial-Fix-bogus-error-codes.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/0005-media-staging-lirc_serial-Do-not-assume-error-codes-.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/ath9k-fix-a-wep-crypto-related-regression.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/cpu-Do-not-return-errors-from-cpu_dev_init-which-wil.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/cpu-Register-a-generic-CPU-device-on-architectures-t.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/relay-prevent-integer-overflow-in-relay_open.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/all/snapshot-Implement-compat_ioctl.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/arm/ARM-topdown-mmap.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/ia64/ia64-Add-accept4-syscall.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/x86/KVM-nVMX-Add-KVM_REQ_IMMEDIATE_EXIT.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/x86/KVM-nVMX-Fix-warning-causing-idt-vectoring-info-beha.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/x86/KVM-x86-extend-struct-x86_emulate_ops-with-get_cpuid.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/x86/KVM-x86-fix-missing-checks-in-syscall-emulation.patch
   dists/trunk/linux-2.6/debian/patches/debian/ARM-Remove-use-of-possibly-undefined-BUILD_BUG_ON-in.patch
   dists/trunk/linux-2.6/debian/patches/debian/bcma-Do-not-claim-PCI-device-IDs-also-claimed-by-brc.patch
   dists/trunk/linux-2.6/debian/patches/features/all/Input-ALPS-add-protocol-version-field-in-alps_model_.patch
   dists/trunk/linux-2.6/debian/patches/features/all/Input-ALPS-add-semi-MT-support-for-v3-protocol.patch
   dists/trunk/linux-2.6/debian/patches/features/all/Input-ALPS-add-support-for-protocol-versions-3-and-4.patch
   dists/trunk/linux-2.6/debian/patches/features/all/Input-ALPS-move-protocol-information-to-Documentatio.patch
   dists/trunk/linux-2.6/debian/patches/features/all/Input-ALPS-remove-assumptions-about-packet-size.patch
   dists/trunk/linux-2.6/debian/patches/features/all/hwmon-it87-Add-IT8728F-support.patch
   dists/trunk/linux-2.6/debian/patches/features/all/topology-Provide-CPU-topology-in-sysfs-in-SMP-configura.patch
   dists/trunk/linux-2.6/debian/patches/features/arm/ARM-kirkwood-6282A1.patch
Modified:
   dists/trunk/linux-2.6/debian/changelog
   dists/trunk/linux-2.6/debian/config/amd64/defines
   dists/trunk/linux-2.6/debian/config/i386/defines
   dists/trunk/linux-2.6/debian/patches/debian/cgroups-Document-the-Debian-memory-resource-controll.patch
   dists/trunk/linux-2.6/debian/patches/debian/dfsg/files-1
   dists/trunk/linux-2.6/debian/patches/debian/dfsg/r8192e-remove-firmware-again.patch
   dists/trunk/linux-2.6/debian/patches/debian/sched-autogroup-disabled.patch
   dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-add.patch
   dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-base.patch
   dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-kbuild.patch
   dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-standalone.patch
   dists/trunk/linux-2.6/debian/patches/series/base

Modified: dists/trunk/linux-2.6/debian/changelog
==============================================================================
--- dists/trunk/linux-2.6/debian/changelog	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/changelog	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,3 +1,13 @@
+linux-2.6 (3.3~rc4-1~experimental.1) UNRELEASED; urgency=low
+
+  * New upstream release candidate
+
+  [ Ben Hutchings ]
+  * aufs: Update to aufs3.x-rcN-20120123
+  * rt: Disable until it is updated for Linux 3.3 or later
+
+ -- Ben Hutchings <ben at decadent.org.uk>  Sun, 19 Feb 2012 20:52:21 +0000
+
 linux-2.6 (3.2.6-1) unstable; urgency=low
 
   * New upstream stable update:

Modified: dists/trunk/linux-2.6/debian/config/amd64/defines
==============================================================================
--- dists/trunk/linux-2.6/debian/config/amd64/defines	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/config/amd64/defines	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,6 +1,6 @@
 [base]
 featuresets:
- rt
+# rt
 flavours:
  amd64
 kernel-arch: x86

Modified: dists/trunk/linux-2.6/debian/config/i386/defines
==============================================================================
--- dists/trunk/linux-2.6/debian/config/i386/defines	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/config/i386/defines	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,6 +1,6 @@
 [base]
 featuresets:
- rt
+# rt
 flavours:
  486
  686-pae

Modified: dists/trunk/linux-2.6/debian/patches/debian/cgroups-Document-the-Debian-memory-resource-controll.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/debian/cgroups-Document-the-Debian-memory-resource-controll.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/debian/cgroups-Document-the-Debian-memory-resource-controll.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,20 +1,13 @@
-From 969e4dd0b5c715b239c765b870f2abf81c57e878 Mon Sep 17 00:00:00 2001
 From: Ben Hutchings <ben at decadent.org.uk>
-Date: Sun, 30 May 2010 22:47:01 +0100
 Subject: [PATCH 2/2] cgroups: Document the Debian memory resource controller
  config change
 
 ---
- Documentation/cgroups/memory.txt |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/Documentation/cgroups/memory.txt b/Documentation/cgroups/memory.txt
-index 7c16347..684f70d 100644
 --- a/Documentation/cgroups/memory.txt
 +++ b/Documentation/cgroups/memory.txt
 @@ -47,6 +47,10 @@ Features:
-  Kernel memory and Hugepages are not under control yet. We just manage
-  pages on LRU. To add more controls, we have to take care of performance.
+  Kernel memory support is work in progress, and the current version provides
+  basically functionality. (See Section 2.7)
  
 +NOTE: In Debian kernel packages, the memory resource controller is
 +included but disabled by default.  Use the kernel parameter
@@ -23,6 +16,3 @@
  Brief summary of control files.
  
   tasks				 # attach a task(thread) and show list of threads
--- 
-1.7.4.4
-

Modified: dists/trunk/linux-2.6/debian/patches/debian/dfsg/files-1
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/debian/dfsg/files-1	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/debian/dfsg/files-1	Sun Feb 19 22:01:27 2012	(r18703)
@@ -18,7 +18,7 @@
 
 rm drivers/staging/keucr/init.h
 
-unifdef drivers/staging/rtl8192e/r8192E_hwimg.c -UREMOVE_DFSG 
+unifdef drivers/staging/rtl8192e/rtl8192e/r8192E_hwimg.c -UREMOVE_DFSG 
 
 rm drivers/staging/wlags49_h2/ap_*.c
 rm drivers/staging/wlags49_h2/sta_*.c

Modified: dists/trunk/linux-2.6/debian/patches/debian/dfsg/r8192e-remove-firmware-again.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/debian/dfsg/r8192e-remove-firmware-again.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/debian/dfsg/r8192e-remove-firmware-again.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,7 +1,7 @@
-diff --git a/drivers/staging/rtl8192e/r8192E_firmware.c b/drivers/staging/rtl8192e/r8192E_firmware.c
+diff --git a/drivers/staging/rtl8192e/rtl8192e/r8192E_firmware.c b/drivers/staging/rtl8192e/rtl8192e/r8192E_firmware.c
 index 3771985..b073208 100644
---- a/drivers/staging/rtl8192e/r8192E_firmware.c
-+++ b/drivers/staging/rtl8192e/r8192E_firmware.c
+--- a/drivers/staging/rtl8192e/rtl8192e/r8192E_firmware.c
++++ b/drivers/staging/rtl8192e/rtl8192e/r8192E_firmware.c
 @@ -228,13 +228,6 @@ bool init_firmware(struct net_device *dev)
  	struct r8192_priv *priv = rtllib_priv(dev);
  	bool			rt_status = true;
@@ -31,10 +31,10 @@
  
  			default:
  				break;
-diff --git a/drivers/staging/rtl8192e/r8192E_hwimg.c b/drivers/staging/rtl8192e/r8192E_hwimg.c
+diff --git a/drivers/staging/rtl8192e/rtl8192e/r8192E_hwimg.c b/drivers/staging/rtl8192e/rtl8192e/r8192E_hwimg.c
 index 08e7dbb..e760397 100644
---- a/drivers/staging/rtl8192e/r8192E_hwimg.c
-+++ b/drivers/staging/rtl8192e/r8192E_hwimg.c
+--- a/drivers/staging/rtl8192e/rtl8192e/r8192E_hwimg.c
++++ b/drivers/staging/rtl8192e/rtl8192e/r8192E_hwimg.c
 @@ -20,6 +20,7 @@
  
  #include "r8192E_hwimg.h"

Modified: dists/trunk/linux-2.6/debian/patches/debian/sched-autogroup-disabled.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/debian/sched-autogroup-disabled.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/debian/sched-autogroup-disabled.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,10 +1,8 @@
-diff --git a/kernel/sched_autogroup.c b/kernel/sched_autogroup.c
-index 9fb6562..96abaaf 100644
---- a/kernel/sched_autogroup.c
-+++ b/kernel/sched_autogroup.c
-@@ -5,7 +5,7 @@
- #include <linux/kallsyms.h>
- #include <linux/utsname.h>
+--- a/kernel/sched/auto_group.c
++++ b/kernel/sched/auto_group.c
+@@ -9,7 +9,7 @@
+ #include <linux/security.h>
+ #include <linux/export.h>
  
 -unsigned int __read_mostly sysctl_sched_autogroup_enabled = 1;
 +unsigned int __read_mostly sysctl_sched_autogroup_enabled = 0;

Modified: dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-add.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-add.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-add.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1759,8 +1759,8 @@
 +
 +-include ${srctree}/${src}/conf_priv.mk
 --- a/fs/aufs/cpup.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/cpup.c	2012-01-10 02:15:56.545455955 +0000
-@@ -0,0 +1,1079 @@
++++ b/fs/aufs/cpup.c	2012-02-19 21:12:26.542426948 +0000
+@@ -0,0 +1,1084 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -1821,7 +1821,12 @@
 +	    && au_plink_test(inode))
 +		return;
 +
-+	set_nlink(inode, h_inode->i_nlink);
++	/*
++	 * 0 can happen in revalidating.
++	 * h_inode->i_mutex is not held, but it is harmless since once i_nlink
++	 * reaches 0, it will never become positive.
++	 */
++	vfsub_set_nlink(inode, h_inode->i_nlink);
 +
 +	/*
 +	 * fewer nlink makes find(1) noisy, but larger nlink doesn't.
@@ -6324,8 +6329,8 @@
 +	return -1;
 +}
 --- a/fs/aufs/dir.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dir.c	2012-01-10 02:15:56.549455982 +0000
-@@ -0,0 +1,634 @@
++++ b/fs/aufs/dir.c	2012-02-19 21:12:26.566427085 +0000
+@@ -0,0 +1,636 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -6361,7 +6366,8 @@
 +	nlink += h_dir->i_nlink - 2;
 +	if (h_dir->i_nlink < 2)
 +		nlink += 2;
-+	set_nlink(dir, nlink);
++	/* 0 can happen in revaliding */
++	vfsub_set_nlink(dir, nlink);
 +}
 +
 +void au_sub_nlink(struct inode *dir, struct inode *h_dir)
@@ -6374,6 +6380,7 @@
 +	nlink -= h_dir->i_nlink - 2;
 +	if (h_dir->i_nlink < 2)
 +		nlink -= 2;
++	/* no vfsub version. nlink == 0 means the branch-fs is broken */
 +	set_nlink(dir, nlink);
 +}
 +
@@ -7560,8 +7567,8 @@
 +#endif /* __KERNEL__ */
 +#endif /* __AUFS_DYNOP_H__ */
 --- a/fs/aufs/export.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/export.c	2012-01-10 02:15:56.549455982 +0000
-@@ -0,0 +1,804 @@
++++ b/fs/aufs/export.c	2012-02-19 21:12:26.566427085 +0000
+@@ -0,0 +1,803 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -7585,11 +7592,12 @@
 + */
 +
 +#include <linux/exportfs.h>
-+#include <linux/mnt_namespace.h>
++#include <linux/fs_struct.h>
 +#include <linux/namei.h>
 +#include <linux/nsproxy.h>
 +#include <linux/random.h>
 +#include <linux/writeback.h>
++#include "../fs/mount.h"
 +#include "aufs.h"
 +
 +union conv {
@@ -7843,18 +7851,16 @@
 +static struct vfsmount *au_mnt_get(struct super_block *sb)
 +{
 +	int err;
++	struct path root;
 +	struct au_compare_mnt_args args = {
 +		.sb = sb
 +	};
-+	struct mnt_namespace *ns;
 +
++	get_fs_root(current->fs, &root);
 +	br_read_lock(vfsmount_lock);
-+	/* no get/put ?? */
-+	AuDebugOn(!current->nsproxy);
-+	ns = current->nsproxy->mnt_ns;
-+	AuDebugOn(!ns);
-+	err = iterate_mounts(au_compare_mnt, &args, ns->root);
++	err = iterate_mounts(au_compare_mnt, &args, root.mnt);
 +	br_read_unlock(vfsmount_lock);
++	path_put(&root);
 +	AuDebugOn(!err);
 +	AuDebugOn(!args.mnt);
 +	return args.mnt;
@@ -9400,8 +9406,8 @@
 +	return ret;
 +}
 --- a/fs/aufs/file.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/file.c	2012-01-10 02:15:56.549455982 +0000
-@@ -0,0 +1,673 @@
++++ b/fs/aufs/file.c	2012-02-19 21:12:26.570427095 +0000
+@@ -0,0 +1,676 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -9424,6 +9430,9 @@
 + * handling file/dir, and address_space operation
 + */
 +
++#ifdef CONFIG_AUFS_DEBUG
++#include <linux/migrate.h>
++#endif
 +#include <linux/pagemap.h>
 +#include "aufs.h"
 +
@@ -10042,7 +10051,7 @@
 +static int aufs_releasepage(struct page *page, gfp_t gfp)
 +{ AuUnsupport(); return 0; }
 +static int aufs_migratepage(struct address_space *mapping, struct page *newpage,
-+			    struct page *page)
++			    struct page *page, enum migrate_mode mode)
 +{ AuUnsupport(); return 0; }
 +static int aufs_launder_page(struct page *page)
 +{ AuUnsupport(); return 0; }
@@ -12060,7 +12069,7 @@
 +		au_hn_destroy_cache();
 +}
 --- a/fs/aufs/i_op.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op.c	2012-01-10 02:15:56.553455997 +0000
++++ b/fs/aufs/i_op.c	2012-02-19 21:12:26.570427095 +0000
 @@ -0,0 +1,992 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
@@ -12761,8 +12770,7 @@
 +	a->h_path.mnt = au_sbr_mnt(sb, a->btgt);
 +	if ((ia->ia_valid & (ATTR_MODE | ATTR_CTIME))
 +	    == (ATTR_MODE | ATTR_CTIME)) {
-+		err = security_path_chmod(a->h_path.dentry, a->h_path.mnt,
-+					  ia->ia_mode);
++		err = security_path_chmod(&a->h_path, ia->ia_mode);
 +		if (unlikely(err))
 +			goto out_unlock;
 +	} else if ((ia->ia_valid & (ATTR_UID | ATTR_GID))
@@ -12828,7 +12836,8 @@
 +		n = inode->i_nlink;
 +		n -= nlink;
 +		n += st->nlink;
-+		set_nlink(inode, n);
++		/* 0 can happen */
++		vfsub_set_nlink(inode, n);
 +	}
 +
 +	spin_lock(&inode->i_lock);
@@ -13055,7 +13064,7 @@
 +	.truncate_range	= aufs_truncate_range
 +};
 --- a/fs/aufs/i_op_add.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op_add.c	2012-01-10 02:15:56.553455997 +0000
++++ b/fs/aufs/i_op_add.c	2012-02-19 21:12:26.570427095 +0000
 @@ -0,0 +1,711 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
@@ -13274,14 +13283,14 @@
 +	int type;
 +	union {
 +		struct {
-+			int mode;
++			umode_t mode;
 +			struct nameidata *nd;
 +		} c;
 +		struct {
 +			const char *symname;
 +		} s;
 +		struct {
-+			int mode;
++			umode_t mode;
 +			dev_t dev;
 +		} m;
 +	} u;
@@ -13368,7 +13377,7 @@
 +	return err;
 +}
 +
-+int aufs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t dev)
++int aufs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t dev)
 +{
 +	struct simple_arg arg = {
 +		.type = Mknod,
@@ -13389,7 +13398,7 @@
 +	return add_simple(dir, dentry, &arg);
 +}
 +
-+int aufs_create(struct inode *dir, struct dentry *dentry, int mode,
++int aufs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
 +		struct nameidata *nd)
 +{
 +	struct simple_arg arg = {
@@ -13661,7 +13670,7 @@
 +	return err;
 +}
 +
-+int aufs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
++int aufs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
 +{
 +	int err, rerr;
 +	aufs_bindex_t bindex;
@@ -16011,7 +16020,7 @@
 +	return au_test_h_perm(h_inode, mask);
 +}
 --- a/fs/aufs/inode.h	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/inode.h	2012-01-10 02:15:56.557456016 +0000
++++ b/fs/aufs/inode.h	2012-02-19 21:12:26.570427095 +0000
 @@ -0,0 +1,554 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
@@ -16173,13 +16182,13 @@
 +/* i_op_add.c */
 +int au_may_add(struct dentry *dentry, aufs_bindex_t bindex,
 +	       struct dentry *h_parent, int isdir);
-+int aufs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t dev);
++int aufs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t dev);
 +int aufs_symlink(struct inode *dir, struct dentry *dentry, const char *symname);
-+int aufs_create(struct inode *dir, struct dentry *dentry, int mode,
++int aufs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
 +		struct nameidata *nd);
 +int aufs_link(struct dentry *src_dentry, struct inode *dir,
 +	      struct dentry *dentry);
-+int aufs_mkdir(struct inode *dir, struct dentry *dentry, int mode);
++int aufs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode);
 +
 +/* i_op_del.c */
 +int au_wr_dir_need_wh(struct dentry *dentry, int isdir, aufs_bindex_t *bcpup);
@@ -20951,8 +20960,8 @@
 +#endif /* __KERNEL__ */
 +#endif /* __AUFS_SPL_H__ */
 --- a/fs/aufs/super.c	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/super.c	2012-01-10 02:15:56.569456073 +0000
-@@ -0,0 +1,938 @@
++++ b/fs/aufs/super.c	2012-02-19 21:12:26.570427095 +0000
+@@ -0,0 +1,936 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -21118,7 +21127,7 @@
 +	}
 +}
 +
-+static int au_show_xino(struct seq_file *seq, struct vfsmount *mnt)
++static int au_show_xino(struct seq_file *seq, struct super_block *sb)
 +{
 +#ifdef CONFIG_SYSFS
 +	return 0;
@@ -21126,7 +21135,6 @@
 +	int err;
 +	const int len = sizeof(AUFS_XINO_FNAME) - 1;
 +	aufs_bindex_t bindex, brid;
-+	struct super_block *sb;
 +	struct qstr *name;
 +	struct file *f;
 +	struct dentry *d, *h_root;
@@ -21135,7 +21143,6 @@
 +	AuRwMustAnyLock(&sbinfo->si_rwsem);
 +
 +	err = 0;
-+	sb = mnt->mnt_sb;
 +	f = au_sbi(sb)->si_xib;
 +	if (!f)
 +		goto out;
@@ -21165,7 +21172,7 @@
 +}
 +
 +/* seq_file will re-call me in case of too long string */
-+static int aufs_show_options(struct seq_file *m, struct vfsmount *mnt)
++static int aufs_show_options(struct seq_file *m, struct dentry *dentry)
 +{
 +	int err;
 +	unsigned int mnt_flags, v;
@@ -21190,14 +21197,14 @@
 +} while (0)
 +
 +	/* lock free root dinfo */
-+	sb = mnt->mnt_sb;
++	sb = dentry->d_sb;
 +	si_noflush_read_lock(sb);
 +	sbinfo = au_sbi(sb);
 +	seq_printf(m, ",si=%lx", sysaufs_si_id(sbinfo));
 +
 +	mnt_flags = au_mntflags(sb);
 +	if (au_opt_test(mnt_flags, XINO)) {
-+		err = au_show_xino(m, mnt);
++		err = au_show_xino(m, sb);
 +		if (unlikely(err))
 +			goto out;
 +	} else
@@ -24793,8 +24800,8 @@
 +	return err;
 +}
 --- a/fs/aufs/vfsub.h	1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/vfsub.h	2012-01-10 02:15:56.569456073 +0000
-@@ -0,0 +1,232 @@
++++ b/fs/aufs/vfsub.h	2012-02-19 21:12:26.574427108 +0000
+@@ -0,0 +1,240 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
 + *
@@ -24897,6 +24904,14 @@
 +	clear_nlink(inode);
 +}
 +
++static inline void vfsub_set_nlink(struct inode *inode, unsigned int nlink)
++{
++	if (nlink)
++		set_nlink(inode, nlink);
++	else
++		clear_nlink(inode);
++}
++
 +/* ---------------------------------------------------------------------- */
 +
 +int vfsub_update_h_iattr(struct path *h_path, int *did);
@@ -28453,7 +28468,7 @@
 +	return err;
 +}
 --- a/include/linux/aufs_type.h	1970-01-01 01:00:00.000000000 +0100
-+++ b/include/linux/aufs_type.h	2012-01-10 02:15:56.573456100 +0000
++++ b/include/linux/aufs_type.h	2012-02-19 21:12:26.574427108 +0000
 @@ -0,0 +1,233 @@
 +/*
 + * Copyright (C) 2005-2012 Junjiro R. Okajima
@@ -28496,7 +28511,7 @@
 +
 +#include <linux/limits.h>
 +
-+#define AUFS_VERSION	"3.2-20120109"
++#define AUFS_VERSION	"3.x-rcN-20120123"
 +
 +/* todo? move this to linux-2.6.19/include/magic.h */
 +#define AUFS_SUPER_MAGIC	('a' << 24 | 'u' << 16 | 'f' << 8 | 's')

Modified: dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-base.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-base.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-base.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,10 +1,10 @@
-aufs3.2 base patch
+aufs3.x-rcN base patch
 
 diff --git a/fs/namei.c b/fs/namei.c
-index 5008f01..4cc94cf 100644
+index c283a1e..586eccd 100644
 --- a/fs/namei.c
 +++ b/fs/namei.c
-@@ -1753,7 +1753,7 @@ static struct dentry *__lookup_hash(struct qstr *name,
+@@ -1756,7 +1756,7 @@ static struct dentry *__lookup_hash(struct qstr *name,
   * needs parent already locked. Doesn't follow mounts.
   * SMP-safe.
   */
@@ -14,10 +14,10 @@
  	return __lookup_hash(&nd->last, nd->path.dentry, nd);
  }
 diff --git a/fs/splice.c b/fs/splice.c
-index fa2defa..e3569b0 100644
+index 1ec0493..c599f73 100644
 --- a/fs/splice.c
 +++ b/fs/splice.c
-@@ -1085,8 +1085,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
+@@ -1084,8 +1084,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
  /*
   * Attempt to initiate a splice from pipe to file.
   */
@@ -28,7 +28,7 @@
  {
  	ssize_t (*splice_write)(struct pipe_inode_info *, struct file *,
  				loff_t *, size_t, unsigned int);
-@@ -1113,9 +1113,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+@@ -1112,9 +1112,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
  /*
   * Attempt to initiate a splice from a file to a pipe.
   */

Modified: dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-kbuild.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-kbuild.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-kbuild.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,7 +1,7 @@
-aufs3.2 kbuild patch
+aufs3.x-rcN kbuild patch
 
 diff --git a/fs/Kconfig b/fs/Kconfig
-index 5f4c45d..357a8a6 100644
+index d621f02..9b9694c 100644
 --- a/fs/Kconfig
 +++ b/fs/Kconfig
 @@ -215,6 +215,7 @@ source "fs/pstore/Kconfig"
@@ -13,16 +13,16 @@
  endif # MISC_FILESYSTEMS
  
 diff --git a/fs/Makefile b/fs/Makefile
-index d2c3353..680ad8a 100644
+index 93804d4..cf3dcb9 100644
 --- a/fs/Makefile
 +++ b/fs/Makefile
-@@ -123,3 +123,4 @@ obj-$(CONFIG_GFS2_FS)           += gfs2/
+@@ -124,3 +124,4 @@ obj-$(CONFIG_GFS2_FS)           += gfs2/
  obj-y				+= exofs/ # Multiple modules
  obj-$(CONFIG_CEPH_FS)		+= ceph/
  obj-$(CONFIG_PSTORE)		+= pstore/
 +obj-$(CONFIG_AUFS_FS)           += aufs/
 diff --git a/include/linux/Kbuild b/include/linux/Kbuild
-index 619b565..29f386b 100644
+index c94e717..fccb9df 100644
 --- a/include/linux/Kbuild
 +++ b/include/linux/Kbuild
 @@ -65,6 +65,7 @@ header-y += atmppp.h

Modified: dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-standalone.patch
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-standalone.patch	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/features/all/aufs3/aufs3-standalone.patch	Sun Feb 19 22:01:27 2012	(r18703)
@@ -1,7 +1,7 @@
-aufs3.2 standalone patch
+aufs3.x-rcN standalone patch
 
 diff --git a/fs/file_table.c b/fs/file_table.c
-index c322794..2aad244 100644
+index 20002e3..6d792ad 100644
 --- a/fs/file_table.c
 +++ b/fs/file_table.c
 @@ -443,6 +443,8 @@ void file_sb_list_del(struct file *file)
@@ -14,10 +14,10 @@
  
  /*
 diff --git a/fs/inode.c b/fs/inode.c
-index ee4e66b..728042b 100644
+index 4fa4f09..f07a146 100644
 --- a/fs/inode.c
 +++ b/fs/inode.c
-@@ -65,6 +65,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
+@@ -66,6 +66,7 @@ static struct hlist_head *inode_hashtable __read_mostly;
  static __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_hash_lock);
  
  __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_sb_list_lock);
@@ -26,10 +26,10 @@
  /*
   * Empty aops. Can be used for the cases where the user does not
 diff --git a/fs/namei.c b/fs/namei.c
-index 4cc94cf..af19e30 100644
+index 586eccd..62dd0a8 100644
 --- a/fs/namei.c
 +++ b/fs/namei.c
-@@ -1757,6 +1757,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
+@@ -1760,6 +1760,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
  {
  	return __lookup_hash(&nd->last, nd->path.dentry, nd);
  }
@@ -38,16 +38,16 @@
  /**
   * lookup_one_len - filesystem helper to lookup single pathname component
 diff --git a/fs/namespace.c b/fs/namespace.c
-index cfc6d44..173d15a 100644
+index e608199..38fcc2e 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
-@@ -1506,6 +1506,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
+@@ -1339,6 +1339,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
  	}
  	return 0;
  }
 +EXPORT_SYMBOL_GPL(iterate_mounts);
  
- static void cleanup_group_ids(struct vfsmount *mnt, struct vfsmount *end)
+ static void cleanup_group_ids(struct mount *mnt, struct mount *end)
  {
 diff --git a/fs/notify/group.c b/fs/notify/group.c
 index 63fc294..6f4adca 100644
@@ -75,7 +75,7 @@
  }
 +EXPORT_SYMBOL_GPL(fsnotify_alloc_group);
 diff --git a/fs/notify/mark.c b/fs/notify/mark.c
-index e14587d..be6533b 100644
+index f104d56..54f36db 100644
 --- a/fs/notify/mark.c
 +++ b/fs/notify/mark.c
 @@ -112,6 +112,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark)
@@ -86,7 +86,7 @@
  
  /*
   * Any time a mark is getting freed we end up here.
-@@ -189,6 +190,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark)
+@@ -191,6 +192,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark)
  	if (unlikely(atomic_dec_and_test(&group->num_marks)))
  		fsnotify_final_destroy_group(group);
  }
@@ -94,7 +94,7 @@
  
  void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask)
  {
-@@ -276,6 +278,7 @@ err:
+@@ -278,6 +280,7 @@ err:
  
  	return ret;
  }
@@ -102,7 +102,7 @@
  
  /*
   * clear any marks in a group in which mark->flags & flags is true
-@@ -331,6 +334,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
+@@ -333,6 +336,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
  	atomic_set(&mark->refcnt, 1);
  	mark->free_mark = free_mark;
  }
@@ -111,7 +111,7 @@
  static int fsnotify_mark_destroy(void *ignored)
  {
 diff --git a/fs/open.c b/fs/open.c
-index 22c41b5..33b4033 100644
+index 77becc0..f634f02 100644
 --- a/fs/open.c
 +++ b/fs/open.c
 @@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
@@ -123,10 +123,10 @@
  static long do_sys_truncate(const char __user *pathname, loff_t length)
  {
 diff --git a/fs/splice.c b/fs/splice.c
-index e3569b0..9dc07b7 100644
+index c599f73..00303ba 100644
 --- a/fs/splice.c
 +++ b/fs/splice.c
-@@ -1109,6 +1109,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+@@ -1108,6 +1108,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
  
  	return splice_write(pipe, out, ppos, len, flags);
  }
@@ -134,7 +134,7 @@
  
  /*
   * Attempt to initiate a splice from a file to a pipe.
-@@ -1135,6 +1136,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
+@@ -1134,6 +1135,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
  
  	return splice_read(in, ppos, pipe, len, flags);
  }
@@ -143,16 +143,16 @@
  /**
   * splice_direct_to_actor - splices data directly between two non-pipes
 diff --git a/security/commoncap.c b/security/commoncap.c
-index ee4f848..611fd70 100644
+index 7ce191e..19a95be 100644
 --- a/security/commoncap.c
 +++ b/security/commoncap.c
-@@ -975,3 +975,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
+@@ -965,3 +965,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
  	}
  	return ret;
  }
 +EXPORT_SYMBOL_GPL(cap_file_mmap);
 diff --git a/security/device_cgroup.c b/security/device_cgroup.c
-index 4450fbe..bc94175 100644
+index 8b5b5d8..911850c 100644
 --- a/security/device_cgroup.c
 +++ b/security/device_cgroup.c
 @@ -7,6 +7,7 @@
@@ -163,7 +163,7 @@
  #include <linux/list.h>
  #include <linux/uaccess.h>
  #include <linux/seq_file.h>
-@@ -500,6 +501,7 @@ found:
+@@ -501,6 +502,7 @@ found:
  
  	return -EPERM;
  }
@@ -172,10 +172,10 @@
  int devcgroup_inode_mknod(int mode, dev_t dev)
  {
 diff --git a/security/security.c b/security/security.c
-index e2f684a..892000c 100644
+index d754249..1aa6154 100644
 --- a/security/security.c
 +++ b/security/security.c
-@@ -411,6 +411,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
+@@ -392,6 +392,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
  		return 0;
  	return security_ops->path_rmdir(dir, dentry);
  }
@@ -183,7 +183,7 @@
  
  int security_path_unlink(struct path *dir, struct dentry *dentry)
  {
-@@ -427,6 +428,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
+@@ -408,6 +409,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
  		return 0;
  	return security_ops->path_symlink(dir, dentry, old_name);
  }
@@ -191,7 +191,7 @@
  
  int security_path_link(struct dentry *old_dentry, struct path *new_dir,
  		       struct dentry *new_dentry)
-@@ -435,6 +437,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
+@@ -416,6 +418,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
  		return 0;
  	return security_ops->path_link(old_dentry, new_dir, new_dentry);
  }
@@ -199,23 +199,23 @@
  
  int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
  			 struct path *new_dir, struct dentry *new_dentry)
-@@ -453,6 +456,7 @@ int security_path_truncate(struct path *path)
+@@ -434,6 +437,7 @@ int security_path_truncate(struct path *path)
  		return 0;
  	return security_ops->path_truncate(path);
  }
 +EXPORT_SYMBOL_GPL(security_path_truncate);
  
- int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
- 			mode_t mode)
-@@ -461,6 +465,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
+ int security_path_chmod(struct path *path, umode_t mode)
+ {
+@@ -441,6 +445,7 @@ int security_path_chmod(struct path *path, umode_t mode)
  		return 0;
- 	return security_ops->path_chmod(dentry, mnt, mode);
+ 	return security_ops->path_chmod(path, mode);
  }
 +EXPORT_SYMBOL_GPL(security_path_chmod);
  
  int security_path_chown(struct path *path, uid_t uid, gid_t gid)
  {
-@@ -468,6 +473,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
+@@ -448,6 +453,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
  		return 0;
  	return security_ops->path_chown(path, uid, gid);
  }
@@ -223,7 +223,7 @@
  
  int security_path_chroot(struct path *path)
  {
-@@ -544,6 +550,7 @@ int security_inode_readlink(struct dentry *dentry)
+@@ -524,6 +530,7 @@ int security_inode_readlink(struct dentry *dentry)
  		return 0;
  	return security_ops->inode_readlink(dentry);
  }
@@ -231,7 +231,7 @@
  
  int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd)
  {
-@@ -558,6 +565,7 @@ int security_inode_permission(struct inode *inode, int mask)
+@@ -538,6 +545,7 @@ int security_inode_permission(struct inode *inode, int mask)
  		return 0;
  	return security_ops->inode_permission(inode, mask);
  }
@@ -239,7 +239,7 @@
  
  int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
  {
-@@ -673,6 +681,7 @@ int security_file_permission(struct file *file, int mask)
+@@ -653,6 +661,7 @@ int security_file_permission(struct file *file, int mask)
  
  	return fsnotify_perm(file, mask);
  }
@@ -247,7 +247,7 @@
  
  int security_file_alloc(struct file *file)
  {
-@@ -700,6 +709,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
+@@ -680,6 +689,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
  		return ret;
  	return ima_file_mmap(file, prot);
  }

Modified: dists/trunk/linux-2.6/debian/patches/series/base
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/series/base	Fri Feb 17 03:31:54 2012	(r18702)
+++ dists/trunk/linux-2.6/debian/patches/series/base	Sun Feb 19 22:01:27 2012	(r18703)
@@ -42,41 +42,10 @@
 + debian/cgroups-Document-the-Debian-memory-resource-controll.patch
 + bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch
 + features/x86/x86-Add-amilo-rfkill-driver-for-some-Fujitsu-Siemens.patch
-
-+ bugfix/ia64/ia64-Add-accept4-syscall.patch
 + bugfix/arm/ixp4xx_iobe.patch
-
-+ debian/bcma-Do-not-claim-PCI-device-IDs-also-claimed-by-brc.patch
-
-+ bugfix/all/0001-media-staging-lirc_serial-Fix-init-exit-order.patch
-+ bugfix/all/0002-media-staging-lirc_serial-Free-resources-on-failure-.patch
-+ bugfix/all/0003-media-staging-lirc_serial-Fix-deadlock-on-resume-fai.patch
-+ bugfix/all/0004-media-staging-lirc_serial-Fix-bogus-error-codes.patch
-+ bugfix/all/0005-media-staging-lirc_serial-Do-not-assume-error-codes-.patch
-
-+ features/all/topology-Provide-CPU-topology-in-sysfs-in-SMP-configura.patch
-+ bugfix/all/cpu-Do-not-return-errors-from-cpu_dev_init-which-wil.patch
-+ bugfix/all/cpu-Register-a-generic-CPU-device-on-architectures-t.patch
 + debian/x86-memtest-WARN-if-bad-RAM-found.patch
-+ bugfix/all/snapshot-Implement-compat_ioctl.patch
-+ debian/ARM-Remove-use-of-possibly-undefined-BUILD_BUG_ON-in.patch
 + bugfix/arm/ARM-ixp4xx-gpiolib-support.patch
-+ bugfix/arm/ARM-topdown-mmap.patch
 + bugfix/alpha/alpha-add-io-read-write-16-32-be-functions.patch
-+ features/arm/ARM-kirkwood-6282A1.patch
-+ features/all/Input-ALPS-move-protocol-information-to-Documentatio.patch
-+ features/all/Input-ALPS-add-protocol-version-field-in-alps_model_.patch
-+ features/all/Input-ALPS-remove-assumptions-about-packet-size.patch
-+ features/all/Input-ALPS-add-support-for-protocol-versions-3-and-4.patch
-+ features/all/Input-ALPS-add-semi-MT-support-for-v3-protocol.patch
-+ bugfix/x86/KVM-nVMX-Add-KVM_REQ_IMMEDIATE_EXIT.patch
-+ bugfix/x86/KVM-nVMX-Fix-warning-causing-idt-vectoring-info-beha.patch
-+ bugfix/x86/KVM-x86-extend-struct-x86_emulate_ops-with-get_cpuid.patch
-+ bugfix/x86/KVM-x86-fix-missing-checks-in-syscall-emulation.patch
-
-+ features/all/hwmon-it87-Add-IT8728F-support.patch
 + bugfix/arm/ARM-ixp4xx-mtd-oops.patch
-
-+ bugfix/all/relay-prevent-integer-overflow-in-relay_open.patch
 + bugfix/all/builddeb-Don-t-create-files-in-tmp-with-predictable-.patch
-+ bugfix/all/ath9k-fix-a-wep-crypto-related-regression.patch
+



More information about the Kernel-svn-changes mailing list