rpms/kernel/devel patch-2.6.18-rc3-git3.bz2.sign, NONE, 1.1 .cvsignore, 1.503, 1.504 kernel-2.6.spec, 1.2517, 1.2518 linux-2.6-lockdep-fixes.patch, 1.15, 1.16 sources, 1.467, 1.468 upstream, 1.409, 1.410 linux-2.6-x86_64-entry-more-unwind.patch, 1.1, NONE patch-2.6.18-rc3-git1.bz2.sign, 1.1, NONE patch-2.6.18-rc3-git2.bz2.sign, 1.1, NONE

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Thu Aug 3 17:28:20 UTC 2006


Author: davej

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

Modified Files:
	.cvsignore kernel-2.6.spec linux-2.6-lockdep-fixes.patch 
	sources upstream 
Added Files:
	patch-2.6.18-rc3-git3.bz2.sign 
Removed Files:
	linux-2.6-x86_64-entry-more-unwind.patch 
	patch-2.6.18-rc3-git1.bz2.sign patch-2.6.18-rc3-git2.bz2.sign 
Log Message:
git3


--- NEW FILE patch-2.6.18-rc3-git3.bz2.sign ---
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.4 (GNU/Linux)
Comment: See http://www.kernel.org/signature.html for info

iD8DBQBE0Z9syGugalF9Dw4RAnyMAJ4ypKLLHy5A1vuAMSvlM9Dxb+abmwCcC00a
k4+fX0avlgMnt21qBaaevy4=
=YJrT
-----END PGP SIGNATURE-----


Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/.cvsignore,v
retrieving revision 1.503
retrieving revision 1.504
diff -u -r1.503 -r1.504
--- .cvsignore	2 Aug 2006 22:56:39 -0000	1.503
+++ .cvsignore	3 Aug 2006 17:28:17 -0000	1.504
@@ -4,4 +4,4 @@
 linux-2.6.17.tar.bz2
 xen-10730.tar.bz2
 patch-2.6.18-rc3.bz2
-patch-2.6.18-rc3-git2.bz2
+patch-2.6.18-rc3-git3.bz2


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2517
retrieving revision 1.2518
diff -u -r1.2517 -r1.2518
--- kernel-2.6.spec	3 Aug 2006 08:53:00 -0000	1.2517
+++ kernel-2.6.spec	3 Aug 2006 17:28:17 -0000	1.2518
@@ -264,7 +264,7 @@
 # Patches 0 through 100 are meant for core subsystem upgrades
 #
 Patch1: patch-2.6.18-rc3.bz2
-Patch2: patch-2.6.18-rc3-git2.bz2
+Patch2: patch-2.6.18-rc3-git3.bz2
 
 # Patches 10 through 99 are for things that are going upstream really soon.
 Patch10: linux-2.6-utrace.patch
@@ -275,7 +275,6 @@
 
 Patch200: linux-2.6-x86-tune-generic.patch
 Patch201: linux-2.6-x86-vga-vidfail.patch
-Patch202: linux-2.6-x86_64-entry-more-unwind.patch
 Patch203: linux-2.6-x86_64-silence-up-apic-errors.patch
 Patch207: linux-2.6-x86_64-tif-restore-sigmask.patch
 Patch208: linux-2.6-x86_64-add-ppoll-pselect.patch
@@ -735,8 +734,6 @@
 # for the installer cd that wants to automatically fall back to textmode
 # in that case
 %patch201 -p1
-# Fix backtracing for interrupt stacks.
-%patch202 -p1
 # Suppress APIC errors on UP x86-64.
 %patch203 -p1
 # Support TIF_RESTORE_SIGMASK on x86_64
@@ -1634,6 +1631,9 @@
 %endif
 
 %changelog
