The address_space::writepage callback is called from try_to_swap_out()
path, and also from the filemap_sync_pte() path.  There appears to be no
way to tell the difference between the two callers.  This is not good
because the semantics are very different:  "sync this page" versus "page
is going away".

Should address_space::writepage get passed an additional arg, indicating
the caller?
Should filemap_sync_pte call address_space::sync_page instead of
::writepage?

Either way, this allows the writepage function to know whether it really
needs to store the page, because it is going away, or not.

I will admit I might be missing something obvious...  I'm pretty new to
this part of the code.

        Jeff


-- 
Jeff Garzik             | "When I do this, my computer freezes."
Building 1024           |          -user
MandrakeSoft            | "Don't do that."
                        |          -level 1
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to