Messages in this thread | | | Date | Thu, 30 Jul 2009 06:39:51 -0500 | From | Robin Holt <> | Subject | Re: Is get_user_pages() enough to prevent pages from being swapped out ? |
| |
> > On Wednesday 29 July 2009 17:26:11 Hugh Dickins wrote: ... > > > On the other hand, despite the raised reference count, under memory > > > pressure that page might get unmapped from the user pagetable, and > > > might even be written out to swap in its half-dirty state (though
One thing you did not mention in the above description is that the page is marked clean by the write-out to swap. I am not sure I recall the method of mapping involved here, but it is necessary to ensure the page is marked dirty again before the driver releases it. If the page is not marked dirty as part of your method of releasing it, the changes you have made between when the page was first written out and when you are freeing it will get lost.
Thanks, Robin
| |