lkml.org 
[lkml]   [2013]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [ 29/48] mm: migration: add migrate_entry_wait_huge()
> > > > From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > >
> > > > 3.9-stable review patch. If anyone has any objections, please let me know.
> > > >
> > > > ------------------
> > > >
> > > > From: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
> > > >
> > > > commit 30dad30922ccc733cfdbfe232090cf674dc374dc upstream.
> > > >
> > > > 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. As a result, users who try
> > > > to kick hugepage migration (via soft offlining, for example) occasionally
> > > > experience long delay or soft lockup.
> > > >
> > > > 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.
> > >
> > > I suspect that this code doesn't work correctly on i686 box with CONFIG_HIGHPTE.
> > > If we call hugetlb_fault() -> migration_entry_wait_huge() -> __migration_entry_wait(),
> > > this function tries to kunmap pte, in this case pte is not-kmapped pmd, via pte_unmap_unlock().
> > > If CONFIG_DEBUG_HIGHMEM is also enabled, it results in BUG_ON() at __kunmap_atomic().
> > >
> > > Correct me if I'm wrong.
> >
> > I haven't checked the code closer but the patch doesn't change anything
> > regarding pte_unmap_unlock. The only thing that it touches is the
> > _locking_. So whether there ever was a problem with kmap or not this
> > patch doesn't change it.
> >
> > That being said, the patch is OK for the stable tree.
>
> OK, I see. This is a different problem from this patch. If I'll find a real problem
> with kmap, I'll report it as the different problem.

As the result of detailed code review and test, I confirmed there is no problem about
this code path. Sorry for the noise.

Thanks,
Satoru


\
 
 \ /
  Last update: 2013-06-22 15:01    [W:0.087 / U:1.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site