All of lore.kernel.org
 help / color / mirror / Atom feed
* mpd client timeouts (bisected) 2.6.35-rc3
@ 2010-06-12 10:28 Markus Trippelsdorf
  2010-06-12 21:58 ` David Miller
  0 siblings, 1 reply; 13+ messages in thread
From: Markus Trippelsdorf @ 2010-06-12 10:28 UTC (permalink / raw)
  To: john.r.fastabend; +Cc: linux-kernel, netdev, davem

Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
»net: deliver skbs on inactive slaves to exact matches«

causes large timeouts when mpd clients try to connect to a locally
running mpd (music player demon) on my machine. This makes it 
impossible to control mpd.

I bisected this down to the commit mentioned above.
Reverting the commit from 2.6.35-rc3 also solves the problem.

-- 
Markus

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-12 10:28 mpd client timeouts (bisected) 2.6.35-rc3 Markus Trippelsdorf
@ 2010-06-12 21:58 ` David Miller
  2010-06-13  8:05   ` John Fastabend
  0 siblings, 1 reply; 13+ messages in thread
From: David Miller @ 2010-06-12 21:58 UTC (permalink / raw)
  To: markus; +Cc: john.r.fastabend, linux-kernel, netdev

From: Markus Trippelsdorf <markus@trippelsdorf.de>
Date: Sat, 12 Jun 2010 12:28:02 +0200

> Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
> »net: deliver skbs on inactive slaves to exact matches«
> 
> causes large timeouts when mpd clients try to connect to a locally
> running mpd (music player demon) on my machine. This makes it 
> impossible to control mpd.
> 
> I bisected this down to the commit mentioned above.
> Reverting the commit from 2.6.35-rc3 also solves the problem.

John, find an easy and fast way to fix this or else I am
going to revert.

Thanks.

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-12 21:58 ` David Miller
@ 2010-06-13  8:05   ` John Fastabend
  2010-06-13 20:36     ` John Fastabend
  0 siblings, 1 reply; 13+ messages in thread
From: John Fastabend @ 2010-06-13  8:05 UTC (permalink / raw)
  To: David Miller; +Cc: markus, linux-kernel, netdev

David Miller wrote:
> From: Markus Trippelsdorf <markus@trippelsdorf.de>
> Date: Sat, 12 Jun 2010 12:28:02 +0200
> 
>> Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
>> »net: deliver skbs on inactive slaves to exact matches«
>>
>> causes large timeouts when mpd clients try to connect to a locally
>> running mpd (music player demon) on my machine. This makes it 
>> impossible to control mpd.
>>
>> I bisected this down to the commit mentioned above.
>> Reverting the commit from 2.6.35-rc3 also solves the problem.
> 
> John, find an easy and fast way to fix this or else I am
> going to revert.
> 
> Thanks.

Looks like skbs are hitting loopback_xmit() with deliver_no_wcard set.  Then in 
the receive path these skbs are only delivered to exact matches.  Not sure why 
this bit is set here, I'll track this down first thing tomorrow.