+* Thu Aug  3 2006 Dave Jones <davej at redhat.com>
+- 2.6.18rc3-git3
+
 * Thu Aug  3 2006 Jon Masters <jcm at redhat.com>
 - Copy .config to include/config/auto.conf to avoid unnecessary "make prepare".
 - This should finally fix #197220.

linux-2.6-lockdep-fixes.patch:
 a/net/ipv6/icmp.c                             |   13 ++++++++++
 linux-2.6.17-mm6/include/net/sock.h           |   33 +++++++++++++++++++++++---
 linux-2.6.18-rc1/drivers/input/serio/libps2.c |    6 ++--
 linux-2.6.18-rc1/include/linux/libps2.h       |   12 ++++++++-
 linux-2.6.18-rc1/net/socket.c                 |    8 +++++-
 5 files changed, 64 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.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- linux-2.6-lockdep-fixes.patch	1 Aug 2006 23:22:52 -0000	1.15
+++ linux-2.6-lockdep-fixes.patch	3 Aug 2006 17:28:17 -0000	1.16
@@ -338,394 +338,6 @@
  asmlinkage long sys_socket(int family, int type, int protocol)
 
 
-From davej  Sat Jul 29 00:35:14 2006
-Return-path: <linux-kernel-owner+davej=40kernelslacker.org-S1161468AbWG2Edz 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=-101.8 required=5.0 tests=AWL,BAYES_00,
-	USER_IN_WHITELIST autolearn=ham version=3.1.3
-Envelope-to: davej at kernelslacker.org
-Delivery-date: Sat, 29 Jul 2006 05:34:29 +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); Sat, 29 Jul 2006 00:35:14 -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-S1161468AbWG2Edz at vger.kernel.org>)
-	id 1G6gWy-0002hG-HE
-	for davej at kernelslacker.org; Sat, 29 Jul 2006 05:34:29 +0100
-Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
-	id S1161468AbWG2Edz (ORCPT <rfc822;davej at kernelslacker.org>);
-	Sat, 29 Jul 2006 00:33:55 -0400
-Received: (majordomo at vger.kernel.org) by vger.kernel.org id S1161464AbWG2Edz
-	(ORCPT <rfc822;linux-kernel-outgoing>);
-	Sat, 29 Jul 2006 00:33:55 -0400
-Received: from rhun.apana.org.au ([64.62.148.172]:63751 "EHLO
-	arnor.apana.org.au") by vger.kernel.org with ESMTP id S1161466AbWG2Edy
-	(ORCPT <rfc822;linux-kernel at vger.kernel.org>);
-	Sat, 29 Jul 2006 00:33:54 -0400
-Received: from gondolin.me.apana.org.au ([192.168.0.6])
-	by arnor.apana.org.au with esmtp (Exim 4.50 #1 (Debian))
-	id 1G6gWD-0007H2-SX; Sat, 29 Jul 2006 14:33:41 +1000
-Received: from herbert by gondolin.me.apana.org.au with local (Exim 3.36 #1 (Debian))
-	id 1G6gVx-0001px-00; Sat, 29 Jul 2006 14:33:25 +1000
-Date:	Sat, 29 Jul 2006 14:33:25 +1000
-To:	"David S. Miller" <davem at davemloft.net>,
-	YOSHIFUJI Hideaki <yoshfuji at linux-ipv6.org>,
-	Matt Domsch <Matt_Domsch at dell.com>
-Cc:	linux-kernel at vger.kernel.org, netdev at vger.kernel.org
-Subject: [IPV6]: Audit all ip6_dst_lookup/ip6_dst_store calls
-Message-ID: <20060729043325.GA7035 at gondor.apana.org.au>
-References: <20060728194531.GA17744 at lists.us.dell.com>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-In-Reply-To: <20060728194531.GA17744 at lists.us.dell.com>
-User-Agent: Mutt/1.5.9i
-From:	Herbert Xu <herbert at gondor.apana.org.au>
-Sender:	linux-kernel-owner at vger.kernel.org
-Precedence: bulk
-X-Mailing-List:	linux-kernel at vger.kernel.org
-Status: RO
-Content-Length: 10664
-Lines: 334
-
-On Fri, Jul 28, 2006 at 07:45:31PM +0000, Matt Domsch wrote:
-> Triggered on Fedora rawhide kernel-2.6.17-1.2462.fc6 x86_64 which is
-> based on 2.6.18rc2-git6.  IPv6 was in use at the time.
-> 
-> =================================
-> [ INFO: inconsistent lock state ]
-> ---------------------------------
-> inconsistent {softirq-on-W} -> {in-softirq-R} usage.
-> swapper/0 [HC0[0]:SC1[1]:HE1:SE0] takes:
->  (&sk->sk_dst_lock){---?}, at: [<ffffffff80418ef3>]
->  sk_dst_check+0x26/0x12b
-> {softirq-on-W} state was registered at:
->   [<ffffffff802a874d>] lock_acquire+0x4a/0x69
->   [<ffffffff802672a1>] _write_lock+0x24/0x31
->   [<ffffffff8044a26b>] ip4_datagram_connect+0x2e1/0x350
->   [<ffffffff80451214>] inet_dgram_connect+0x57/0x65
->   [<ffffffff8041652a>] sys_connect+0x7d/0xa4
->   [<ffffffff8025ff0d>] system_call+0x7d/0x83
-
-Thanks for the report.  This is actually a false positive because
-by these two paths can't intersect since one is a UDP while the other
-is TCP.
-
-However, here is a patch which should shut up the validator as well
-as removing unnecessary locking from most callers of ip6_dst_lookup.
-
-[IPV6]: Audit all ip6_dst_lookup/ip6_dst_store calls
-
-The current users of ip6_dst_lookup can be divided into two classes:
-
-1) The caller holds no locks and is in user-context (UDP).
-2) The caller does not want to lookup the dst cache at all.
-
-The second class covers everyone except UDP because most people do
-the cache lookup directly before calling ip6_dst_lookup.  This patch
-adds ip6_sk_dst_lookup for the first class.
-
-Similarly ip6_dst_store users can be divded into those that need to
-take the socket dst lock and those that don't.  This patch adds
-__ip6_dst_store for those (everyone except UDP/datagram) that don't
-need an extra lock.
-
-Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
-
-Cheers,
--- 
-Visit Openswan at http://www.openswan.org/
-Email: Herbert Xu ~{PmV>HI~} <herbert at gondor.apana.org.au>
-Home Page: http://gondor.apana.org.au/~herbert/
-PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
---
-diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h
-index ab29daf..96b0e66 100644
---- a/include/net/ip6_route.h
-+++ b/include/net/ip6_route.h
-@@ -139,16 +139,22 @@ extern rwlock_t rt6_lock;
- /*
-  *	Store a destination cache entry in a socket
-  */
--static inline void ip6_dst_store(struct sock *sk, struct dst_entry *dst,
--				     struct in6_addr *daddr)
-+static inline void __ip6_dst_store(struct sock *sk, struct dst_entry *dst,
-+				   struct in6_addr *daddr)
- {
- 	struct ipv6_pinfo *np = inet6_sk(sk);
- 	struct rt6_info *rt = (struct rt6_info *) dst;
- 
--	write_lock(&sk->sk_dst_lock);
- 	sk_setup_caps(sk, dst);
- 	np->daddr_cache = daddr;
- 	np->dst_cookie = rt->rt6i_node ? rt->rt6i_node->fn_sernum : 0;
-+}
-+
-+static inline void ip6_dst_store(struct sock *sk, struct dst_entry *dst,
-+				 struct in6_addr *daddr)
-+{
-+	write_lock(&sk->sk_dst_lock);
-+	__ip6_dst_store(sk, dst, daddr);
- 	write_unlock(&sk->sk_dst_lock);
- }
- 
-diff --git a/include/net/ipv6.h b/include/net/ipv6.h
-index a8fdf79..ece7e8a 100644
---- a/include/net/ipv6.h
-+++ b/include/net/ipv6.h
-@@ -468,6 +468,9 @@ extern void			ip6_flush_pending_frames(s
- extern int			ip6_dst_lookup(struct sock *sk,
- 					       struct dst_entry **dst,
- 					       struct flowi *fl);
-+extern int			ip6_sk_dst_lookup(struct sock *sk,
-+						  struct dst_entry **dst,
-+						  struct flowi *fl);
- 
- /*
-  *	skb processing functions
-diff --git a/net/dccp/ipv6.c b/net/dccp/ipv6.c
-index 9f3d4d7..610c722 100644
---- a/net/dccp/ipv6.c
-+++ b/net/dccp/ipv6.c
-@@ -230,7 +230,7 @@ static int dccp_v6_connect(struct sock *
- 	ipv6_addr_copy(&np->saddr, saddr);
- 	inet->rcv_saddr = LOOPBACK4_IPV6;
- 
--	ip6_dst_store(sk, dst, NULL);
-+	__ip6_dst_store(sk, dst, NULL);
- 
- 	icsk->icsk_ext_hdr_len = 0;
- 	if (np->opt != NULL)
-@@ -863,7 +863,7 @@ static struct sock *dccp_v6_request_recv
- 	 * comment in that function for the gory details. -acme
- 	 */
- 
--	ip6_dst_store(newsk, dst, NULL);
-+	__ip6_dst_store(newsk, dst, NULL);
- 	newsk->sk_route_caps = dst->dev->features & ~(NETIF_F_IP_CSUM |
- 						      NETIF_F_TSO);
- 	newdp6 = (struct dccp6_sock *)newsk;
-diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
-index 5a0ba58..ac85e9c 100644
---- a/net/ipv6/af_inet6.c
-+++ b/net/ipv6/af_inet6.c
-@@ -658,7 +658,7 @@ int inet6_sk_rebuild_header(struct sock 
- 			return err;
- 		}
- 
--		ip6_dst_store(sk, dst, NULL);
-+		__ip6_dst_store(sk, dst, NULL);
- 	}
- 
- 	return 0;
-diff --git a/net/ipv6/inet6_connection_sock.c b/net/ipv6/inet6_connection_sock.c
-index 5c950cc..bf49107 100644
---- a/net/ipv6/inet6_connection_sock.c
-+++ b/net/ipv6/inet6_connection_sock.c
-@@ -185,7 +185,7 @@ int inet6_csk_xmit(struct sk_buff *skb, 
- 			return err;
- 		}
- 
--		ip6_dst_store(sk, dst, NULL);
-+		__ip6_dst_store(sk, dst, NULL);
- 	}
- 
- 	skb->dst = dst_clone(dst);
-diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
-index 3bc74ce..5e74a37 100644
---- a/net/ipv6/ip6_output.c
-+++ b/net/ipv6/ip6_output.c
-@@ -723,48 +723,51 @@ fail:
- 	return err;
- }
- 
--int ip6_dst_lookup(struct sock *sk, struct dst_entry **dst, struct flowi *fl)
-+static struct dst_entry *ip6_sk_dst_check(struct sock *sk,
-+					  struct dst_entry *dst,
-+					  struct flowi *fl)
- {
--	int err = 0;
-+	struct ipv6_pinfo *np = inet6_sk(sk);
-+	struct rt6_info *rt = (struct rt6_info *)dst;
- 
--	*dst = NULL;
--	if (sk) {
--		struct ipv6_pinfo *np = inet6_sk(sk);
--	
--		*dst = sk_dst_check(sk, np->dst_cookie);
--		if (*dst) {
--			struct rt6_info *rt = (struct rt6_info*)*dst;
--	
--			/* Yes, checking route validity in not connected
--			 * case is not very simple. Take into account,
--			 * that we do not support routing by source, TOS,
--			 * and MSG_DONTROUTE 		--ANK (980726)
--			 *
--			 * 1. If route was host route, check that
--			 *    cached destination is current.
--			 *    If it is network route, we still may
--			 *    check its validity using saved pointer
--			 *    to the last used address: daddr_cache.
--			 *    We do not want to save whole address now,
--			 *    (because main consumer of this service
--			 *    is tcp, which has not this problem),
--			 *    so that the last trick works only on connected
--			 *    sockets.
--			 * 2. oif also should be the same.
--			 */
--			if (((rt->rt6i_dst.plen != 128 ||
--			      !ipv6_addr_equal(&fl->fl6_dst,
--					       &rt->rt6i_dst.addr))
--			     && (np->daddr_cache == NULL ||
--				 !ipv6_addr_equal(&fl->fl6_dst,
--						  np->daddr_cache)))
--			    || (fl->oif && fl->oif != (*dst)->dev->ifindex)) {
--				dst_release(*dst);
--				*dst = NULL;
--			}
--		}
-+	if (!dst)
-+		goto out;
-+
-+	/* Yes, checking route validity in not connected
-+	 * case is not very simple. Take into account,
-+	 * that we do not support routing by source, TOS,
-+	 * and MSG_DONTROUTE 		--ANK (980726)
-+	 *
-+	 * 1. If route was host route, check that
-+	 *    cached destination is current.
-+	 *    If it is network route, we still may
-+	 *    check its validity using saved pointer
-+	 *    to the last used address: daddr_cache.
-+	 *    We do not want to save whole address now,
-+	 *    (because main consumer of this service
-+	 *    is tcp, which has not this problem),
-+	 *    so that the last trick works only on connected
-+	 *    sockets.
-+	 * 2. oif also should be the same.
-+	 */
-+	if (((rt->rt6i_dst.plen != 128 ||
-+	      !ipv6_addr_equal(&fl->fl6_dst, &rt->rt6i_dst.addr))
-+	     && (np->daddr_cache == NULL ||
-+		 !ipv6_addr_equal(&fl->fl6_dst, np->daddr_cache)))
-+	    || (fl->oif && fl->oif != dst->dev->ifindex)) {
-+		dst_release(dst);
-+		dst = NULL;
- 	}
- 
-+out:
-+	return dst;
-+}
-+
-+static int ip6_dst_lookup_tail(struct sock *sk,
-+			       struct dst_entry **dst, struct flowi *fl)
-+{
-+	int err;
-+
- 	if (*dst == NULL)
- 		*dst = ip6_route_output(sk, fl);
- 
-@@ -773,7 +776,6 @@ int ip6_dst_lookup(struct sock *sk, stru
- 
- 	if (ipv6_addr_any(&fl->fl6_src)) {
- 		err = ipv6_get_saddr(*dst, &fl->fl6_dst, &fl->fl6_src);
--
- 		if (err)
- 			goto out_err_release;
- 	}
-@@ -786,8 +788,48 @@ out_err_release:
- 	return err;
- }
- 
-+/**
-+ *	ip6_dst_lookup - perform route lookup on flow
-+ *	@sk: socket which provides route info
-+ *	@dst: pointer to dst_entry * for result
-+ *	@fl: flow to lookup
-+ *
-+ *	This function performs a route lookup on the given flow.
-+ *
-+ *	It returns zero on success, or a standard errno code on error.
-+ */
-+int ip6_dst_lookup(struct sock *sk, struct dst_entry **dst, struct flowi *fl)
-+{
-+	*dst = NULL;
-+	return ip6_dst_lookup_tail(sk, dst, fl);
-+}
- EXPORT_SYMBOL_GPL(ip6_dst_lookup);
- 
-+/**
-+ *	ip6_sk_dst_lookup - perform socket cached route lookup on flow
-+ *	@sk: socket which provides the dst cache and route info
-+ *	@dst: pointer to dst_entry * for result
-+ *	@fl: flow to lookup
-+ *
-+ *	This function performs a route lookup on the given flow with the
-+ *	possibility of using the cached route in the socket if it is valid.
-+ *	It will take the socket dst lock when operating on the dst cache.
-+ *	As a result, this function can only be used in process context.
-+ *
-+ *	It returns zero on success, or a standard errno code on error.
-+ */
-+int ip6_sk_dst_lookup(struct sock *sk, struct dst_entry **dst, struct flowi *fl)
-+{
-+	*dst = NULL;
-+	if (sk) {
-+		*dst = sk_dst_check(sk, inet6_sk(sk)->dst_cookie);
-+		*dst = ip6_sk_dst_check(sk, *dst, fl);
-+	}
-+
-+	return ip6_dst_lookup_tail(sk, dst, fl);
-+}
-+EXPORT_SYMBOL_GPL(ip6_sk_dst_lookup);
-+
- static inline int ip6_ufo_append_data(struct sock *sk,
- 			int getfrag(void *from, char *to, int offset, int len,
- 			int odd, struct sk_buff *skb),
-diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
-index 923989d..b76fd7f 100644
---- a/net/ipv6/tcp_ipv6.c
-+++ b/net/ipv6/tcp_ipv6.c
-@@ -270,7 +270,7 @@ static int tcp_v6_connect(struct sock *s
- 	inet->rcv_saddr = LOOPBACK4_IPV6;
- 
- 	sk->sk_gso_type = SKB_GSO_TCPV6;
--	ip6_dst_store(sk, dst, NULL);
-+	__ip6_dst_store(sk, dst, NULL);
- 
- 	icsk->icsk_ext_hdr_len = 0;
- 	if (np->opt)
-@@ -947,7 +947,7 @@ static struct sock * tcp_v6_syn_recv_soc
- 	 */
- 
- 	sk->sk_gso_type = SKB_GSO_TCPV6;
--	ip6_dst_store(newsk, dst, NULL);
-+	__ip6_dst_store(newsk, dst, NULL);
- 
- 	newtcp6sk = (struct tcp6_sock *)newsk;
- 	inet_sk(newsk)->pinet6 = &newtcp6sk->inet6;
-diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
-index ccc57f4..3d54f24 100644
---- a/net/ipv6/udp.c
-+++ b/net/ipv6/udp.c
-@@ -782,7 +782,7 @@ do_udp_sendmsg:
- 		connected = 0;
- 	}
- 
--	err = ip6_dst_lookup(sk, &dst, fl);
-+	err = ip6_sk_dst_lookup(sk, &dst, fl);
- 	if (err)
- 		goto out;
- 	if (final_p)
--
-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: Ingo Molnar <mingo at elte.hu>
 
 Split off __icmpv6_socket's sk->sk_dst_lock class, because it gets used
@@ -776,96 +388,3 @@
  		/* Enough space for 2 64K ICMP packets, including
  		 * sk_buff struct overhead.
 _
-From: Arjan van de Ven <arjan at linux.intel.com>
-
-The skb_queue_head_init() function is used both in drivers for private use
-and in the core networking code.  The usage models are vastly set of
-functions that is only softirq safe; while the driver usage tends to be
-more limited to a few hardirq safe accessor functions.  Rather than
-annotating all 133+ driver usages, for now just split this lock into a per
-queue class.  This change is obviously safe and probably should make
-2.6.18.
-
-Signed-off-by: Arjan van de Ven <arjan at linux.intel.com>
-Signed-off-by: Ingo Molnar <mingo at elte.hu>
-Signed-off-by: Andrew Morton <akpm at osdl.org>
----
-
- include/linux/skbuff.h |    9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff -puN include/linux/skbuff.h~lockdep-split-the-skb_queue_head_init-lock-class include/linux/skbuff.h
---- a/include/linux/skbuff.h~lockdep-split-the-skb_queue_head_init-lock-class
-+++ a/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;
- }
-_
-From: Adrian Bunk <bunk at stusta.de>
-
-On Thu, Jul 13, 2006 at 10:48:00PM -0700, Andrew Morton wrote:
->...
-> Changes since 2.6.18-rc1-mm1:
->...
-> +lockdep-split-the-skb_queue_head_init-lock-class.patch
->
->  lockdep-versus-net fix.
->...
-
-skb_queue_lock_key is no longer used.
-
-Signed-off-by: Adrian Bunk <bunk at stusta.de>
-Acked-by: Arjan van de Ven <arjan at linux.intel.com>
-Signed-off-by: Andrew Morton <akpm at osdl.org>
----
-
- include/linux/skbuff.h |    2 --
- net/core/skbuff.c      |    7 -------
- 2 files changed, 9 deletions(-)
-
-diff -puN include/linux/skbuff.h~lockdep-split-the-skb_queue_head_init-lock-class-tidy include/linux/skbuff.h
---- a/include/linux/skbuff.h~lockdep-split-the-skb_queue_head_init-lock-class-tidy
-+++ a/include/linux/skbuff.h
-@@ -604,8 +604,6 @@ static inline __u32 skb_queue_len(const 
- 	return list_->qlen;
- }
- 
--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
-diff -puN net/core/skbuff.c~lockdep-split-the-skb_queue_head_init-lock-class-tidy net/core/skbuff.c
---- a/net/core/skbuff.c~lockdep-split-the-skb_queue_head_init-lock-class-tidy
-+++ a/net/core/skbuff.c
-@@ -71,13 +71,6 @@ static kmem_cache_t *skbuff_head_cache _
- static kmem_cache_t *skbuff_fclone_cache __read_mostly;
- 
- /*
-- * lockdep: lock class key used by skb_queue_head_init():
-- */
--struct lock_class_key skb_queue_lock_key;
--
--EXPORT_SYMBOL(skb_queue_lock_key);
--
--/*
-  *	Keep out-of-line to prevent kernel bloat.
-  *	__builtin_return_address is not used because it is not always
-  *	reliable.
-_


Index: sources
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/sources,v
retrieving revision 1.467
retrieving revision 1.468
diff -u -r1.467 -r1.468
--- sources	2 Aug 2006 22:56:39 -0000	1.467
+++ sources	3 Aug 2006 17:28:17 -0000	1.468
@@ -1,4 +1,4 @@
 37ddefe96625502161f075b9d907f21e  linux-2.6.17.tar.bz2
 4ae2c95631b54820475437c206c3a4c2  xen-10730.tar.bz2
 ba31b754aaf80aa388858f86c34c4d01  patch-2.6.18-rc3.bz2
-1beb7e5f3b822bb4a0c6d04bb7411c62  patch-2.6.18-rc3-git2.bz2
+2b8d22d3832b97c2bbd87e75755b36c9  patch-2.6.18-rc3-git3.bz2


Index: upstream
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/upstream,v
retrieving revision 1.409
retrieving revision 1.410
diff -u -r1.409 -r1.410
--- upstream	2 Aug 2006 22:56:39 -0000	1.409
+++ upstream	3 Aug 2006 17:28:17 -0000	1.410
@@ -1,3 +1,3 @@
 linux-2.6.17.tar.bz2
 patch-2.6.18-rc3.bz2
-patch-2.6.18-rc3-git2.bz2
+patch-2.6.18-rc3-git3.bz2


--- linux-2.6-x86_64-entry-more-unwind.patch DELETED ---


--- patch-2.6.18-rc3-git1.bz2.sign DELETED ---


--- patch-2.6.18-rc3-git2.bz2.sign DELETED ---




More information about the fedora-cvs-commits mailing list