On 04-01-2008 12:40, David Miller wrote:
...
> That "tx_cleaned" thing clouds the logic in all of these driver's
> poll routines.
>
> The one necessary precondition is that when work_done < budget
> we exit polling and return a value less than budget.
>
> If the ->poll() returns a value less than
From: Andi Kleen <[EMAIL PROTECTED]>
Date: Sat, 05 Jan 2008 14:29:05 +0100
> In 2.4 we used to have (haven't checked recently) performance regressions
> with NAPI vs non NAPI (or versus the old BCM vendor driver) on tg3 for
> some workloads that didn't fully fill the link. The theory was always
>
David Miller <[EMAIL PROTECTED]> writes:
> From: James Chapman <[EMAIL PROTECTED]>
> Date: Sat, 05 Jan 2008 00:18:31 +
>
>> David Miller wrote:
>> > From: James Chapman <[EMAIL PROTECTED]>
>> > Date: Fri, 04 Jan 2008 20:10:30 +
>> >
>> >> With the latest NAPI, this code has to change. But
From: James Chapman <[EMAIL PROTECTED]>
Date: Sat, 05 Jan 2008 00:18:31 +
> David Miller wrote:
> > From: James Chapman <[EMAIL PROTECTED]>
> > Date: Fri, 04 Jan 2008 20:10:30 +
> >
> >> With the latest NAPI, this code has to change. But rather than remove
> >> the tx_cleaned logic comple
David Miller wrote:
> From: James Chapman <[EMAIL PROTECTED]>
> Date: Fri, 04 Jan 2008 20:10:30 +
>
>> With the latest NAPI, this code has to change. But rather than remove
>> the tx_cleaned logic completely, shouldn't transmit processing be
>> included in the work_done accounting when a drive
David Miller wrote:
> Several Intel networking drivers such as e1000, e1000e
> and e100 all do this to exit NAPI polling:
>
> if ((!tx_cleaned && (work_done == 0)) ||
> !netif_running(poll_dev)) {
>
> I tried to make this use in the NAPI rework:
>
> if ((!tx_cleaned && (work
From: James Chapman <[EMAIL PROTECTED]>
Date: Fri, 04 Jan 2008 20:10:30 +
> With the latest NAPI, this code has to change. But rather than remove
> the tx_cleaned logic completely, shouldn't transmit processing be
> included in the work_done accounting when a driver does transmit cleanup
> pro
Several Intel networking drivers such as e1000, e1000e
and e100 all do this to exit NAPI polling:
if ((!tx_cleaned && (work_done == 0)) ||
!netif_running(poll_dev)) {
I tried to make this use in the NAPI rework:
if ((!tx_cleaned && (work_done < budget)) ||