From: Jeff Garzik <jgarzik@pobox.com>
To: hadi@cyberus.ca, "David S. Miller" <davem@davemloft.net>,
Paul Jakma <paul@clubi.ie>
Cc: Thomas Spatzier <thomas.spatzier@de.ibm.com>,
Hasso Tepper <hasso@estpak.ee>,
Herbert Xu <herbert@gondor.apana.org.au>,
netdev@oss.sgi.com
Subject: Re: [patch 4/10] s390: network driver.
Date: Sun, 19 Dec 2004 17:43:04 -0500 [thread overview]
Message-ID: <41C603F8.9030705@pobox.com> (raw)
In-Reply-To: <1103484552.1046.155.camel@jzny.localdomain>
jamal wrote:
> On Wed, 2004-12-15 at 10:03, Thomas Spatzier wrote:
>
>
>>jamal <hadi@cyberus.ca> wrote on 15.12.2004 14:50:27:
>>
>>
>>>When you netif_stop_queue you should never receive packets anymore
>>>at the device level. If you receive any its a bug and you should drop
>>>them and bitch violently. In other words i think what you have at the
>>>moment is bandaid not the solution.
>>
>>When we do a netif_stop_queue, we do not get any more packets.
>>So this behaviour is ok. The problem is that the socket write
>>queues fill up then and get blocked as soon as they are full.
>>
>
>
> This is the strange part. Anyone still willing to provide a sample
> program that hangs?
>
>
>>>Can you describe how your driver uses the netif_start/stop/wake
>>>interfaces?
>>
>>Before the patch we are talking about:
>>When we detect a cable pull (or something like this) we call
>>netif_stop_queue and set switch off the IFF_RUNNING flag.
>>Then when we detect that the cable is plugged in again, we
>>call netif_wake_queue and switch the IFF_RUNNING flag on.
>>
>
>
> Not too bad except user space doesnt get async notification.
>
>
>>And with the patch:
>>On cable pull we switch off IFF_RUNNING and call
>>netif_carrier_off. We still get packets but drop them.
>>When the cable is plugged in we switch on IFF_RUNNING and
>>call netif_carrier_on.
>
>
> Ok, thats something you need to change.
> Why you are setting that IFF_RUNNING flag?
> Look at e1000 they do it right there.
>
> On link up:
> netif_carrier_on(netdev);
> netif_wake_queue(netdev);
> On Link Down:
> netif_carrier_off(netdev); // wonder if these need swapping
> netif_stop_queue(netdev);
>
> Still, I think we need to resolve the original problem.
> And I have a feeling we wont be seeing any program which
> reproduces it ;->
I've been watching this thread, and am still waiting to see a good,
isolated test case.
My initial reaction was based on an observation that
(a) the proposed s390 change creates a CPU cycle soaker, a /dev/null for
skbs.
(b) it really sounds like the userland program is doing something broken
Even if (b) is not true, the change is unacceptable due to (a) regardless.
Jeff
next prev parent reply other threads:[~2004-12-19 22:43 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <OF88EC0E9F.DE8FC278-ONC1256F4A.0038D5C0-C1256F4A.00398E11@de.ibm.com>
2004-11-14 1:29 ` [patch 4/10] s390: network driver Jeff Garzik
2004-11-15 7:52 ` Paul Jakma
2004-11-21 8:16 ` Paul Jakma
2004-11-29 15:57 ` Thomas Spatzier
2004-11-29 16:30 ` Paul Jakma
2004-11-29 16:41 ` Thomas Spatzier
2004-11-29 20:27 ` Paul Jakma
2004-11-30 7:22 ` Thomas Spatzier
2004-12-05 6:25 ` Paul Jakma
2004-12-06 11:01 ` Post Network dev questions to netdev Please WAS(Re: " jamal
2004-12-06 11:27 ` jamal
2004-12-06 14:42 ` Hasso Tepper
2004-12-07 1:13 ` Herbert Xu
2004-12-07 2:22 ` jamal
2004-12-10 15:37 ` Paul Jakma
2004-12-14 7:40 ` Thomas Spatzier
2004-12-15 13:50 ` jamal
2004-12-15 15:03 ` Thomas Spatzier
2004-12-19 19:29 ` jamal
2004-12-19 22:29 ` Tommy Christensen
2004-12-19 23:05 ` jamal
2004-12-19 23:46 ` Tommy Christensen
2004-12-20 0:15 ` Jeff Garzik
2004-12-20 14:10 ` jamal
2004-12-20 18:54 ` Jeff Garzik
2004-12-21 0:13 ` Tommy Christensen
2004-12-21 1:19 ` Jeff Garzik
2004-12-22 10:56 ` Thomas Spatzier
2004-12-22 11:07 ` Jeff Garzik
2004-12-22 13:48 ` jamal
2005-01-03 9:10 ` Thomas Spatzier
2005-01-03 15:05 ` jamal
2005-01-04 23:28 ` Jeff Garzik
2005-01-05 3:19 ` jamal
2005-01-05 6:30 ` Paul Jakma
2005-01-05 13:16 ` jamal
2005-01-05 14:29 ` Paul Jakma
2005-01-06 13:55 ` jamal
2005-01-05 15:35 ` Tommy Christensen
2005-01-06 13:58 ` jamal
2005-01-06 15:06 ` Tommy Christensen
2005-01-07 13:32 ` jamal
2005-01-07 15:26 ` Tommy Christensen
2005-01-10 13:18 ` jamal
2005-01-16 23:10 ` jamal
2005-01-17 12:04 ` Hasso Tepper
2005-01-17 22:04 ` Tommy Christensen
2005-01-17 22:13 ` Peter Buckingham
2005-01-17 22:36 ` jamal
2005-01-17 22:53 ` Tommy Christensen
2005-01-17 21:38 ` Tommy Christensen
2005-01-30 23:39 ` Tommy Christensen
2005-01-31 0:09 ` jamal
2005-01-31 0:12 ` jamal
2005-01-31 0:31 ` Tommy Christensen
2005-01-31 3:26 ` jamal
2005-01-31 12:16 ` Tommy Christensen
2005-03-13 17:49 ` Hasso Tepper
2005-01-05 6:26 ` Paul Jakma
2004-12-20 14:16 ` Paul Jakma
2004-12-20 18:56 ` Jeff Garzik
2004-12-26 5:36 ` Herbert Xu
2004-12-19 22:43 ` Jeff Garzik [this message]
2004-12-19 23:54 ` Paul Jakma
2004-12-20 14:11 ` jamal
2004-12-07 2:39 ` jamal
2004-12-06 18:44 ` Paul Jakma
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=41C603F8.9030705@pobox.com \
--to=jgarzik@pobox.com \
--cc=davem@davemloft.net \
--cc=hadi@cyberus.ca \
--cc=hasso@estpak.ee \
--cc=herbert@gondor.apana.org.au \
--cc=netdev@oss.sgi.com \
--cc=paul@clubi.ie \
--cc=thomas.spatzier@de.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).