From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Stephen Hemminger <shemminger@osdl.org>, netdev@oss.sgi.com
Subject: Re: [PATCH] Updated 8139too with NAPI
Date: Fri, 31 Oct 2003 02:12:41 +0900 [thread overview]
Message-ID: <873cdaabue.fsf@devron.myhome.or.jp> (raw)
In-Reply-To: <3FA01629.2080202@pobox.com>
Jeff Garzik <jgarzik@pobox.com> writes:
> I'd like to apply this to net-drivers-2.[45]-exp, but it doesn't apply
> cleanly. Can you wait a bit, for my posting of those queues, and then
> resend?
Probably more tester/reviewer is always welcome, so I think it's good.
Stephen Hemminger <shemminger@osdl.org> writes:
> + /* Receive packets are processed by poll routine.
> + If not running start it now. */
> + if (status & RxAckBits){
> + if (netif_rx_schedule_prep(dev)) {
> + RTL_W16_F (IntrMask, rtl8139_norx_intr_mask);
> + __netif_rx_schedule (dev);
> }
I think that this style is common issues of NIC drivers for "NAPI
support and intr-mask" handling. Looks like __netif_poll_disable()
also has the following problem.
For example,
in ISR
[...]
if (status & RxAckBits){
if (netif_rx_schedule_prep(dev)) {
RTL_W16_F (IntrMask, rtl8139_norx_intr_mask);
__netif_rx_schedule (dev);
}
}
[...]
in dev_close()
[...]
while (test_bit(__LINK_STATE_RX_SCHED, &dev->state)) {
/* No hurry. */
current->state = TASK_INTERRUPTIBLE;
schedule_timeout(1);
}
--------- (*)
if (dev->stop)
dev->stop(dev);
[...]
If Rx interrupt happen on (*) point, ISR can't ack or disable.
Then it will start busy Rx interrupt loop. So if this happen, it's
seriously problem on UP system.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
next prev parent reply other threads:[~2003-10-30 17:12 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <3F9070B6.9090306@pobox.com>
2003-10-18 12:56 ` [Fwd: [RFT] NAPI for 8139too] OGAWA Hirofumi
2003-10-20 15:41 ` Stephen Hemminger
2003-10-20 20:11 ` [RFT] merged 8139too NAPI Stephen Hemminger
2003-10-21 13:35 ` OGAWA Hirofumi
2003-10-28 19:47 ` [PATCH] Updated 8139too with NAPI Stephen Hemminger
2003-10-29 19:34 ` Jeff Garzik
2003-10-30 17:12 ` OGAWA Hirofumi [this message]
[not found] ` <20031030104943.20b61af0.shemminger@osdl.org>
[not found] ` <87ekwu9tn4.fsf@devron.myhome.or.jp>
2003-11-11 22:31 ` Stephen Hemminger
2003-11-12 0:20 ` Jeff Garzik
2003-11-12 15:41 ` OGAWA Hirofumi
2003-11-12 16:01 ` Jeff Garzik
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=873cdaabue.fsf@devron.myhome.or.jp \
--to=hirofumi@mail.parknet.co.jp \
--cc=jgarzik@pobox.com \
--cc=netdev@oss.sgi.com \
--cc=shemminger@osdl.org \
/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).