On Mon, 2010-09-20 at 14:49 +0200, Menyhart Zoltan wrote: > Hi, > > nfs_inode_add_request() runs under the protection of the Page Lock > while setting up SetPagePrivate(), set_page_private(). > > The consumers of PagePrivate() run also under the protection of the Page Lock. > > On the other hand, nfs_inode_remove_request() invoked by > nfs_writeback_release_full() and nfs_commit_release() apparently does > not take the Page Lock. > > nfs_inode_remove_request() includes the sequence of > > set_page_private(req->wb_page, 0); > ClearPagePrivate(req->wb_page); > > When the base kernel calls e.g. > > mapping->a_ops->releasepage(page, gfp_mask) > > then nfs_release_page() may see an incoherent "private" state. > > Should not all the "private" operations be protected by the Page Lock? No. Cheers Trond -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html