diff options
author | Andi Kleen <ak@linux.intel.com> | 2010-09-27 17:31:30 -0400 |
---|---|---|
committer | Andi Kleen <ak@linux.intel.com> | 2010-10-08 03:33:00 -0400 |
commit | fb46e73520940bfc426152cfe5e4a9f1ae3f00b6 (patch) | |
tree | c07420d04b11fd68ce59cdef64d8f6517240b5a9 /mm | |
parent | 1c80b990a3411733890eff10817e388d5e25e2dd (diff) |
HWPOISON: Convert pr_debugs to pr_info
Convert a lot of pr_debugs in memory-failure.c that are generally useful
to pr_info. It's reasonable to print at least one message why
offlining succeeded or failed by default.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/memory-failure.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index eebb9d8efae4..0a2ed9a17e8c 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c | |||
@@ -314,7 +314,7 @@ static void add_to_kill(struct task_struct *tsk, struct page *p, | |||
314 | * a SIGKILL because the error is not contained anymore. | 314 | * a SIGKILL because the error is not contained anymore. |
315 | */ | 315 | */ |
316 | if (tk->addr == -EFAULT) { | 316 | if (tk->addr == -EFAULT) { |
317 | pr_debug("MCE: Unable to find user space address %lx in %s\n", | 317 | pr_info("MCE: Unable to find user space address %lx in %s\n", |
318 | page_to_pfn(p), tsk->comm); | 318 | page_to_pfn(p), tsk->comm); |
319 | tk->addr_valid = 0; | 319 | tk->addr_valid = 0; |
320 | } | 320 | } |
@@ -582,7 +582,7 @@ static int me_pagecache_clean(struct page *p, unsigned long pfn) | |||
582 | pfn, err); | 582 | pfn, err); |
583 | } else if (page_has_private(p) && | 583 | } else if (page_has_private(p) && |
584 | !try_to_release_page(p, GFP_NOIO)) { | 584 | !try_to_release_page(p, GFP_NOIO)) { |
585 | pr_debug("MCE %#lx: failed to release buffers\n", pfn); | 585 | pr_info("MCE %#lx: failed to release buffers\n", pfn); |
586 | } else { | 586 | } else { |
587 | ret = RECOVERED; | 587 | ret = RECOVERED; |
588 | } | 588 | } |
@@ -1152,7 +1152,7 @@ int unpoison_memory(unsigned long pfn) | |||
1152 | page = compound_head(p); | 1152 | page = compound_head(p); |
1153 | 1153 | ||
1154 | if (!PageHWPoison(p)) { | 1154 | if (!PageHWPoison(p)) { |
1155 | pr_debug("MCE: Page was already unpoisoned %#lx\n", pfn); | 1155 | pr_info("MCE: Page was already unpoisoned %#lx\n", pfn); |
1156 | return 0; | 1156 | return 0; |
1157 | } | 1157 | } |
1158 | 1158 | ||
@@ -1161,7 +1161,7 @@ int unpoison_memory(unsigned long pfn) | |||
1161 | if (!get_page_unless_zero(page)) { | 1161 | if (!get_page_unless_zero(page)) { |
1162 | if (TestClearPageHWPoison(p)) | 1162 | if (TestClearPageHWPoison(p)) |
1163 | atomic_long_sub(nr_pages, &mce_bad_pages); | 1163 | atomic_long_sub(nr_pages, &mce_bad_pages); |
1164 | pr_debug("MCE: Software-unpoisoned free page %#lx\n", pfn); | 1164 | pr_info("MCE: Software-unpoisoned free page %#lx\n", pfn); |
1165 | return 0; | 1165 | return 0; |
1166 | } | 1166 | } |
1167 | 1167 | ||
@@ -1173,7 +1173,7 @@ int unpoison_memory(unsigned long pfn) | |||
1173 | * the free buddy page pool. | 1173 | * the free buddy page pool. |
1174 | */ | 1174 | */ |
1175 | if (TestClearPageHWPoison(page)) { | 1175 | if (TestClearPageHWPoison(page)) { |
1176 | pr_debug("MCE: Software-unpoisoned page %#lx\n", pfn); | 1176 | pr_info("MCE: Software-unpoisoned page %#lx\n", pfn); |
1177 | atomic_long_sub(nr_pages, &mce_bad_pages); | 1177 | atomic_long_sub(nr_pages, &mce_bad_pages); |
1178 | freeit = 1; | 1178 | freeit = 1; |
1179 | } | 1179 | } |
@@ -1222,12 +1222,12 @@ static int get_any_page(struct page *p, unsigned long pfn, int flags) | |||
1222 | set_migratetype_isolate(p); | 1222 | set_migratetype_isolate(p); |
1223 | if (!get_page_unless_zero(compound_head(p))) { | 1223 | if (!get_page_unless_zero(compound_head(p))) { |
1224 | if (is_free_buddy_page(p)) { | 1224 | if (is_free_buddy_page(p)) { |
1225 | pr_debug("get_any_page: %#lx free buddy page\n", pfn); | 1225 | pr_info("get_any_page: %#lx free buddy page\n", pfn); |
1226 | /* Set hwpoison bit while page is still isolated */ | 1226 | /* Set hwpoison bit while page is still isolated */ |
1227 | SetPageHWPoison(p); | 1227 | SetPageHWPoison(p); |
1228 | ret = 0; | 1228 | ret = 0; |
1229 | } else { | 1229 | } else { |
1230 | pr_debug("get_any_page: %#lx: unknown zero refcount page type %lx\n", | 1230 | pr_info("get_any_page: %#lx: unknown zero refcount page type %lx\n", |
1231 | pfn, p->flags); | 1231 | pfn, p->flags); |
1232 | ret = -EIO; | 1232 | ret = -EIO; |
1233 | } | 1233 | } |
@@ -1293,7 +1293,7 @@ int soft_offline_page(struct page *page, int flags) | |||
1293 | goto done; | 1293 | goto done; |
1294 | } | 1294 | } |
1295 | if (!PageLRU(page)) { | 1295 | if (!PageLRU(page)) { |
1296 | pr_debug("soft_offline: %#lx: unknown non LRU page type %lx\n", | 1296 | pr_info("soft_offline: %#lx: unknown non LRU page type %lx\n", |
1297 | pfn, page->flags); | 1297 | pfn, page->flags); |
1298 | return -EIO; | 1298 | return -EIO; |
1299 | } | 1299 | } |
@@ -1307,7 +1307,7 @@ int soft_offline_page(struct page *page, int flags) | |||
1307 | if (PageHWPoison(page)) { | 1307 | if (PageHWPoison(page)) { |
1308 | unlock_page(page); | 1308 | unlock_page(page); |
1309 | put_page(page); | 1309 | put_page(page); |
1310 | pr_debug("soft offline: %#lx page already poisoned\n", pfn); | 1310 | pr_info("soft offline: %#lx page already poisoned\n", pfn); |
1311 | return -EBUSY; | 1311 | return -EBUSY; |
1312 | } | 1312 | } |
1313 | 1313 | ||
@@ -1328,7 +1328,7 @@ int soft_offline_page(struct page *page, int flags) | |||
1328 | put_page(page); | 1328 | put_page(page); |
1329 | if (ret == 1) { | 1329 | if (ret == 1) { |
1330 | ret = 0; | 1330 | ret = 0; |
1331 | pr_debug("soft_offline: %#lx: invalidated\n", pfn); | 1331 | pr_info("soft_offline: %#lx: invalidated\n", pfn); |
1332 | goto done; | 1332 | goto done; |
1333 | } | 1333 | } |
1334 | 1334 | ||
@@ -1344,13 +1344,13 @@ int soft_offline_page(struct page *page, int flags) | |||
1344 | list_add(&page->lru, &pagelist); | 1344 | list_add(&page->lru, &pagelist); |
1345 | ret = migrate_pages(&pagelist, new_page, MPOL_MF_MOVE_ALL, 0); | 1345 | ret = migrate_pages(&pagelist, new_page, MPOL_MF_MOVE_ALL, 0); |
1346 | if (ret) { | 1346 | if (ret) { |
1347 | pr_debug("soft offline: %#lx: migration failed %d, type %lx\n", | 1347 | pr_info("soft offline: %#lx: migration failed %d, type %lx\n", |
1348 | pfn, ret, page->flags); | 1348 | pfn, ret, page->flags); |
1349 | if (ret > 0) | 1349 | if (ret > 0) |
1350 | ret = -EIO; | 1350 | ret = -EIO; |
1351 | } | 1351 | } |
1352 | } else { | 1352 | } else { |
1353 | pr_debug("soft offline: %#lx: isolation failed: %d, page count %d, type %lx\n", | 1353 | pr_info("soft offline: %#lx: isolation failed: %d, page count %d, type %lx\n", |
1354 | pfn, ret, page_count(page), page->flags); | 1354 | pfn, ret, page_count(page), page->flags); |
1355 | } | 1355 | } |
1356 | if (ret) | 1356 | if (ret) |