Thread (3 messages) 3 messages, 3 authors, 2011-08-26

Re: [PATCH net-next-2.6] e1000: save skb counts in TX to avoid cache misses

flat view

From: Jeff Kirsher <hidden>
Date: 2011-08-26 03:52:40

On Thu, 2011-08-25 at 17:39 -0700, Dean Nelson wrote:
Virtual Machines with emulated e1000 network adapter running on
Parallels'
server were seeing kernel panics due to the e1000 driver dereferencing
an
unexpected NULL pointer retrieved from buffer_info->skb.

The problem has been addressed for the e1000e driver, but not for the
e1000.
Since the two drivers share similar code in the affected area, a port
of the
following e1000e driver commit solves the issue for the e1000 driver:

commit 9ed318d546a29d7a591dbe648fd1a2efe3be1180
Author: Tom Herbert [off-list ref]
Date:   Wed May 5 14:02:27 2010 +0000

    e1000e: save skb counts in TX to avoid cache misses

    In e1000_tx_map, precompute number of segements and bytecounts
which
    are derived from fields in skb; these are stored in buffer_info.
When
    cleaning tx in e1000_clean_tx_irq use the values in the associated
    buffer_info for statistics counting, this eliminates cache misses
    on skb fields.


Signed-off-by: Dean Nelson <redacted> 
Acked-by: Jeff Kirsher <redacted>

Looks fine.

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help