Re: [PATCH v2] After swapout/swapin private dirty mappings are reported clean in smaps

KOSAKI Motohiro
2010-09-15T04:48:14Z

> On Wednesday 15 September 2010 05:56:36 KOSAKI Motohiro wrote:
> > > diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
> > > index 439fc1f..06fc468 100644
> > > --- a/fs/proc/task_mmu.c
> > > +++ b/fs/proc/task_mmu.c
> > > @@ -368,7 +368,11 @@ static int smaps_pte_range(pmd_t *pmd, unsigned long
> > > addr, unsigned long end, mss->shared_clean += PAGE_SIZE;
> > > mss->pss += (PAGE_SIZE << PSS_SHIFT) / mapcount;
> > > } else {
> > > - if (pte_dirty(ptent))
> > > + /*
> > > + * File-backed pages, now anonymous are dirty
> > > + * with respect to the file.
> > > + */
> > > + if (pte_dirty(ptent) || (vma->vm_file && PageAnon(page)))
> > > mss->private_dirty += PAGE_SIZE;
> > > else
> > > mss->private_clean += PAGE_SIZE;
> >
> > This is risky than v1. number of dirties are used a lot of application.
> >
>
> This is exactly to help those applications, as currently after swap-out and
> swap-in, the same pages are accounted as "Private_Clean:" instead of
> "Private_Dirty:".

I don't think so. incorrect infomation bring a lot of confusion rather than its worth.