Messages in this thread | | | From | Stefan Lankes <> | Subject | RE: [RFC PATCH 0/4]: affinity-on-next-touch | Date | Fri, 12 Jun 2009 15:21:15 +0200 |
| |
> So mbind(MPOL_MF_LAZY) is taking care of changing page protection so as > to generate page-faults on next-touch? (instead of your madvise) > Is it migrating the whole memory area? Or only single pages?
mbind removes the pte references. Page migration will occur, when a task access to one of these unmapped pages. Therefore, Lee's solution migrate one single page and not the whole area.
You find further information at slides 19-23 of http://mirror.linux.org.au/pub/linux.conf.au/2007/video/talks/197.pdf.
> Then, what's happening with MPOL_MF_LAZY in the kernel? Is it actually > stored in the mempolicy? If so, couldn't another fault later cause > another migration? > Or is MPOL_MF_LAZY filtered out of the policy once the protection of > all > PTE has been changed? > > I don't see why we need a new mempolicy here. If we are migrating > single > pages, migrate-on-next-touch looks like a page-attribute to me. There > should be nothing to store in a mempolicy/VMA/whatever. >
MPOL_MF_LAZY is used as flag and does not specify a new policy. Therefore, MPOL_MF_LAZY isn't stored in a VMA. The flag is only used to detect that the system call mbind has to unmap these pages.
Stefan
| |