On Fri, 26 Jun 2009, Oleg Nesterov wrote:Sure. The snippet above was just to show what typically the code does, not a suggestion on how to solve the socket case. But yeah, the problem in this case is the waitqueue_active() call. Without that, the wait queue lock/unlock in poll_wait() and the one in wake_up() guarantees the necessary barriers. Some might argue the costs of the lock/unlock of q->lock, and wonder if MBs are a more efficient solution. This is something I'm not going into. To me, it just looked not right having cross-matching MB in different subsystems. - Davide -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Greg Kroah-Hartman | [PATCH 004/196] Chinese: add translation of SubmittingPatches |
| Rafael J. Wysocki | [Bug #11210] libata badness |
| Andrea Arcangeli | [PATCH 00 of 11] mmu notifier #v16 |
| Andrew Morton | Re: -mm merge plans for 2.6.23 -- sys_fallocate |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Daniel Eischen | Re: error with thread |
| David Miller | Re: [GIT]: Networking |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
