Messages in this thread | | | Date | Mon, 03 Jun 2013 10:34:41 -0400 | From | Naoya Horiguchi <> | Subject | Re: [PATCH v3 2/2] migrate: add migrate_entry_wait_huge() |
| |
On Mon, Jun 03, 2013 at 03:26:41PM +0200, Michal Hocko wrote: > On Tue 28-05-13 15:52:51, Naoya Horiguchi wrote: > > When we have a page fault for the address which is backed by a hugepage > > under migration, the kernel can't wait correctly and do busy looping on > > hugepage fault until the migration finishes. > > This is because pte_offset_map_lock() can't get a correct migration entry > > or a correct page table lock for hugepage. > > This patch introduces migration_entry_wait_huge() to solve this. > > > > Note that the caller, hugetlb_fault(), gets the pointer to the "leaf" > > entry with huge_pte_offset() inside which all the arch-dependency of > > the page table structure are. So migration_entry_wait_huge() and > > __migration_entry_wait() are free from arch-dependency. > > > > ChangeLog v3: > > - use huge_pte_lockptr > > > > ChangeLog v2: > > - remove dup in migrate_entry_wait_huge() > > > > Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> > > Reviewed-by: Rik van Riel <riel@redhat.com> > > Cc: stable@vger.kernel.org # 2.6.35 > > OK, this looks good to me and I guess you can safely replace > huge_pte_lockptr by &(mm)->page_table_lock so you can implement this > even without risky 1/2 of this series. The patch should be as simple as > possible especially when it goes to the stable.
Yes, I agree.
> > Without 1/2 dependency > Reviewed-by: Michal Hocko <mhocko@suse.cz>
Thanks, Naoya
| |