Hi all, I want to reliably detect changes to a file even when written to using mmap. Surprisingly, there seems to be no API which would make this possible. Or at least I haven't found a way to do it... I looked at: - mtime. What is missing here is an API which would force mtime to be updated if there are dirty PTEs in some mapping (which need to be cleared/transferred to struct page at this point). This would allow to reliably detect changes to the file. If I understand it correctly, there was patch from Andy Lutomirski which made msync(ASYNC) do exactly this: http://oss.sgi.com/archives/xfs/2013-08/msg00748.html But it seems this never got in. The other problem with this is that mtime has limited granularity. (but maybe that could be worked around by having some kind of counter + API which tells how often mtime has been updated without changing its nominal value) - I also looked at soft-dirty bits, but this API seems to have several limitations: 1.) it tracks writes through a specific mapping 2.) it can only have a single user at the same time 3.) who has to have special privileges 4.) and it seems impossible read and clear the soft-dirty bits at the same time (so you might miss writes). But maybe there are other ways... I am missing something? Martin -- 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>