On Thu, Nov 12, 2015 at 12:21:30AM -0500, Daniel Micay wrote: > > I also think that the kernel should commit to either zeroing the page > > or leaving it unchanged in response to MADV_FREE (even if the decision > > of which to do is made later on). I think that your patch series does > > this, but only after a few of the patches are applied (the swap entry > > freeing), and I think that it should be a real guaranteed part of the > > semantics and maybe have a test case. > > This would be a good thing to test because it would be required to add > MADV_FREE_UNDO down the road. It would mean the same semantics as the > MEM_RESET and MEM_RESET_UNDO features on Windows, and there's probably > value in that for the sake of migrating existing software too.
So, do you mean that we could implement MADV_FREE_UNDO with "read" opearation("just access bit marking) easily in future? If so, it would be good reason to change MADV_FREE from dirty bit to access bit. Okay, I will look at that. > > For one example, it could be dropped into Firefox: > > https://dxr.mozilla.org/mozilla-central/source/memory/volatile/VolatileBufferWindows.cpp > > And in Chromium: > > https://code.google.com/p/chromium/codesearch#chromium/src/base/memory/discardable_shared_memory.cc > > Worth noting that both also support the API for pinning/unpinning that's > used by Android's ashmem too. Linux really needs a feature like this for > caches. Firefox simply doesn't drop the memory at all on Linux right now: > > https://dxr.mozilla.org/mozilla-central/source/memory/volatile/VolatileBufferFallback.cpp > > (Lock == pin, Unlock == unpin) > > For reference: > > https://msdn.microsoft.com/en-us/library/windows/desktop/aa366887(v=vs.85).aspx > -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html