Thanks,
John.

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13  8:05   ` John Fastabend
@ 2010-06-13 20:36     ` John Fastabend
  2010-06-13 20:50       ` Eric Dumazet
                         ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: John Fastabend @ 2010-06-13 20:36 UTC (permalink / raw)
  To: David Miller, markus
  Cc: linux-kernel, netdev, yanmin_zhang, alex.shi, tim.c.chen

John Fastabend wrote:
> David Miller wrote:
>> From: Markus Trippelsdorf <markus@trippelsdorf.de>
>> Date: Sat, 12 Jun 2010 12:28:02 +0200
>>
>>> Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
>>> »net: deliver skbs on inactive slaves to exact matches«
>>>
>>> causes large timeouts when mpd clients try to connect to a locally
>>> running mpd (music player demon) on my machine. This makes it 
>>> impossible to control mpd.
>>>
>>> I bisected this down to the commit mentioned above.
>>> Reverting the commit from 2.6.35-rc3 also solves the problem.
>> John, find an easy and fast way to fix this or else I am
>> going to revert.
>>
>> Thanks.
> 
> Looks like skbs are hitting loopback_xmit() with deliver_no_wcard set.  Then in 
> the receive path these skbs are only delivered to exact matches.  Not sure why 
> this bit is set here, I'll track this down first thing tomorrow.
> 
> Thanks,
> John.
> --

Needed to set the wcard bit in copy_skb_header otherwise it will not be cleared 
when called from skb_clone.  Which then hits the loopback device gets pushed 
into the rx path and is eventually dropped. The following patch fixes this. 
Hopefully, this is easy and fast enough for you Dave.


[PATCH] net: fix deliver_no_wcard regression on loopback device

deliver_no_wcard is not being set in skb_copy_header.
In the skb_cloned case it is not being cleared and
may cause the skb to be dropped when the loopback device
pushes it back up the stack.

Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
---

  net/core/skbuff.c |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 9f07e74..bcf2fa3 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -532,6 +532,7 @@ static void __copy_skb_header(struct sk_buff *new, const 
struct sk_buff *old)
  	new->ip_summed		= old->ip_summed;
  	skb_copy_queue_mapping(new, old);
  	new->priority		= old->priority;
+	new->deliver_no_wcard	= old->deliver_no_wcard;
  #if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
  	new->ipvs_property	= old->ipvs_property;
  #endif

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:36     ` John Fastabend
@ 2010-06-13 20:50       ` Eric Dumazet
  2010-06-14  0:14         ` David Miller
  2010-06-13 20:59       ` markus
                         ` (2 subsequent siblings)
  3 siblings, 1 reply; 13+ messages in thread
From: Eric Dumazet @ 2010-06-13 20:50 UTC (permalink / raw)
  To: John Fastabend
  Cc: David Miller, markus, linux-kernel, netdev, yanmin_zhang,
	alex.shi, tim.c.chen

Le dimanche 13 juin 2010 à 13:36 -0700, John Fastabend a écrit :
> John Fastabend wrote:
> > David Miller wrote:
> >> From: Markus Trippelsdorf <markus@trippelsdorf.de>
> >> Date: Sat, 12 Jun 2010 12:28:02 +0200
> >>
> >>> Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
> >>> »net: deliver skbs on inactive slaves to exact matches«
> >>>
> >>> causes large timeouts when mpd clients try to connect to a locally
> >>> running mpd (music player demon) on my machine. This makes it 
> >>> impossible to control mpd.
> >>>
> >>> I bisected this down to the commit mentioned above.
> >>> Reverting the commit from 2.6.35-rc3 also solves the problem.
> >> John, find an easy and fast way to fix this or else I am
> >> going to revert.
> >>
> >> Thanks.
> > 
> > Looks like skbs are hitting loopback_xmit() with deliver_no_wcard set.  Then in 
> > the receive path these skbs are only delivered to exact matches.  Not sure why 
> > this bit is set here, I'll track this down first thing tomorrow.
> > 
> > Thanks,
> > John.
> > --
> 
> Needed to set the wcard bit in copy_skb_header otherwise it will not be cleared 
> when called from skb_clone.  Which then hits the loopback device gets pushed 
> into the rx path and is eventually dropped. The following patch fixes this. 
> Hopefully, this is easy and fast enough for you Dave.
> 
> 
> [PATCH] net: fix deliver_no_wcard regression on loopback device
> 
> deliver_no_wcard is not being set in skb_copy_header.
> In the skb_cloned case it is not being cleared and
> may cause the skb to be dropped when the loopback device
> pushes it back up the stack.
> 
> Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
> ---
> 
>   net/core/skbuff.c |    1 +
>   1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/net/core/skbuff.c b/net/core/skbuff.c
> index 9f07e74..bcf2fa3 100644
> --- a/net/core/skbuff.c
> +++ b/net/core/skbuff.c
> @@ -532,6 +532,7 @@ static void __copy_skb_header(struct sk_buff *new, const 
> struct sk_buff *old)
>   	new->ip_summed		= old->ip_summed;
>   	skb_copy_queue_mapping(new, old);
>   	new->priority		= old->priority;
> +	new->deliver_no_wcard	= old->deliver_no_wcard;
>   #if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
>   	new->ipvs_property	= old->ipvs_property;
>   #endif
> --

