diff options
Diffstat (limited to 'mm/memory-failure.c')
-rw-r--r-- | mm/memory-failure.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index d9359b770cd9..501820c815b3 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c | |||
@@ -1187,10 +1187,10 @@ int memory_failure(unsigned long pfn, int trapno, int flags) | |||
1187 | * The check (unnecessarily) ignores LRU pages being isolated and | 1187 | * The check (unnecessarily) ignores LRU pages being isolated and |
1188 | * walked by the page reclaim code, however that's not a big loss. | 1188 | * walked by the page reclaim code, however that's not a big loss. |
1189 | */ | 1189 | */ |
1190 | if (!PageHuge(p) && !PageTransTail(p)) { | 1190 | if (!PageHuge(p)) { |
1191 | if (!PageLRU(p)) | 1191 | if (!PageLRU(hpage)) |
1192 | shake_page(p, 0); | 1192 | shake_page(hpage, 0); |
1193 | if (!PageLRU(p)) { | 1193 | if (!PageLRU(hpage)) { |
1194 | /* | 1194 | /* |
1195 | * shake_page could have turned it free. | 1195 | * shake_page could have turned it free. |
1196 | */ | 1196 | */ |
@@ -1777,12 +1777,12 @@ int soft_offline_page(struct page *page, int flags) | |||
1777 | } else if (ret == 0) { /* for free pages */ | 1777 | } else if (ret == 0) { /* for free pages */ |
1778 | if (PageHuge(page)) { | 1778 | if (PageHuge(page)) { |
1779 | set_page_hwpoison_huge_page(hpage); | 1779 | set_page_hwpoison_huge_page(hpage); |
1780 | dequeue_hwpoisoned_huge_page(hpage); | 1780 | if (!dequeue_hwpoisoned_huge_page(hpage)) |
1781 | atomic_long_add(1 << compound_order(hpage), | 1781 | atomic_long_add(1 << compound_order(hpage), |
1782 | &num_poisoned_pages); | 1782 | &num_poisoned_pages); |
1783 | } else { | 1783 | } else { |
1784 | SetPageHWPoison(page); | 1784 | if (!TestSetPageHWPoison(page)) |
1785 | atomic_long_inc(&num_poisoned_pages); | 1785 | atomic_long_inc(&num_poisoned_pages); |
1786 | } | 1786 | } |
1787 | } | 1787 | } |
1788 | unset_migratetype_isolate(page, MIGRATE_MOVABLE); | 1788 | unset_migratetype_isolate(page, MIGRATE_MOVABLE); |