On Thu 05-03-15 11:32:25, Boaz Harrosh wrote: > On 03/05/2015 11:24 AM, Boaz Harrosh wrote: > > > > [v1] > > Without this patch, c/mtime is not updated correctly when mmap'ed page is > > first read from and then written to. > > > > A new xfstest is submitted for testing this (generic/080) > > > > [v2] > > Jan Kara has pointed out that if we add the > > sb_start/end_pagefault pair in the new pfn_mkwrite we > > are then fixing another bug where: A user could start > > writing to the page while filesystem is frozen. > > > > Thanks Jan. > > Just as curiosity, does the freezing code goes and turns all mappings > into read-only, Also for pfn mapping? Hum, that's a good question. Probably we don't end up doing that. For normal filesystems we sync all inodes which also writeprotects all pages (in clear_page_dirty_for_io() - for normal filesystems we know that if page is writeably mapped it is dirty). However this won't happen for pfn mapping as we don't have dirty pages. So we probably need dax_freeze() implementation that will walk through all inodes with writeable mappings and writeprotect them. > Do you think there is already an xfstest freezing test that should now > fail, and will succeed after this patch (v2). Something like: > * mmap-read/write before the freeze > * freeze the fs > * Another thread tries to mmap-write, should get stuck > * unfreeze the fs > * Now mmap-writer continues I don't remember there would be any test to specifically test this. Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>