* Difference between release_page() and launder_page()
@ 2010-04-30 12:05 Akshat Aranya
0 siblings, 0 replies; only message in thread
From: Akshat Aranya @ 2010-04-30 12:05 UTC (permalink / raw)
To: linux-fsdevel, Trond Myklebust
Hi Trond and others,
I've been trying to figure out meaning of release_page() vs.
launder_page() by looking at the source code and the history behind
it. Here's what I could piece together so far:
1. Before launder_page() was added, release_page() was intended to do
the file system's writeback.
2. This would cause a deadlock for NFS because in some cases, the
inode lock would be taken after the page lock to process write
requests to the server.
3. The page writeback was moved to nfs_launder_page() instead of
nfs_release_page() to avoid the deadlock.
4. This, however, misses pages that are clean but unstable (?). To
allow writeback of these pages, writeback was added back to
nfs_release_page()
Do I have the picture correct? Could you explain how in NFS some
pages end up being dirty while others end up being clean-but-unstable?
Thanks,
Akshat
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2010-04-30 17:26 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-30 12:05 Difference between release_page() and launder_page() Akshat Aranya
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).