On 07/24/2013 10:52 PM, Cyrill Gorcunov wrote: > On Wed, Jul 24, 2013 at 11:21:46AM -0700, Andy Lutomirski wrote: >>> >>> I fear for tracking soft-dirty-bit for swapped entries we sinply have >>> no other place than pte (still i'm quite open for ideas, maybe there >>> are a better way which I've missed). >> >> I know approximately nothing about how swap and anon_vma work. >> >> For files, sticking it in struct page seems potentially nicer, >> although finding a free bit might be tough. (FWIW, I have plans to >> free up a page flag on x86 some time moderately soon as part of a >> completely unrelated project.) I think this stuff really belongs to >> the address_space more than it belongs to the pte. > > Well, some part of information already lays in pte (such as 'file' bit, > swap entries) so it looks natural i think to work on this level. but > letme think if use page struct for that be more convenient... It hardly will be. Consider we have a page shared between two tasks, then first one "touches" it and soft-dirty is put onto his PTE and, subsequently, the page itself. The we go and clear sofr-dirty for the 2nd task. What should we do with the soft-dirty bit on the page? The soft-dirty thing watches changes in the virtual memory, not in the physical one. >> >> How do you handle the write syscall? > > I fear I somehow miss your point here, could please alaborate a bit? > There is no additional code I know of being write() specific, just > a code for #PF exceptions. > . > -- 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>