Acked-by: Eric Dumazet <eric.dumazet@gmail.com>

BTW, David, it seems there is a double rxhash copy...

[PATCH] net: rxhash already set in __copy_skb_header

No need to copy rxhash again in __skb_clone()

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
---
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 9f07e74..a58e63b 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -569,7 +569,6 @@ static struct sk_buff *__skb_clone(struct sk_buff *n, struct sk_buff *skb)
 	C(len);
 	C(data_len);
 	C(mac_len);
-	C(rxhash);
 	n->hdr_len = skb->nohdr ? skb_headroom(skb) : skb->hdr_len;
 	n->cloned = 1;
 	n->nohdr = 0;



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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:36     ` John Fastabend
  2010-06-13 20:50       ` Eric Dumazet
@ 2010-06-13 20:59       ` markus
  2010-06-14  0:14         ` David Miller
                           ` (2 more replies)
  2010-06-14  0:13       ` David Miller
  2010-06-17  5:16       ` Shi, Alex
  3 siblings, 3 replies; 13+ messages in thread
From: markus @ 2010-06-13 20:59 UTC (permalink / raw)
  To: John Fastabend
  Cc: David Miller, linux-kernel, netdev, yanmin_zhang, alex.shi, tim.c.chen

On Sun, Jun 13, 2010 at 01:36:30PM -0700, John Fastabend wrote:
> John Fastabend wrote:
> >David Miller wrote:
> >>From: Markus Trippelsdorf <markus@trippelsdorf.de>
> >>Date: Sat, 12 Jun 2010 12:28:02 +0200
> >>
> >>>Commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837:
> >>>»net: deliver skbs on inactive slaves to exact matches«
> >>>
> >>>causes large timeouts when mpd clients try to connect to a locally
> >>>running mpd (music player demon) on my machine. This makes it
> >>>impossible to control mpd.
> >>>
> >>>I bisected this down to the commit mentioned above.
> >>>Reverting the commit from 2.6.35-rc3 also solves the problem.
> >>John, find an easy and fast way to fix this or else I am
> >>going to revert.
> >>
> >>Thanks.
> >
> >Looks like skbs are hitting loopback_xmit() with deliver_no_wcard
> >set.  Then in the receive path these skbs are only delivered to
> >exact matches.  Not sure why this bit is set here, I'll track this
> >down first thing tomorrow.
> >
> >Thanks,
> >John.
> >--
> 
> Needed to set the wcard bit in copy_skb_header otherwise it will not
> be cleared when called from skb_clone.  Which then hits the loopback
> device gets pushed into the rx path and is eventually dropped. The
> following patch fixes this. Hopefully, this is easy and fast enough
> for you Dave.
> 
> 
> [PATCH] net: fix deliver_no_wcard regression on loopback device

This solves the problem here. Thanks.

Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>
-- 
Markus

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:36     ` John Fastabend
  2010-06-13 20:50       ` Eric Dumazet
  2010-06-13 20:59       ` markus
