Thread (11 messages) flat view 11 messages, 2 authors, 2011-08-22

Re: [PATCH net-next 3/5] be2net: fix erx->rx_drops_no_frags wrap around

From: Eric Dumazet <hidden>
Date: 2011-08-22 11:47:36

Le lundi 22 août 2011 à 13:43 +0200, Eric Dumazet a écrit :
This adds a race for lockless SNMP readers (in be_get_stats64())

They can see the 32bit value going backward.

You have to be very careful to read the *acc once, and write it once.
The "write once" is the only requirement.

Something like :

u32 newval = hi(*acc) + val;

if (wrapped)
	newval += 65536;
ACCESS_ONCE(*acc) = newval;


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