[E1000-devel] E1000_DESC_UNUSED miscalculation?

2018-03-14 Thread Sylvia Else
While researching the race in rx configuration, I came across the following code in e1000.h #define E1000_DESC_UNUSED(R)\ ({ \ unsigned int clean = smp_load_acquire(&(R)->next

[E1000-devel] Race in RX configuration

2018-03-14 Thread Sylvia Else
When configuring the rx part of the interface, the e1000_main.c module enables receive on the adapter before it has initialised the buffer addresses. The resulting race with the arrival of the first packet can lead to the adapter and the driver having different ideas about where the next packet