@ 2010-06-14  0:13       ` David Miller
  2010-06-14 14:13         ` Michael S. Tsirkin
  2010-06-17  5:16       ` Shi, Alex
  3 siblings, 1 reply; 13+ messages in thread
From: David Miller @ 2010-06-14  0:13 UTC (permalink / raw)
  To: john.r.fastabend
  Cc: markus, linux-kernel, netdev, yanmin_zhang, alex.shi, tim.c.chen

From: John Fastabend <john.r.fastabend@intel.com>
Date: Sun, 13 Jun 2010 13:36:30 -0700

> Needed to set the wcard bit in copy_skb_header otherwise it will not
> be cleared when called from skb_clone.  Which then hits the loopback
> device gets pushed into the rx path and is eventually dropped. The
> following patch fixes this. Hopefully, this is easy and fast enough
> for you Dave.
> 
> 
> [PATCH] net: fix deliver_no_wcard regression on loopback device
> 
> deliver_no_wcard is not being set in skb_copy_header.
> In the skb_cloned case it is not being cleared and
> may cause the skb to be dropped when the loopback device
> pushes it back up the stack.
> 
> Signed-off-by: John Fastabend <john.r.fastabend@intel.com>

Applied, but your email client corrupted this patch in many
ways.  Please correct this for next time, thanks.

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:50       ` Eric Dumazet
@ 2010-06-14  0:14         ` David Miller
  0 siblings, 0 replies; 13+ messages in thread
From: David Miller @ 2010-06-14  0:14 UTC (permalink / raw)
  To: eric.dumazet
  Cc: john.r.fastabend, markus, linux-kernel, netdev, yanmin_zhang,
	alex.shi, tim.c.chen

From: Eric Dumazet <eric.dumazet@gmail.com>
Date: Sun, 13 Jun 2010 22:50:46 +0200

> Acked-by: Eric Dumazet <eric.dumazet@gmail.com>

Eric, please never ACK a patch in the same mail in which you are
posting new patch.  Patchwork won't add your ACK to the patchwork
entry you are ACK'ing because all of your text will go into a new
patchwork entry for the patch you are posting.

> BTW, David, it seems there is a double rxhash copy...
> 
> [PATCH] net: rxhash already set in __copy_skb_header
> 
> No need to copy rxhash again in __skb_clone()
> 
> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>

I'll apply this, thanks.

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:59       ` markus
@ 2010-06-14  0:14         ` David Miller
  2010-06-16 10:01         ` Christian Kujau
  2010-06-17 15:05         ` Christoph Fritz
  2 siblings, 0 replies; 13+ messages in thread
From: David Miller @ 2010-06-14  0:14 UTC (permalink / raw)
  To: markus
  Cc: john.r.fastabend, linux-kernel, netdev, yanmin_zhang, alex.shi,
	tim.c.chen

From: "markus@trippelsdorf.de" <markus@trippelsdorf.de>
Date: Sun, 13 Jun 2010 22:59:22 +0200

> On Sun, Jun 13, 2010 at 01:36:30PM -0700, John Fastabend wrote:
>> [PATCH] net: fix deliver_no_wcard regression on loopback device
> 
> This solves the problem here. Thanks.
> 
> Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>

Thanks for testing.

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-14  0:13       ` David Miller
@ 2010-06-14 14:13         ` Michael S. Tsirkin
  0 siblings, 0 replies; 13+ messages in thread
From: Michael S. Tsirkin @ 2010-06-14 14:13 UTC (permalink / raw)
  To: David Miller
  Cc: john.r.fastabend, markus, linux-kernel, netdev, yanmin_zhang,
	alex.shi, tim.c.chen

On Sun, Jun 13, 2010 at 05:13:18PM -0700, David Miller wrote:
> From: John Fastabend <john.r.fastabend@intel.com>
> Date: Sun, 13 Jun 2010 13:36:30 -0700
> 
> > Needed to set the wcard bit in copy_skb_header otherwise it will not
> > be cleared when called from skb_clone.  Which then hits the loopback
> > device gets pushed into the rx path and is eventually dropped. The
> > following patch fixes this. Hopefully, this is easy and fast enough
> > for you Dave.
> > 
> > 
> > [PATCH] net: fix deliver_no_wcard regression on loopback device
> > 
> > deliver_no_wcard is not being set in skb_copy_header.
> > In the skb_cloned case it is not being cleared and
> > may cause the skb to be dropped when the loopback device
> > pushes it back up the stack.
> > 
> > Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
> 
> Applied, but your email client corrupted this patch in many
> ways.  Please correct this for next time, thanks.

FWIW:

Tested-by: Michael S. Tsirkin <mst@redhat.com>

-- 
MST

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:59       ` markus
  2010-06-14  0:14         ` David Miller
@ 2010-06-16 10:01         ` Christian Kujau
  2010-06-17 15:05         ` Christoph Fritz
  2 siblings, 0 replies; 13+ messages in thread
From: Christian Kujau @ 2010-06-16 10:01 UTC (permalink / raw)
  To: markus
  Cc: John Fastabend, David Miller, linux-kernel, netdev, yanmin_zhang,
	alex.shi, tim.c.chen

On Sun, 13 Jun 2010 at 22:59, markus@trippelsdorf.de wrote:
> This solves the problem here. Thanks.

Not sure if this is related, but I've noticed connection timeouts and 
connections going in FIN_WAIT2 state (most of them SSH tunnels) with 
2.6.35. Going back to 2.6.34 or applying John's (and Eric's) patch 
does seem to fix this issue.

Thanks,
Christian.
-- 
BOFH excuse #168:

le0: no carrier: transceiver cable problem?

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

* RE: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:36     ` John Fastabend
                         ` (2 preceding siblings ...)
  2010-06-14  0:13       ` David Miller
