rpms/kernel/devel linux-2.6-lockdep-fixes.patch,1.6,1.7

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Tue Jul 11 20:09:52 UTC 2006


Author: davej

Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv19071

Modified Files:
	linux-2.6-lockdep-fixes.patch 
Log Message:
hmm, cvs wierds me out.


linux-2.6-lockdep-fixes.patch:
 linux-2.6.17-mm6/include/net/sock.h           |   10 ++++--
 linux-2.6.18-rc1/drivers/input/serio/libps2.c |    6 ++--
 linux-2.6.18-rc1/fs/block_dev.c               |    2 -
 linux-2.6.18-rc1/fs/sysfs/inode.c             |   39 ++++++++++++++++++++++++++
 linux-2.6.18-rc1/include/linux/libps2.h       |    7 ++++
 5 files changed, 56 insertions(+), 8 deletions(-)

Index: linux-2.6-lockdep-fixes.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-lockdep-fixes.patch,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- linux-2.6-lockdep-fixes.patch	10 Jul 2006 15:32:49 -0000	1.6
+++ linux-2.6-lockdep-fixes.patch	11 Jul 2006 20:09:47 -0000	1.7
@@ -1,120 +1,3 @@
-From davej  Tue Jul  4 11:14:48 2006
-Return-path: <linux-kernel-owner+davej=40kernelslacker.org-S932219AbWGDPNk at vger.kernel.org>
-X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
-	nwo.kernelslacker.org
-X-Spam-Level: 
-X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00 autolearn=ham 
-	version=3.1.3
-Envelope-to: davej at kernelslacker.org
-Delivery-date: Tue, 04 Jul 2006 16:14:06 +0100
-Received: from testure.choralone.org [194.9.77.134]
-	by nwo.kernelslacker.org with IMAP (fetchmail-6.3.4)
-	for <davej at localhost> (single-drop); Tue, 04 Jul 2006 11:14:48 -0400 (EDT)
-Received: from vger.kernel.org ([209.132.176.167])
-	by testure.choralone.org with esmtp (Exim 4.62)
-	(envelope-from <linux-kernel-owner+davej=40kernelslacker.org-S932219AbWGDPNk at vger.kernel.org>)
-	id 1FxmbF-0005Ps-OM
-	for davej at kernelslacker.org; Tue, 04 Jul 2006 16:14:06 +0100
-Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
-	id S932219AbWGDPNk (ORCPT <rfc822;davej at kernelslacker.org>);
-	Tue, 4 Jul 2006 11:13:40 -0400
-Received: (majordomo at vger.kernel.org) by vger.kernel.org id S932210AbWGDPNj
-	(ORCPT <rfc822;linux-kernel-outgoing>);
-	Tue, 4 Jul 2006 11:13:39 -0400
-Received: from pentafluge.infradead.org ([213.146.154.40]:62345 "EHLO
-	pentafluge.infradead.org") by vger.kernel.org with ESMTP
-	id S932209AbWGDPNi (ORCPT <rfc822;linux-kernel at vger.kernel.org>);
-	Tue, 4 Jul 2006 11:13:38 -0400
-Received: from a222036.upc-a.chello.nl ([62.163.222.36] helo=[172.31.3.43])
-	by pentafluge.infradead.org with esmtpsa (Exim 4.62 #1 (Red Hat Linux))
-	id 1Fxmah-00067s-IM; Tue, 04 Jul 2006 16:13:31 +0100
-Subject: Re: [BUG] scsi/io-elevator held lock freed.
-From:	Arjan van de Ven <arjan at infradead.org>
-To:	Daniel Walker <dwalker at mvista.com>
-Cc:	mingo at elte.hu, linux-kernel at vger.kernel.org,
-	linux-scsi at vger.kernel.org
-In-Reply-To: <1152024854.29262.5.camel at c-67-180-134-207.hsd1.ca.comcast.net>
-References: <1152024854.29262.5.camel at c-67-180-134-207.hsd1.ca.comcast.net>
-Content-Type: text/plain
-Date:	Tue, 04 Jul 2006 17:13:30 +0200
-Message-Id: <1152026010.3109.66.camel at laptopd505.fenrus.org>
-Mime-Version: 1.0
-X-Mailer: Evolution 2.2.3 (2.2.3-2.fc4) 
-Content-Transfer-Encoding: 7bit
-X-SRS-Rewrite: SMTP reverse-path rewritten from <arjan at infradead.org> by pentafluge.infradead.org
-	See http://www.infradead.org/rpr.html
-Sender:	linux-kernel-owner at vger.kernel.org
-Precedence: bulk
-X-Mailing-List:	linux-kernel at vger.kernel.org
-Status: RO
-Content-Length: 2141
-Lines: 64
-
-On Tue, 2006-07-04 at 07:54 -0700, Daniel Walker wrote:
-> I got this during boot. I booted the same kernel several times, and only
-> saw it once. The kernel was 2.6.17-mm5 .
-> 
-> Daniel
-> 
-> 
-> =========================
-> [ BUG: held lock freed! ]
-> -------------------------
-> swapper/1 is freeing memory f73a8580-f73a867f, with a lock still held there!
-> 2 locks held by swapper/1:
->  #0:  (&shost->scan_mutex){--..}, at: [<c0419098>] mutex_lock+0x8/0x10
->  #1:  (&eq->sysfs_lock){--..}, at: [<c0419098>] mutex_lock+0x8/0x10
-
-blargh.. it'd be more useful if lockdep actually printed which lock it
-is that it thinks is about to get freed.....
-
-this patch ought to make it do that; could you at least add this to your
-kernel?
-
-Ingo, is this the right approach?
-
----
- kernel/lockdep.c |    5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-Index: linux-2.6.17-mm6/kernel/lockdep.c
-===================================================================
---- linux-2.6.17-mm6.orig/kernel/lockdep.c
-+++ linux-2.6.17-mm6/kernel/lockdep.c
-@@ -2571,7 +2571,7 @@ static inline int in_range(const void *s
- 
- static void
- print_freed_lock_bug(struct task_struct *curr, const void *mem_from,
--		     const void *mem_to)
-+		     const void *mem_to, struct held_lock *hlock)
- {
- 	if (!debug_locks_off())
- 		return;
-@@ -2583,6 +2583,7 @@ print_freed_lock_bug(struct task_struct 
- 	printk(  "-------------------------\n");
- 	printk("%s/%d is freeing memory %p-%p, with a lock still held there!\n",
- 		curr->comm, curr->pid, mem_from, mem_to-1);
-+	print_lock(hlock);
- 	lockdep_print_held_locks(curr);
- 
- 	printk("\nstack backtrace:\n");
-@@ -2616,7 +2617,7 @@ void debug_check_no_locks_freed(const vo
- 					!in_range(mem_from, lock_to, mem_to))
- 			continue;
- 
--		print_freed_lock_bug(curr, mem_from, mem_to);
-+		print_freed_lock_bug(curr, mem_from, mem_to, hlock);
- 		break;
- 	}
- 	local_irq_restore(flags);
-
-
--
-To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
-the body of a message to majordomo at vger.kernel.org
-More majordomo info at  http://vger.kernel.org/majordomo-info.html
-Please read the FAQ at  http://www.tux.org/lkml/
-
 From davej  Tue Jul  4 14:33:56 2006
 Return-path: <linux-kernel-owner+davej=40kernelslacker.org-S932295AbWGDSc4 at vger.kernel.org>
 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
@@ -244,379 +127,6 @@
 More majordomo info at  http://vger.kernel.org/majordomo-info.html
 Please read the FAQ at  http://www.tux.org/lkml/
 
-From davej  Wed Jul  5 04:57:59 2006
-Return-Path: <mingo at elte.hu>
-X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
-	nwo.kernelslacker.org
-X-Spam-Level: 
-X-Spam-Status: No, score=-1.1 required=5.0 tests=AWL,BAYES_00,
-	UNPARSEABLE_RELAY autolearn=ham version=3.1.3
-Received: from pobox.devel.redhat.com [10.11.255.8]
-	by nwo.kernelslacker.org with IMAP (fetchmail-6.3.4)
-	for <davej at localhost> (single-drop); Wed, 05 Jul 2006 04:57:59 -0400 (EDT)
-Received: from pobox.devel.redhat.com ([unix socket])
-	 by pobox.devel.redhat.com (Cyrus v2.2.12-Invoca-RPM-2.2.12-3.RHEL4.1) with LMTPA;
-	 Wed, 05 Jul 2006 04:57:07 -0400
-X-Sieve: CMU Sieve 2.2
-Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
-	by pobox.devel.redhat.com (8.13.1/8.13.1) with ESMTP id k658v7lx024066
-	for <davej at pobox.devel.redhat.com>; Wed, 5 Jul 2006 04:57:07 -0400
-Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
-	by int-mx1.corp.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id k658v6Ru009372
-	for <davej at redhat.com>; Wed, 5 Jul 2006 04:57:06 -0400
-Received: from mx3.mail.elte.hu (mx3.mail.elte.hu [157.181.1.138])
-	by mx1.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id k658v5bS027637
-	for <davej at redhat.com>; Wed, 5 Jul 2006 04:57:06 -0400
-Received: from chiara.elte.hu ([157.181.151.252])
-	by mx3.mail.elte.hu with esmtp (Exim)
-	id 1Fy3Bp-00006f-N2
-	from <mingo at elte.hu>; Wed, 05 Jul 2006 10:56:58 +0200
-Received: by chiara.elte.hu (Postfix, from userid 17806)
-	id 1D2361FC2; Wed,  5 Jul 2006 10:56:59 +0200 (CEST)
-Date: Wed, 5 Jul 2006 10:52:29 +0200
-From: Ingo Molnar <mingo at elte.hu>
-To: Andrew Morton <akpm at osdl.org>, Linus Torvalds <torvalds at osdl.org>
-Cc: linux-kernel at vger.kernel.org, Dave Jones <davej at redhat.com>,
-        Arjan van de Ven <arjan at infradead.org>
-Subject: [patch] lockdep: core, reduce per-lock class-cache size
-Message-ID: <20060705085229.GA8918 at elte.hu>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-User-Agent: Mutt/1.4.2.1i
-Received-SPF: softfail (mx3: transitioning domain of elte.hu does not designate 157.181.151.252 as permitted sender) client-ip=157.181.151.252; envelope-from=mingo at elte.hu; helo=chiara.elte.hu;
-X-ELTE-SpamScore: 0.1
-X-ELTE-SpamLevel: 
-X-ELTE-SpamCheck: no
-X-ELTE-SpamVersion: ELTE 2.0 
-X-ELTE-SpamCheck-Details: score=0.1 required=5.9 tests=AWL,BAYES_50 autolearn=no SpamAssassin version=3.0.3
-	0.0 BAYES_50               BODY: Bayesian spam probability is 40 to 60%
-	[score: 0.5007]
-	0.1 AWL                    AWL: From: address is in the auto white-list
-X-ELTE-VirusStatus: clean
-X-RedHat-Spam-Score: 0 
-Status: RO
-Content-Length: 5396
-Lines: 195
-
-Subject: lockdep: core, reduce per-lock class-cache size
-From: Ingo Molnar <mingo at elte.hu>
-
-lockdep_map is embedded into every lock, which blows up data structure
-sizes all around the kernel. Reduce the class-cache to be for the
-default class only - that is used in 99.9% of the cases and even if
-we dont have a class cached, the lookup in the class-hash is lockless.
-
-this change reduces the per-lock dep_map overhead by 56 bytes on 64-bit
-platforms and by 28 bytes on 32-bit platforms.
-
-Signed-off-by: Ingo Molnar <mingo at elte.hu>
----
- include/linux/lockdep.h |    2 -
- kernel/lockdep.c        |   87 +++++++++++++++++++++++++++++-------------------
- 2 files changed, 55 insertions(+), 34 deletions(-)
-
-Index: linux/include/linux/lockdep.h
-===================================================================
---- linux.orig/include/linux/lockdep.h
-+++ linux/include/linux/lockdep.h
-@@ -120,7 +120,7 @@ struct lock_class {
-  */
- struct lockdep_map {
- 	struct lock_class_key		*key;
--	struct lock_class		*class[MAX_LOCKDEP_SUBCLASSES];
-+	struct lock_class		*class_cache;
- 	const char			*name;
- };
- 
-Index: linux/kernel/lockdep.c
-===================================================================
---- linux.orig/kernel/lockdep.c
-+++ linux/kernel/lockdep.c
-@@ -1104,7 +1104,7 @@ extern void __error_too_big_MAX_LOCKDEP_
-  * itself, so actual lookup of the hash should be once per lock object.
-  */
- static inline struct lock_class *
--register_lock_class(struct lockdep_map *lock, unsigned int subclass)
-+look_up_lock_class(struct lockdep_map *lock, unsigned int subclass)
- {
- 	struct lockdep_subclass_key *key;
- 	struct list_head *hash_head;
-@@ -1148,7 +1148,26 @@ register_lock_class(struct lockdep_map *
- 	 */
- 	list_for_each_entry(class, hash_head, hash_entry)
- 		if (class->key == key)
--			goto out_set;
-+			return class;
-+
-+	return NULL;
-+}
-+
-+/*
-+ * Register a lock's class in the hash-table, if the class is not present
-+ * yet. Otherwise we look it up. We cache the result in the lock object
-+ * itself, so actual lookup of the hash should be once per lock object.
-+ */
-+static inline struct lock_class *
-+register_lock_class(struct lockdep_map *lock, unsigned int subclass)
-+{
-+	struct lockdep_subclass_key *key;
-+	struct list_head *hash_head;
-+	struct lock_class *class;
-+
-+	class = look_up_lock_class(lock, subclass);
-+	if (likely(class))
-+		return class;
- 
- 	/*
- 	 * Debug-check: all keys must be persistent!
-@@ -1163,6 +1182,9 @@ register_lock_class(struct lockdep_map *
- 		return NULL;
- 	}
- 
-+	key = lock->key->subkeys + subclass;
-+	hash_head = classhashentry(key);
-+
- 	__raw_spin_lock(&hash_lock);
- 	/*
- 	 * We have to do the hash-walk again, to avoid races
-@@ -1209,8 +1231,8 @@ register_lock_class(struct lockdep_map *
- out_unlock_set:
- 	__raw_spin_unlock(&hash_lock);
- 
--out_set:
--	lock->class[subclass] = class;
-+	if (!subclass)
-+		lock->class_cache = class;
- 
- 	DEBUG_LOCKS_WARN_ON(class->subclass != subclass);
- 
-@@ -1914,7 +1936,7 @@ void lockdep_init_map(struct lockdep_map
- 	}
- 	lock->name = name;
- 	lock->key = key;
--	memset(lock->class, 0, sizeof(lock->class[0])*MAX_LOCKDEP_SUBCLASSES);
-+	lock->class_cache = NULL;
- }
- 
- EXPORT_SYMBOL_GPL(lockdep_init_map);
-@@ -1928,8 +1950,8 @@ static int __lock_acquire(struct lockdep
- 			  unsigned long ip)
- {
- 	struct task_struct *curr = current;
-+	struct lock_class *class = NULL;
- 	struct held_lock *hlock;
--	struct lock_class *class;
- 	unsigned int depth, id;
- 	int chain_head = 0;
- 	u64 chain_key;
-@@ -1947,8 +1969,11 @@ static int __lock_acquire(struct lockdep
- 		return 0;
- 	}
- 
--	class = lock->class[subclass];
--	/* not cached yet? */
-+	if (!subclass)
-+		class = lock->class_cache;
-+	/*
-+	 * Not cached yet or subclass?
-+	 */
- 	if (unlikely(!class)) {
- 		class = register_lock_class(lock, subclass);
- 		if (!class)
-@@ -2449,48 +2474,44 @@ void lockdep_free_key_range(void *start,
- 
- void lockdep_reset_lock(struct lockdep_map *lock)
- {
--	struct lock_class *class, *next, *entry;
-+	struct lock_class *class, *next;
- 	struct list_head *head;
- 	unsigned long flags;
- 	int i, j;
- 
- 	raw_local_irq_save(flags);
--	__raw_spin_lock(&hash_lock);
- 
- 	/*
--	 * Remove all classes this lock has:
-+	 * Remove all classes this lock might have:
- 	 */
-+	for (j = 0; j < MAX_LOCKDEP_SUBCLASSES; j++) {
-+		/*
-+		 * If the class exists we look it up and zap it:
-+		 */
-+		class = look_up_lock_class(lock, j);
-+		if (class)
-+			zap_class(class);
-+	}
-+	/*
-+	 * Debug check: in the end all mapped classes should
-+	 * be gone.
-+	 */
-+	__raw_spin_lock(&hash_lock);
- 	for (i = 0; i < CLASSHASH_SIZE; i++) {
- 		head = classhash_table + i;
- 		if (list_empty(head))
- 			continue;
- 		list_for_each_entry_safe(class, next, head, hash_entry) {
--			for (j = 0; j < MAX_LOCKDEP_SUBCLASSES; j++) {
--				entry = lock->class[j];
--				if (class == entry) {
--					zap_class(class);
--					lock->class[j] = NULL;
--					break;
--				}
-+			if (unlikely(class == lock->class_cache)) {
-+				__raw_spin_unlock(&hash_lock);
-+				DEBUG_LOCKS_WARN_ON(1);
-+				goto out_restore;
- 			}
- 		}
- 	}
--
--	/*
--	 * Debug check: in the end all mapped classes should
--	 * be gone.
--	 */
--	for (j = 0; j < MAX_LOCKDEP_SUBCLASSES; j++) {
--		entry = lock->class[j];
--		if (!entry)
--			continue;
--		__raw_spin_unlock(&hash_lock);
--		DEBUG_LOCKS_WARN_ON(1);
--		raw_local_irq_restore(flags);
--		return;
--	}
--
- 	__raw_spin_unlock(&hash_lock);
-+
-+out_restore:
- 	raw_local_irq_restore(flags);
- }
- 
-
-From davej  Wed Jul  5 06:05:34 2006
-Return-path: <linux-kernel-owner+davej=40kernelslacker.org-S964781AbWGEJ7B at vger.kernel.org>
-X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
-	nwo.kernelslacker.org
-X-Spam-Level: 
-X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham 
-	version=3.1.3
-Envelope-to: davej at kernelslacker.org
-Delivery-date: Wed, 05 Jul 2006 10:59:26 +0100
-Received: from testure.choralone.org [194.9.77.134]
-	by nwo.kernelslacker.org with IMAP (fetchmail-6.3.4)
-	for <davej at localhost> (single-drop); Wed, 05 Jul 2006 06:05:34 -0400 (EDT)
-Received: from vger.kernel.org ([209.132.176.167])
-	by testure.choralone.org with esmtp (Exim 4.62)
-	(envelope-from <linux-kernel-owner+davej=40kernelslacker.org-S964781AbWGEJ7B at vger.kernel.org>)
-	id 1Fy4AH-0002mo-GQ
-	for davej at kernelslacker.org; Wed, 05 Jul 2006 10:59:26 +0100
-Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
-	id S964781AbWGEJ7B (ORCPT <rfc822;davej at kernelslacker.org>);
-	Wed, 5 Jul 2006 05:59:01 -0400
-Received: (majordomo at vger.kernel.org) by vger.kernel.org id S964785AbWGEJ7B
-	(ORCPT <rfc822;linux-kernel-outgoing>);
-	Wed, 5 Jul 2006 05:59:01 -0400
-Received: from mx3.mail.elte.hu ([157.181.1.138]:55998 "EHLO mx3.mail.elte.hu")
-	by vger.kernel.org with ESMTP id S964781AbWGEJ7A (ORCPT
-	<rfc822;linux-kernel at vger.kernel.org>);
-	Wed, 5 Jul 2006 05:59:00 -0400
-Received: from chiara.elte.hu ([157.181.151.252])
-	by mx3.mail.elte.hu with esmtp (Exim)
-	id 1Fy49l-0004H2-FQ
-	from <mingo at elte.hu>; Wed, 05 Jul 2006 11:58:53 +0200
-Received: by chiara.elte.hu (Postfix, from userid 17806)
-	id E6E571FC2; Wed,  5 Jul 2006 11:58:54 +0200 (CEST)
-Date:	Wed, 5 Jul 2006 11:54:25 +0200
-From:	Ingo Molnar <mingo at elte.hu>
-To:	Andrew Morton <akpm at osdl.org>, Linus Torvalds <torvalds at osdl.org>
-Cc:	linux-kernel at vger.kernel.org,
-	Arjan van de Ven <arjan at infradead.org>
-Subject: [patch] uninline init_waitqueue_*() functions, fix
-Message-ID: <20060705095425.GA13874 at elte.hu>
-References: <20060705084914.GA8798 at elte.hu>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-In-Reply-To: <20060705084914.GA8798 at elte.hu>
-User-Agent: Mutt/1.4.2.1i
-Received-SPF: softfail (mx3: transitioning domain of elte.hu does not designate 157.181.151.252 as permitted sender) client-ip=157.181.151.252; envelope-from=mingo at elte.hu; helo=chiara.elte.hu;
-X-ELTE-SpamScore: 0.1
-X-ELTE-SpamLevel: 
-X-ELTE-SpamCheck: no
-X-ELTE-SpamVersion: ELTE 2.0 
-X-ELTE-SpamCheck-Details: score=0.1 required=5.9 tests=AWL,BAYES_50 autolearn=no SpamAssassin version=3.0.3
-	0.0 BAYES_50               BODY: Bayesian spam probability is 40 to 60%
-	[score: 0.5011]
-	0.1 AWL                    AWL: From: address is in the auto white-list
-X-ELTE-VirusStatus: clean
-Sender:	linux-kernel-owner at vger.kernel.org
-Precedence: bulk
-X-Mailing-List:	linux-kernel at vger.kernel.org
-Status: RO
-Content-Length: 2171
-Lines: 58
-
-Subject: uninline init_waitqueue_*() functions, fix
-From: Ingo Molnar <mingo at elte.hu>
-
-fix lockdep on-stack-completion initializer, now that waitqueue_lock_key 
-is private to kernel/wait.c.
-
-Signed-off-by: Ingo Molnar <mingo at elte.hu>
----
- arch/x86_64/kernel/smpboot.c |    4 +---
- include/linux/completion.h   |    5 ++++-
- 2 files changed, 5 insertions(+), 4 deletions(-)
-
-Index: linux/arch/x86_64/kernel/smpboot.c
-===================================================================
---- linux.orig/arch/x86_64/kernel/smpboot.c
-+++ linux/arch/x86_64/kernel/smpboot.c
-@@ -771,12 +771,10 @@ static int __cpuinit do_boot_cpu(int cpu
- 	unsigned long start_rip;
- 	struct create_idle c_idle = {
- 		.cpu = cpu,
--		.done = COMPLETION_INITIALIZER(c_idle.done),
-+		.done = COMPLETION_INITIALIZER_ONSTACK(c_idle.done),
- 	};
- 	DECLARE_WORK(work, do_fork_idle, &c_idle);
- 
--	lockdep_set_class(&c_idle.done.wait.lock, &waitqueue_lock_key);
--
- 	/* allocate memory for gdts of secondary cpus. Hotplug is considered */
- 	if (!cpu_gdt_descr[cpu].address &&
- 		!(cpu_gdt_descr[cpu].address = get_zeroed_page(GFP_KERNEL))) {
-Index: linux/include/linux/completion.h
-===================================================================
---- linux.orig/include/linux/completion.h
-+++ linux/include/linux/completion.h
-@@ -18,6 +18,9 @@ struct completion {
- #define COMPLETION_INITIALIZER(work) \
- 	{ 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) }
- 
-+#define COMPLETION_INITIALIZER_ONSTACK(work) \
-+	({ init_completion(&work); work; })
-+
- #define DECLARE_COMPLETION(work) \
- 	struct completion work = COMPLETION_INITIALIZER(work)
- 
-@@ -28,7 +31,7 @@ struct completion {
-  */
- #ifdef CONFIG_LOCKDEP
- # define DECLARE_COMPLETION_ONSTACK(work) \
--	struct completion work = ({ init_completion(&work); work; })
-+	struct completion work = COMPLETION_INITIALIZER_ONSTACK(work)
- #else
- # define DECLARE_COMPLETION_ONSTACK(work) DECLARE_COMPLETION(work)
- #endif
--
-To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
-the body of a message to majordomo at vger.kernel.org
-More majordomo info at  http://vger.kernel.org/majordomo-info.html
-Please read the FAQ at  http://www.tux.org/lkml/
-
 From davej  Fri Jul  7 03:35:19 2006
 Return-Path: <SRS0+ef490921a1c7f4a961d7+1048+infradead.org+arjan at pentafluge.srs.infradead.org>
 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
@@ -694,224 +204,6 @@
  	module_put(owner);
 
 
-From davej  Mon Jul 10 07:52:23 2006
-Return-Path: <SRS0+f93f76af6977eb5e6772+1051+infradead.org+arjan at pentafluge.srs.infradead.org>
-X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 
-	nwo.kernelslacker.org
-X-Spam-Level: 
-X-Spam-Status: No, score=-1.0 required=5.0 tests=AWL,BAYES_00,
-	UNPARSEABLE_RELAY autolearn=ham version=3.1.3
-Received: from pobox.devel.redhat.com [10.11.255.8]
-	by nwo.kernelslacker.org with IMAP (fetchmail-6.3.4)
-	for <davej at localhost> (single-drop); Mon, 10 Jul 2006 07:52:23 -0400 (EDT)
-Received: from pobox.devel.redhat.com ([unix socket])
-	 by pobox.devel.redhat.com (Cyrus v2.2.12-Invoca-RPM-2.2.12-3.RHEL4.1) with LMTPA;
-	 Mon, 10 Jul 2006 07:51:55 -0400
-X-Sieve: CMU Sieve 2.2
-Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
-	by pobox.devel.redhat.com (8.13.1/8.13.1) with ESMTP id k6ABps7v003580
-	for <davej at pobox.devel.redhat.com>; Mon, 10 Jul 2006 07:51:54 -0400
-Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
-	by int-mx1.corp.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id k6ABpsGG020974
-	for <davej at redhat.com>; Mon, 10 Jul 2006 07:51:54 -0400
-Received: from pentafluge.infradead.org (pentafluge.infradead.org [213.146.154.40])
-	by mx1.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id k6ABprOh027001
-	for <Davej at redhat.com>; Mon, 10 Jul 2006 07:51:53 -0400
-Received: from a222036.upc-a.chello.nl ([62.163.222.36] helo=[172.31.3.43])
-	by pentafluge.infradead.org with esmtpsa (Exim 4.62 #1 (Red Hat Linux))
-	id 1FzuIl-0004cv-It
-	for Davej at redhat.com; Mon, 10 Jul 2006 12:51:47 +0100
-Subject: a few lockdep patches for rawhide
-From: Arjan van de Ven <arjan at infradead.org>
-To: Davej at redhat.com
-Content-Type: multipart/mixed; boundary="=-bGjXZLP5LdReK7Mxtci4"
-Date: Mon, 10 Jul 2006 13:51:46 +0200
-Message-Id: <1152532306.4874.28.camel at laptopd505.fenrus.org>
-Mime-Version: 1.0
-X-Mailer: Evolution 2.2.3 (2.2.3-2.fc4) 
-X-SRS-Rewrite: SMTP reverse-path rewritten from <arjan at infradead.org> by pentafluge.infradead.org
-	See http://www.infradead.org/rpr.html
-X-RedHat-Spam-Score: 2.646 **
-Status: RO
-X-Status: A
-Content-Length: 5441
-Lines: 174
-
-
---=-bGjXZLP5LdReK7Mxtci4
-Content-Type: text/plain
-Content-Transfer-Encoding: 7bit
-
-Hi,
-
-please stick these into rawhide even before akpm sends them to linus..
-just to cut down the false positives
-
-Greetings,
-   Arjan van de Ven
-
---=-bGjXZLP5LdReK7Mxtci4
-Content-Disposition: attachment; filename=bt2.patch
-Content-Type: text/x-patch; name=bt2.patch; charset=UTF-8
-Content-Transfer-Encoding: 7bit
-
-Index: linux-2.6.18-rc1/net/bluetooth/l2cap.c
-===================================================================
---- linux-2.6.18-rc1.orig/net/bluetooth/l2cap.c
-+++ linux-2.6.18-rc1/net/bluetooth/l2cap.c
-@@ -185,7 +185,7 @@ static inline void l2cap_chan_unlink(str
- {
- 	struct sock *next = l2cap_pi(sk)->next_c, *prev = l2cap_pi(sk)->prev_c;
- 
--	write_lock(&l->lock);
-+	write_lock_bh(&l->lock);
- 	if (sk == l->head)
- 		l->head = next;
- 
-@@ -193,7 +193,7 @@ static inline void l2cap_chan_unlink(str
- 		l2cap_pi(next)->prev_c = prev;
- 	if (prev)
- 		l2cap_pi(prev)->next_c = next;
--	write_unlock(&l->lock);
-+	write_unlock_bh(&l->lock);
- 
- 	__sock_put(sk);
- }
-@@ -313,9 +313,9 @@ static void l2cap_conn_del(struct hci_co
- static inline void l2cap_chan_add(struct l2cap_conn *conn, struct sock *sk, struct sock *parent)
- {
- 	struct l2cap_chan_list *l = &conn->chan_list;
--	write_lock(&l->lock);
-+	write_lock_bh(&l->lock);
- 	__l2cap_chan_add(conn, sk, parent);
--	write_unlock(&l->lock);
-+	write_unlock_bh(&l->lock);
- }
- 
- static inline u8 l2cap_get_ident(struct l2cap_conn *conn)
-@@ -328,14 +328,14 @@ static inline u8 l2cap_get_ident(struct 
- 	 *  200 - 254 are used by utilities like l2ping, etc.
- 	 */
- 
--	spin_lock(&conn->lock);
-+	spin_lock_bh(&conn->lock);
- 
- 	if (++conn->tx_ident > 128)
- 		conn->tx_ident = 1;
- 
- 	id = conn->tx_ident;
- 
--	spin_unlock(&conn->lock);
-+	spin_unlock_bh(&conn->lock);
- 
- 	return id;
- }
-@@ -1416,11 +1416,11 @@ static inline int l2cap_connect_req(stru
- 	if (!sk)
- 		goto response;
- 
--	write_lock(&list->lock);
-+	write_lock_bh(&list->lock);
- 
- 	/* Check if we already have channel with that dcid */
- 	if (__l2cap_get_chan_by_dcid(list, scid)) {
--		write_unlock(&list->lock);
-+		write_unlock_bh(&list->lock);
- 		sock_set_flag(sk, SOCK_ZAPPED);
- 		l2cap_sock_kill(sk);
- 		goto response;
-@@ -1458,7 +1458,7 @@ static inline int l2cap_connect_req(stru
- 	result = status = 0;
- 
- done:
--	write_unlock(&list->lock);
-+	write_unlock_bh(&list->lock);
- 
- response:
- 	bh_unlock_sock(parent);
-
---=-bGjXZLP5LdReK7Mxtci4
-Content-Disposition: attachment; filename=lockdep-off-on-oops.patch
-Content-Type: message/rfc822; name=lockdep-off-on-oops.patch
-
-From: Arjan van de Ven <arjan at linux.intel.com>
-Subject: lockdep: disable lock debugging when kernel state becomes untrusted
-Date: Mon, 10 Jul 2006 13:51:43 +0200
-Message-Id: <1152532303.4874.27.camel at laptopd505.fenrus.org>
-Mime-Version: 1.0
-Content-Transfer-Encoding: 7bit
-
-This patch disables lockdep debugging in two situations where the integrity
-of the kernel no longer is guaranteed: when oopsing and when hitting a
-tainting-condition. The goal is to not get weird lockdep traces that don't
-make sense or are otherwise undebuggable, to not waste time.
-
-Lockdep assumes that the previous state it knows about is valid to operate,
-which is why lockdep turns itself off after the first violation it reports,
-after that point it can no longer make that assumption.
-
-A kernel oops means that the integrity of the kernel compromised; in addition
-anything lockdep would report is of lesser importance than the oops.
-
-All the tainting conditions are of similar integrity-violating nature and also
-make debugging/diagnosing more difficult.
-
-Signed-off-by: Arjan van de Ven <arjan at linux.intel.com>
-Signed-off-by: Ingo Molnar <mingo at elte.hu>
-
-
-Index: linux-2.6.18-rc1/kernel/panic.c
-===================================================================
---- linux-2.6.18-rc1.orig/kernel/panic.c
-+++ linux-2.6.18-rc1/kernel/panic.c
-@@ -172,6 +172,7 @@ const char *print_tainted(void)
- 
- void add_taint(unsigned flag)
- {
-+	debug_locks_off(); /* can't trust the integrity of the kernel anymore */
- 	tainted |= flag;
- }
- EXPORT_SYMBOL(add_taint);
-@@ -256,6 +257,7 @@ int oops_may_print(void)
-  */
- void oops_enter(void)
- {
-+	debug_locks_off(); /* can't trust the integrity of the kernel anymore */
- 	do_oops_enter_exit();
- }
- 
-
---=-bGjXZLP5LdReK7Mxtci4
-Content-Disposition: attachment; filename=skbuff.patch
-Content-Type: text/x-patch; name=skbuff.patch; charset=UTF-8
-Content-Transfer-Encoding: 7bit
-
-Index: linux-2.6.18-rc1/include/linux/skbuff.h
-===================================================================
---- linux-2.6.18-rc1.orig/include/linux/skbuff.h
-+++ linux-2.6.18-rc1/include/linux/skbuff.h
-@@ -606,10 +606,17 @@ static inline __u32 skb_queue_len(const 
- 
- extern struct lock_class_key skb_queue_lock_key;
- 
-+/*
-+ * This function creates a split out lock class for each invocation;
-+ * this is needed for now since a whole lot of users of the skb-queue
-+ * infrastructure in drivers have different locking usage (in hardirq)
-+ * than the networking core (in softirq only). In the long run either the
-+ * network layer or drivers should need annotation to consolidate the
-+ * main types of usage into 3 classes.
-+ */
- static inline void skb_queue_head_init(struct sk_buff_head *list)
- {
- 	spin_lock_init(&list->lock);
--	lockdep_set_class(&list->lock, &skb_queue_lock_key);
- 	list->prev = list->next = (struct sk_buff *)list;
- 	list->qlen = 0;
- }
-
---=-bGjXZLP5LdReK7Mxtci4--
-
 From davej  Mon Jul 10 10:08:02 2006
 Return-Path: <SRS0+f93f76af6977eb5e6772+1051+infradead.org+arjan at pentafluge.srs.infradead.org>
 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on 




More information about the fedora-cvs-commits mailing list