lkml.org 
[lkml]   [2013]   [Aug]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 1/2] [PATCH] mm: Save soft-dirty bits on swapped pages
On Thu, Aug 01, 2013 at 03:16:32PM +0900, Minchan Kim wrote:
>
> I don't get it. Could you correct me with below example?
>
> Process A context
> try_to_unmap
> swp_pte = swp_entry_to_pte /* change generic swp into arch swap */
> swp_pte = pte_swp_mksoft_dirty(swp_pte);
> set_pte_at(, swp_pte);
>
> Process A context
> ..
> mincore_pte_range
pte_t pte = *ptep; <-- local copy of the pte value, in memory it remains the same
with swap softdirty bit set
> pte_to_swp_entry
> pte = pte_swp_clear_soft_dirty <=== 1)
> change arch swp with generic swp
> mincore_page
>
> Process B want to know dirty state of the page
> ..
> pagemap_read
> pte_to_pagemap_entry
> is_swap_pte
> if (pte_swap_soft_dirty(pte)) <=== but failed by 1)
>
> So, Process B can't get the dirty status from process A's the page.


\
 
 \ /
  Last update: 2013-08-01 08:41    [W:0.098 / U:0.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site