On 05/20/2015 07:44 AM, Jan Kara wrote:
Yeah, that's what I meant. If you create a function which manipulates
page cache, you better make it work with other functions manipulating page
cache. Otherwise it's a landmine waiting to be tripped by some unsuspecting
developer. Sure you can document all the conditions under which the
function is safe to use but a function that has several paragraphs in front
of it explaning when it is safe to use isn't very good API...
Violent agreement, of course. To put it in concrete terms, each of
the page fork support functions must be examined and determined
sane. They are:
* cow_replace_page_cache
* cow_delete_from_page_cache
* cow_clone_page
* page_cow_one
* page_cow_file
Would it be useful to drill down into those, starting from the top
of the list?