Re: [PATCH 7/7] hugetlb, HWPOISON: soft offlining for hugepage

From: Andi Kleen
Date: Mon Jul 05 2010 - 06:28:52 EST


> +void isolate_hwpoisoned_huge_page(struct page *hpage)
> +{
> + lock_page(hpage);
> + __isolate_hwpoisoned_huge_page(hpage);
> + unlock_page(hpage);
> +}

This assumes all other users (even outside this file)
who lock always do so on the head page too. Needs some double-checking?

> } else {
> pr_debug("soft offline: %#lx: isolation failed: %d, page count %d, type %lx\n",
> pfn, ret, page_count(page), page->flags);
> @@ -1351,8 +1380,8 @@ int soft_offline_page(struct page *page, int flags)
> return ret;
>
> done:
> - atomic_long_add(1, &mce_bad_pages);
> - SetPageHWPoison(page);
> + atomic_long_add(1 << compound_order(hpage), &mce_bad_pages);

Probably should add a separate counter too?

-Andi
--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
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/