|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [xen-devel][PATCH] concurrency control issues in netback
On 5 Jun 2006, at 04:18, Ky Srinivasan wrote:
I have been looking at the netback code (netback.c) and I think there
may be a bug in the way concurrency is managed here. Specifically, the
function that cleans up completed requests (net_tx_action_dealloc()) is
executed only from within a tasklet and hence does not acquire any
locks
to manipulate global state that could potentially be modified from
other
cpus. The code seems to assume writes are ordered without explicitly
forcing the ordering. The problematic global state is the index that
keeps track of the last valid index to be dealloced (dealloc_prod).
This
could potentially be manipulated outside of the tasklet.
That's a good catch! Does your patch fix the network problems that you
guys have been seeing?
The patch needs cleaning up: at least to rename the lock, but actually
just explicitly forcing the ordering we need is probably better. I'll
sort that out and check in a suitable fix.
Thanks!
Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|