Re: [PATCH] mm: Save soft-dirty bits on swapped pages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/25/2013 12:26 PM, Hush Bensen wrote:
> On 07/25/2013 03:29 PM, Pavel Emelyanov wrote:
>> On 07/24/2013 11:40 PM, Andy Lutomirski wrote:
>>> On Wed, Jul 24, 2013 at 12:04 PM, Cyrill Gorcunov <gorcunov@xxxxxxxxx> wrote:
>>>> On Wed, Jul 24, 2013 at 10:55:41PM +0400, Pavel Emelyanov wrote:
>>>>>> 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?
>>>> Indeed, this won't help. Well then, bippidy-boppidy-boo, our
>>>> pants are metaphorically on fire (c)
>>> Hmm.  So there are at least three kinds of memory:
>>>
>>> Anonymous pages: soft-dirty works
>>> Shared file-backed pages: soft-dirty does not work
>>> Private file-backed pages: soft-dirty works (but see below)
>> The shared file-backed pages case works, but unmap-map case doesn't
> 
> What's the meaning of unmap-map case?

Unmap is what happens when Linux runs out of memory, starts memory
reclaim procedure and removes a page from task's address space, replacing
the respective pte with an information where (in swap or in file) the
page can be found.

Map is what occurs when the task touches the unmapped page again, the
respective page is read back from file/swap and the respective pte if
filled with its pfn.

This patch fixes the soft-dirty bit preservation during the unmap-map cycle
for pages, that go to swap.

Sorry for confusion.

>> preserve the soft-dirty bit. Just like the private file did. We'll
>> fix this case next.

Thanks,
Pavel

--
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>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]