@ 2010-06-17  5:16       ` Shi, Alex
  3 siblings, 0 replies; 13+ messages in thread
From: Shi, Alex @ 2010-06-17  5:16 UTC (permalink / raw)
  To: Fastabend, John R, David Miller, markus
  Cc: linux-kernel, netdev, yanmin_zhang, Chen, Tim C

It fixed the aim7/specjbb2005 issues! 

Tested-by: Alex Shi <alex.shi@intel.com>


Regards! 
Alex  

>
>Needed to set the wcard bit in copy_skb_header otherwise it will not be cleared
>when called from skb_clone.  Which then hits the loopback device gets pushed
>into the rx path and is eventually dropped. The following patch fixes this.
>Hopefully, this is easy and fast enough for you Dave.
>
>
>[PATCH] net: fix deliver_no_wcard regression on loopback device
>
>deliver_no_wcard is not being set in skb_copy_header.
>In the skb_cloned case it is not being cleared and
>may cause the skb to be dropped when the loopback device
>pushes it back up the stack.
>
>Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
>---
>
>  net/core/skbuff.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
>
>diff --git a/net/core/skbuff.c b/net/core/skbuff.c
>index 9f07e74..bcf2fa3 100644
>--- a/net/core/skbuff.c
>+++ b/net/core/skbuff.c
>@@ -532,6 +532,7 @@ static void __copy_skb_header(struct sk_buff *new, const
>struct sk_buff *old)
>  	new->ip_summed		= old->ip_summed;
>  	skb_copy_queue_mapping(new, old);
>  	new->priority		= old->priority;
>+	new->deliver_no_wcard	= old->deliver_no_wcard;
>  #if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
>  	new->ipvs_property	= old->ipvs_property;
>  #endif

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

* Re: mpd client timeouts (bisected) 2.6.35-rc3
  2010-06-13 20:59       ` markus
  2010-06-14  0:14         ` David Miller
  2010-06-16 10:01         ` Christian Kujau
@ 2010-06-17 15:05         ` Christoph Fritz
  2 siblings, 0 replies; 13+ messages in thread
From: Christoph Fritz @ 2010-06-17 15:05 UTC (permalink / raw)
  To: markus
  Cc: John Fastabend, David Miller, linux-kernel, netdev, yanmin_zhang,
	alex.shi, tim.c.chen

On Sun, 2010-06-13 at 22:59 +0200, markus@trippelsdorf.de wrote:
> On Sun, Jun 13, 2010 at 01:36:30PM -0700, John Fastabend wrote:

> > [PATCH] net: fix deliver_no_wcard regression on loopback device
> 
> This solves the problem here. Thanks.

here too

Tested-by: Christoph Fritz <chf.fritz@googlemail.com>



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

end of thread, other threads:[~2010-06-17 15:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-12 10:28 mpd client timeouts (bisected) 2.6.35-rc3 Markus Trippelsdorf
2010-06-12 21:58 ` David Miller
2010-06-13  8:05   ` John Fastabend
2010-06-13 20:36     ` John Fastabend
2010-06-13 20:50       ` Eric Dumazet
2010-06-14  0:14         ` David Miller
2010-06-13 20:59       ` markus
2010-06-14  0:14         ` David Miller
2010-06-16 10:01         ` Christian Kujau
2010-06-17 15:05         ` Christoph Fritz
2010-06-14  0:13       ` David Miller
2010-06-14 14:13         ` Michael S. Tsirkin
2010-06-17  5:16       ` Shi, Alex

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.