Davide Libenzi wrote: > On Thu, 18 Jun 2009, Gregory Haskins wrote: > > >> Actually there is only one (the tx-thread) aside from the eventfd >> imposed workqueue one. Incidentally, I would love to get rid of the >> other thread too, so I am not just picking on eventfd ;). The other is >> a lot harder since it has to update the virtio-ring and may need to page >> in guest memory to do so. >> > > No, there is the interface rx softirq too, that makes two. Actually, I believe you are mistaken. It normally executes the softirq in interrupt context, not a thread. But I digress. Lets just shelve the SRCU conversation for another day. It was my bad for introducing it now prematurely to solve a mostly unrelated problem: the module-reference thing. I didn't realize the SRCU change would be so controversial, and I didn't think to split things apart as I have done today. But the fact is: I do not see any way to actually use your referenceless POLLHUP release code in a race free way without doing something like I propose in 3/4, 4/4. Lets keep the discussion focused on that for now, if we could. Later, after we get this thing all built, I will re-run the numbers and post some results so that Davide may have better proof that the context switch overhead isn't just lost in the noise. I think that is all he is asking for anyway, which is understandable. Regards, -Greg