All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code
@ 2010-09-03 18:33 Paul Gortmaker
  2010-09-03 18:33 ` [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom Paul Gortmaker
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Paul Gortmaker @ 2010-09-03 18:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, allan.stephens

From: Allan Stephens <allan.stephens@windriver.com>

Optimizes TIPC's name table translation code to avoid unnecessary
manipulation of the node address field of the resulting port id when
name translation fails.  This change is possible because a valid port
id cannot have a reference field of zero, so examining the reference
only is sufficient to determine if the translation was successful.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 net/tipc/name_table.c |    4 +---
 net/tipc/port.c       |    4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/net/tipc/name_table.c b/net/tipc/name_table.c
index d504e49..c13c2c7 100644
--- a/net/tipc/name_table.c
+++ b/net/tipc/name_table.c
@@ -613,8 +613,7 @@ struct publication *tipc_nametbl_remove_publ(u32 type, u32 lower,
 }
 
 /*
- * tipc_nametbl_translate(): Translate tipc_name -> tipc_portid.
- *                      Very time-critical.
+ * tipc_nametbl_translate - translate name to port id
  *
  * Note: on entry 'destnode' is the search domain used during translation;
  *       on exit it passes back the node address of the matching port (if any)
@@ -685,7 +684,6 @@ found:
 	}
 	spin_unlock_bh(&seq->lock);
 not_found:
-	*destnode = 0;
 	read_unlock_bh(&tipc_nametbl_lock);
 	return 0;
 }
diff --git a/net/tipc/port.c b/net/tipc/port.c
index ebcbc21..d760336 100644
--- a/net/tipc/port.c
+++ b/net/tipc/port.c
@@ -1464,7 +1464,7 @@ int tipc_forward2name(u32 ref,
 	msg_set_destnode(msg, destnode);
 	msg_set_destport(msg, destport);
 
-	if (likely(destport || destnode)) {
+	if (likely(destport)) {
 		p_ptr->sent++;
 		if (likely(destnode == tipc_own_addr))
 			return tipc_port_recv_sections(p_ptr, num_sect, msg_sect);
@@ -1542,7 +1542,7 @@ int tipc_forward_buf2name(u32 ref,
 	skb_push(buf, LONG_H_SIZE);
 	skb_copy_to_linear_data(buf, msg, LONG_H_SIZE);
 	msg_dbg(buf_msg(buf),"PREP:");
-	if (likely(destport || destnode)) {
+	if (likely(destport)) {
 		p_ptr->sent++;
 		if (destnode == tipc_own_addr)
 			return tipc_port_recv_msg(buf);
-- 
1.7.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom
  2010-09-03 18:33 [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code Paul Gortmaker
@ 2010-09-03 18:33 ` Paul Gortmaker
  2010-09-07  1:13   ` David Miller
  2010-09-03 18:33 ` [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages Paul Gortmaker
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 10+ messages in thread
From: Paul Gortmaker @ 2010-09-03 18:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, allan.stephens

From: Allan Stephens <allan.stephens@windriver.com>

Add code to expand the headroom of an outgoing TIPC message if the
sk_buff has insufficient room to hold the header for the associated
Ethernet device.  This change is necessary to ensure that messages
TIPC does not create itself (eg. incoming messages that are being
routed to another node) do not cause problems, since TIPC has no
control over the amount of headroom available in such messages.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 net/tipc/eth_media.c |   25 +++++++++++++++++--------
 1 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/net/tipc/eth_media.c b/net/tipc/eth_media.c
index 6230d16..81253d0 100644
--- a/net/tipc/eth_media.c
+++ b/net/tipc/eth_media.c
@@ -72,17 +72,26 @@ static int send_msg(struct sk_buff *buf, struct tipc_bearer *tb_ptr,
 {
 	struct sk_buff *clone;
 	struct net_device *dev;
+	int delta;
 
 	clone = skb_clone(buf, GFP_ATOMIC);
-	if (clone) {
-		skb_reset_network_header(clone);
-		dev = ((struct eth_bearer *)(tb_ptr->usr_handle))->dev;
-		clone->dev = dev;
-		dev_hard_header(clone, dev, ETH_P_TIPC,
-				 &dest->dev_addr.eth_addr,
-				 dev->dev_addr, clone->len);
-		dev_queue_xmit(clone);
+	if (!clone)
+		return 0;
+
+	dev = ((struct eth_bearer *)(tb_ptr->usr_handle))->dev;
+	delta = dev->hard_header_len - skb_headroom(buf);
+
+	if ((delta > 0) &&
+	    pskb_expand_head(clone, SKB_DATA_ALIGN(delta), 0, GFP_ATOMIC)) {
+		kfree_skb(clone);
+		return 0;
 	}
+
+	skb_reset_network_header(clone);
+	clone->dev = dev;
+	dev_hard_header(clone, dev, ETH_P_TIPC, &dest->dev_addr.eth_addr,
+			dev->dev_addr, clone->len);
+	dev_queue_xmit(clone);
 	return 0;
 }
 
-- 
1.7.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages
  2010-09-03 18:33 [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code Paul Gortmaker
  2010-09-03 18:33 ` [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom Paul Gortmaker
@ 2010-09-03 18:33 ` Paul Gortmaker
  2010-09-03 19:55   ` David Miller
  2010-09-03 18:33 ` [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers Paul Gortmaker
  2010-09-07  1:13 ` [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code David Miller
  3 siblings, 1 reply; 10+ messages in thread
From: Paul Gortmaker @ 2010-09-03 18:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, allan.stephens

From: Allan Stephens <allan.stephens@windriver.com>

Remove code that trimmed excess trailing info from incoming messages
arriving over an Ethernet interface.  TIPC now ignores the extra info
while the message is being processed by the node, and only trims it off
if the message is retransmitted to another node.  (This latter step is
done to ensure the extra info doesn't cause the sk_buff to exceed the
outgoing interface's MTU limit.)

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 net/tipc/eth_media.c |   13 +++----------
 net/tipc/net.c       |    1 +
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/net/tipc/eth_media.c b/net/tipc/eth_media.c
index 81253d0..ff50a17 100644
--- a/net/tipc/eth_media.c
+++ b/net/tipc/eth_media.c
@@ -101,15 +101,12 @@ static int send_msg(struct sk_buff *buf, struct tipc_bearer *tb_ptr,
  * Accept only packets explicitly sent to this node, or broadcast packets;
  * ignores packets sent using Ethernet multicast, and traffic sent to other
  * nodes (which can happen if interface is running in promiscuous mode).
- * Routine truncates any Ethernet padding/CRC appended to the message,
- * and ensures message size matches actual length
  */
 
 static int recv_msg(struct sk_buff *buf, struct net_device *dev,
 		    struct packet_type *pt, struct net_device *orig_dev)
 {
 	struct eth_bearer *eb_ptr = (struct eth_bearer *)pt->af_packet_priv;
-	u32 size;
 
 	if (!net_eq(dev_net(dev), &init_net)) {
 		kfree_skb(buf);
@@ -118,13 +115,9 @@ static int recv_msg(struct sk_buff *buf, struct net_device *dev,
 
 	if (likely(eb_ptr->bearer)) {
 		if (likely(buf->pkt_type <= PACKET_BROADCAST)) {
-			size = msg_size((struct tipc_msg *)buf->data);
-			skb_trim(buf, size);
-			if (likely(buf->len == size)) {
-				buf->next = NULL;
-				tipc_recv_msg(buf, eb_ptr->bearer);
-				return 0;
-			}
+			buf->next = NULL;
+			tipc_recv_msg(buf, eb_ptr->bearer);
+			return 0;
 		}
 	}
 	kfree_skb(buf);
diff --git a/net/tipc/net.c b/net/tipc/net.c
index f61b769..14bd109 100644
--- a/net/tipc/net.c
+++ b/net/tipc/net.c
@@ -248,6 +248,7 @@ void tipc_net_route_msg(struct sk_buff *buf)
 
 	/* Handle message for another node */
 	msg_dbg(msg, "NET>SEND>: ");
+	pskb_trim(buf, msg_size(msg));
 	tipc_link_send(buf, dnode, msg_link_selector(msg));
 }
 
-- 
1.7.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers
  2010-09-03 18:33 [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code Paul Gortmaker
  2010-09-03 18:33 ` [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom Paul Gortmaker
  2010-09-03 18:33 ` [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages Paul Gortmaker
@ 2010-09-03 18:33 ` Paul Gortmaker
  2010-09-07  1:13   ` David Miller
  2010-09-07  1:13 ` [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code David Miller
  3 siblings, 1 reply; 10+ messages in thread
From: Paul Gortmaker @ 2010-09-03 18:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, allan.stephens

From: Allan Stephens <allan.stephens@windriver.com>

Cause TIPC to return EAGAIN if it is unable to enable a new Ethernet
bearer because one or more recently disabled Ethernet bearers are
temporarily consuming resources during shut down.  (The previous error
code, EDQUOT, is now returned only if all available Ethernet bearer
data structures are fully enabled at the time the request to enable an
additional bearer is received.)

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 net/tipc/eth_media.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/net/tipc/eth_media.c b/net/tipc/eth_media.c
index ff50a17..6e988ba 100644
--- a/net/tipc/eth_media.c
+++ b/net/tipc/eth_media.c
@@ -135,6 +135,16 @@ static int enable_bearer(struct tipc_bearer *tb_ptr)
 	struct eth_bearer *eb_ptr = &eth_bearers[0];
 	struct eth_bearer *stop = &eth_bearers[MAX_ETH_BEARERS];
 	char *driver_name = strchr((const char *)tb_ptr->name, ':') + 1;
+	int pending_dev = 0;
+
+	/* Find unused Ethernet bearer structure */
+
+	while (eb_ptr->dev) {
+		if (!eb_ptr->bearer)
+			pending_dev++;
+		if (++eb_ptr == stop)
+			return pending_dev ? -EAGAIN : -EDQUOT;
+	}
 
 	/* Find device with specified name */
 
-- 
1.7.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages
  2010-09-03 18:33 ` [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages Paul Gortmaker
@ 2010-09-03 19:55   ` David Miller
  2010-09-08 23:31     ` Paul Gortmaker
  0 siblings, 1 reply; 10+ messages in thread
From: David Miller @ 2010-09-03 19:55 UTC (permalink / raw)
  To: paul.gortmaker; +Cc: netdev, allan.stephens

From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Fri,  3 Sep 2010 14:33:41 -0400

> @@ -248,6 +248,7 @@ void tipc_net_route_msg(struct sk_buff *buf)
>  
>  	/* Handle message for another node */
>  	msg_dbg(msg, "NET>SEND>: ");
> +	pskb_trim(buf, msg_size(msg));
>  	tipc_link_send(buf, dnode, msg_link_selector(msg));
>  }

1) pskb_trim() can fail, you need to check the return value
   and act appropriately.

2) pskb_trim() can change all of the packet data pointers, so
   after you call it you need to reload any pointers to the
   packet data area.  At a minimum, you woull need to
   reload 'msg' in this code snippet.

   Otherwise 'msg' can point to freed up memory after the call.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code
  2010-09-03 18:33 [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code Paul Gortmaker
                   ` (2 preceding siblings ...)
  2010-09-03 18:33 ` [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers Paul Gortmaker
@ 2010-09-07  1:13 ` David Miller
  3 siblings, 0 replies; 10+ messages in thread
From: David Miller @ 2010-09-07  1:13 UTC (permalink / raw)
  To: paul.gortmaker; +Cc: netdev, allan.stephens

From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Fri,  3 Sep 2010 14:33:39 -0400

> From: Allan Stephens <allan.stephens@windriver.com>
> 
> Optimizes TIPC's name table translation code to avoid unnecessary
> manipulation of the node address field of the resulting port id when
> name translation fails.  This change is possible because a valid port
> id cannot have a reference field of zero, so examining the reference
> only is sufficient to determine if the translation was successful.
> 
> Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>

Applied.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom
  2010-09-03 18:33 ` [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom Paul Gortmaker
@ 2010-09-07  1:13   ` David Miller
  0 siblings, 0 replies; 10+ messages in thread
From: David Miller @ 2010-09-07  1:13 UTC (permalink / raw)
  To: paul.gortmaker; +Cc: netdev, allan.stephens

From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Fri,  3 Sep 2010 14:33:40 -0400

> From: Allan Stephens <allan.stephens@windriver.com>
> 
> Add code to expand the headroom of an outgoing TIPC message if the
> sk_buff has insufficient room to hold the header for the associated
> Ethernet device.  This change is necessary to ensure that messages
> TIPC does not create itself (eg. incoming messages that are being
> routed to another node) do not cause problems, since TIPC has no
> control over the amount of headroom available in such messages.
> 
> Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>

Applied.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers
  2010-09-03 18:33 ` [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers Paul Gortmaker
@ 2010-09-07  1:13   ` David Miller
  0 siblings, 0 replies; 10+ messages in thread
From: David Miller @ 2010-09-07  1:13 UTC (permalink / raw)
  To: paul.gortmaker; +Cc: netdev, allan.stephens

From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Fri,  3 Sep 2010 14:33:42 -0400

> From: Allan Stephens <allan.stephens@windriver.com>
> 
> Cause TIPC to return EAGAIN if it is unable to enable a new Ethernet
> bearer because one or more recently disabled Ethernet bearers are
> temporarily consuming resources during shut down.  (The previous error
> code, EDQUOT, is now returned only if all available Ethernet bearer
> data structures are fully enabled at the time the request to enable an
> additional bearer is received.)
> 
> Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>

Applied.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages
  2010-09-03 19:55   ` David Miller
@ 2010-09-08 23:31     ` Paul Gortmaker
  2010-09-10  4:33       ` David Miller
  0 siblings, 1 reply; 10+ messages in thread
From: Paul Gortmaker @ 2010-09-08 23:31 UTC (permalink / raw)
  To: David Miller; +Cc: netdev, allan.stephens

[Re: [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages] On 03/09/2010 (Fri 12:55) David Miller wrote:

> From: Paul Gortmaker <paul.gortmaker@windriver.com>
> Date: Fri,  3 Sep 2010 14:33:41 -0400
> 
> > @@ -248,6 +248,7 @@ void tipc_net_route_msg(struct sk_buff *buf)
> >  
> >  	/* Handle message for another node */
> >  	msg_dbg(msg, "NET>SEND>: ");
> > +	pskb_trim(buf, msg_size(msg));
> >  	tipc_link_send(buf, dnode, msg_link_selector(msg));
> >  }
> 
> 1) pskb_trim() can fail, you need to check the return value
>    and act appropriately.
> 
> 2) pskb_trim() can change all of the packet data pointers, so
>    after you call it you need to reload any pointers to the
>    packet data area.  At a minimum, you woull need to
>    reload 'msg' in this code snippet.
> 
>    Otherwise 'msg' can point to freed up memory after the call.

Looking at it again, it isn't clear to me why this change switched over
to using pskb_trim in the 1st place.  The rework below just stays with
the simpler skb_trim that it was using previously.

Thanks,
Paul.

>From 3a93344bd2cad3142c81f0304fdb28404c0d7ff1 Mon Sep 17 00:00:00 2001
From: Allan Stephens <allan.stephens@windriver.com>
Date: Wed, 8 Sep 2010 10:30:42 -0400
Subject: [PATCH] tipc: Optimize handling excess content on incoming messages

Remove code that trimmed excess trailing info from incoming messages
arriving over an Ethernet interface.  TIPC now ignores the extra info
while the message is being processed by the node, and only trims it off
if the message is retransmitted to another node.  (This latter step is
done to ensure the extra info doesn't cause the sk_buff to exceed the
outgoing interface's MTU limit.) The outgoing buffer is guaranteed to
be linear.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---

V2: maintain skb_trim usage; dont invoke pskb_trim needlessly

 net/tipc/eth_media.c |   13 +++----------
 net/tipc/net.c       |    1 +
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/net/tipc/eth_media.c b/net/tipc/eth_media.c
index 673fdf0..6e988ba 100644
--- a/net/tipc/eth_media.c
+++ b/net/tipc/eth_media.c
@@ -101,15 +101,12 @@ static int send_msg(struct sk_buff *buf, struct tipc_bearer *tb_ptr,
  * Accept only packets explicitly sent to this node, or broadcast packets;
  * ignores packets sent using Ethernet multicast, and traffic sent to other
  * nodes (which can happen if interface is running in promiscuous mode).
- * Routine truncates any Ethernet padding/CRC appended to the message,
- * and ensures message size matches actual length
  */
 
 static int recv_msg(struct sk_buff *buf, struct net_device *dev,
 		    struct packet_type *pt, struct net_device *orig_dev)
 {
 	struct eth_bearer *eb_ptr = (struct eth_bearer *)pt->af_packet_priv;
-	u32 size;
 
 	if (!net_eq(dev_net(dev), &init_net)) {
 		kfree_skb(buf);
@@ -118,13 +115,9 @@ static int recv_msg(struct sk_buff *buf, struct net_device *dev,
 
 	if (likely(eb_ptr->bearer)) {
 		if (likely(buf->pkt_type <= PACKET_BROADCAST)) {
-			size = msg_size((struct tipc_msg *)buf->data);
-			skb_trim(buf, size);
-			if (likely(buf->len == size)) {
-				buf->next = NULL;
-				tipc_recv_msg(buf, eb_ptr->bearer);
-				return 0;
-			}
+			buf->next = NULL;
+			tipc_recv_msg(buf, eb_ptr->bearer);
+			return 0;
 		}
 	}
 	kfree_skb(buf);
diff --git a/net/tipc/net.c b/net/tipc/net.c
index f61b769..7e05af4 100644
--- a/net/tipc/net.c
+++ b/net/tipc/net.c
@@ -248,6 +248,7 @@ void tipc_net_route_msg(struct sk_buff *buf)
 
 	/* Handle message for another node */
 	msg_dbg(msg, "NET>SEND>: ");
+	skb_trim(buf, msg_size(msg));
 	tipc_link_send(buf, dnode, msg_link_selector(msg));
 }
 
-- 
1.7.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages
  2010-09-08 23:31     ` Paul Gortmaker
@ 2010-09-10  4:33       ` David Miller
  0 siblings, 0 replies; 10+ messages in thread
From: David Miller @ 2010-09-10  4:33 UTC (permalink / raw)
  To: paul.gortmaker; +Cc: netdev, allan.stephens

From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Wed, 8 Sep 2010 19:31:24 -0400

> Subject: [PATCH] tipc: Optimize handling excess content on incoming messages
> 
> Remove code that trimmed excess trailing info from incoming messages
> arriving over an Ethernet interface.  TIPC now ignores the extra info
> while the message is being processed by the node, and only trims it off
> if the message is retransmitted to another node.  (This latter step is
> done to ensure the extra info doesn't cause the sk_buff to exceed the
> outgoing interface's MTU limit.) The outgoing buffer is guaranteed to
> be linear.
> 
> Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>

Applied, thanks.

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2010-09-10  4:33 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-03 18:33 [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code Paul Gortmaker
2010-09-03 18:33 ` [PATCH net-next 2/4] tipc: Ensure outgoing messages on Ethernet have sufficient headroom Paul Gortmaker
2010-09-07  1:13   ` David Miller
2010-09-03 18:33 ` [PATCH net-next 3/4] tipc: Optimize handling excess content on incoming messages Paul Gortmaker
2010-09-03 19:55   ` David Miller
2010-09-08 23:31     ` Paul Gortmaker
2010-09-10  4:33       ` David Miller
2010-09-03 18:33 ` [PATCH net-next 4/4] tipc: Fix misleading error code when enabling Ethernet bearers Paul Gortmaker
2010-09-07  1:13   ` David Miller
2010-09-07  1:13 ` [PATCH net-next 1/4] tipc: Minor optimizations to name table translation code David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.