On Mon, 14 Mar 2011 15:12:41 -0700, "Venkateswararao Jujjuri (JV)" <jvrao@xxxxxxxxxxxxxxxxxx> wrote: > Given that the sprious wake-ups are common, we need to move the > condition setting right next to the wake_up(). I don't understand the above. What do you mean by spurious wakeups are common ? I guess what happened was that when the work queue got woken up via p9_client_cb, another request req->status was found to be received (REQ_STATUS_RCVD) because we set it ahead. So it is not that spurious wakeups are common, but rather it is a bug we had right ? > After setting the condition > to req->status = REQ_STATUS_RCVD, sprious wakeups may cause the > virtqueue back on the free list for someone else to use. > This may result in kernel panic while relasing the pinned pages > in p9_release_req_pages(). But why are we doing that release pages in the req_done path. ? why not after we wake up the sleeper in p9_client_rpc ? -aneesh -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html