Re: [patch 01/22] update ctime and mtime for mmaped write
From: Miklos Szeredi
Date: Thu Mar 01 2007 - 02:26:07 EST
> >> What happens if the application overwrites what it had written some
> >> time later? Nothing. The page is already read-write, the pte dirty,
> >> so even though the file was clearly modified, there's absolutely no
> >> way in which this can be used to force an update to the timestamp.
> >>
> >
> > Which, I realize now, actually means, that the patch is wrong. Msync
> > will have to write protect the page table entries, so that later
> > dirtyings may have an effect on the timestamp.
>
> I thought that PeterZ's changes were to write-protect the page after
> cleaning it so that future modifications could be detected and tracked
> accordingly? Does the right thing not happen already?
Yes, but MS_ASYNC does not clean the pages.
In fact a better solution may be to rely on the dirty bit in the page
tables, so that no more page faults are necessary.
Thanks,
Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/