Jeff Garzik writes:
> For review by the list... The other e100/e1000 changes are in the 2.5
> +#ifdef CONFIG_E1000_NAPI
> + /* Don't disable interrupts - rely on h/w interrupt
> + * moderation to keep interrupts low. netif_rx_schedule
> + * is NOP if already polling. */
> + netif_rx_schedule(netdev);
> +#else
It's clean but I have some concerns...
I think this will add interrupts when resources are fully utilized.
In other words a decrease in top performance. I say "think" because I have
no numbers.
At GIGE rate we have ~1 k interrupts/sec using interrupt delay. (it depend
of ring sizes etc). We are now seeing Linux boxes with ~10 GIGE interfaces.
So any effects gets multiplied.
It makes the use zero latency RX complicated. We see Ethernet getting
used for "new" applications as SCSI, filesystems etc. In current e1000
we just can set the desired interrupt delay and relax.
If/when PCI-X uses message signalled interrupts (MSI) we have this "un-
necessary" load over PCI too with bus arbitrations etc.
IMO believe your old plan having e1000 irq disable and with mitigation as
default feels better but testing is needed.
Cheers.
--ro
|