]> git.baikalelectronics.ru Git - kernel.git/commit
hugetlb: fix copy_hugetlb_page_range() to handle migration/hwpoisoned entry
authorNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Mon, 23 Jun 2014 20:22:03 +0000 (13:22 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 23 Jun 2014 23:47:43 +0000 (16:47 -0700)
commit7f26c045a2842b8cf7b96ae189afe8aa83b51f2c
tree540d2a129fa06a8441050071a2a2fa53f953bc41
parent81b6520220d90a440b0ad35956d0754de55e2099
hugetlb: fix copy_hugetlb_page_range() to handle migration/hwpoisoned entry

There's a race between fork() and hugepage migration, as a result we try
to "dereference" a swap entry as a normal pte, causing kernel panic.
The cause of the problem is that copy_hugetlb_page_range() can't handle
"swap entry" family (migration entry and hwpoisoned entry) so let's fix
it.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Acked-by: Hugh Dickins <hughd@google.com>
Cc: Christoph Lameter <cl@linux.com>
Cc: <stable@vger.kernel.org> [2.6.37+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/hugetlb.c