Re: 2.6.10 Kernel BUG at hugetlbpage:212 (x86_64 and i386)

From: William Lee Irwin III
Date: Fri Feb 04 2005 - 15:26:00 EST


On Fri, Feb 04, 2005 at 02:06:05PM -0600, Mr. Berkley Shands wrote:
> Sorry, but I still crash. This time it hung the kernel so bad I had to
> powerfail to restart.

Well, that fix is needed anyway.

On Fri, Feb 04, 2005 at 02:06:05PM -0600, Mr. Berkley Shands wrote:
> Feb 4 13:43:19 eclipse kernel: RIP: 0010:[<ffffffff8011e3cb>]
> <ffffffff8011e3cb>{unmap_hugepage_range+75}

Could you try this?


-- wli


Index: mm2-2.6.11-rc2/arch/i386/mm/hugetlbpage.c
===================================================================
--- mm2-2.6.11-rc2.orig/arch/i386/mm/hugetlbpage.c 2005-01-29 01:13:39.000000000 -0800
+++ mm2-2.6.11-rc2/arch/i386/mm/hugetlbpage.c 2005-02-04 12:05:12.000000000 -0800
@@ -209,14 +209,17 @@
{
struct mm_struct *mm = vma->vm_mm;
unsigned long address;
- pte_t pte;
+ pte_t pte, *ptep;
struct page *page;

BUG_ON(start & (HPAGE_SIZE - 1));
BUG_ON(end & (HPAGE_SIZE - 1));

for (address = start; address < end; address += HPAGE_SIZE) {
- pte = ptep_get_and_clear(huge_pte_offset(mm, address));
+ ptep = huge_pte_offset(mm, address);
+ if (!ptep)
+ continue;
+ pte = ptep_get_and_clear(ptep);
if (pte_none(pte))
continue;
page = pte_page(pte);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/