On Wed, Mar 18, 2015 at 9:08 AM, Linus Torvalds
[off-list ref] wrote:
So why am I wrong? Why is testing for dirty not the same as testing
for writable?
I can see a few cases:
- your load has lots of writable (but not written-to) shared memory
Hmm. I tried to look at the xfsprog sources, and I don't see any
MAP_SHARED activity. It looks like it's just using pread64/pwrite64,
and the only MAP_SHARED is for the xfsio mmap test thing, not for
xfsrepair.
So I don't see any shared mappings, but I don't know the code-base.
- something completely different that I am entirely missing
So I think there's something I'm missing. For non-shared mappings, I
still have the idea that pte_dirty should be the same as pte_write.
And yet, your testing of 3.19 shows that it's a big difference.
There's clearly something I'm completely missing.
Linus