On Sat, Jun 29, 2024 at 5:00 AM Jiaqi Yan jiaqiyan@google.com wrote:
Logs from soft_offline_page and soft_offline_in_use_page have different formats than majority of the memory failure code:
"Memory failure: 0x${pfn}: ${lower_case_message}"
Convert them to the following format:
"Soft offline: 0x${pfn}: ${lower_case_message}"
No functional change in this commit.
Acked-by: Miaohe Lin linmiaohe@huawei.com Signed-off-by: Jiaqi Yan jiaqiyan@google.com
LGTM. Feel free to add: Reviewed-by: Lance Yang ioworker0@gmail.com
Thanks, Lance
mm/memory-failure.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 2cf7acc286de..685ab9a77966 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -2640,6 +2640,9 @@ int unpoison_memory(unsigned long pfn) } EXPORT_SYMBOL(unpoison_memory);
+#undef pr_fmt +#define pr_fmt(fmt) "Soft offline: " fmt
static bool mf_isolate_folio(struct folio *folio, struct list_head *pagelist) { bool isolated = false; @@ -2695,7 +2698,7 @@ static int soft_offline_in_use_page(struct page *page)
if (!huge && folio_test_large(folio)) { if (try_to_split_thp_page(page, true)) {
pr_info("soft offline: %#lx: thp split failed\n", pfn);
pr_info("%#lx: thp split failed\n", pfn); return -EBUSY; } folio = page_folio(page);
@@ -2707,7 +2710,7 @@ static int soft_offline_in_use_page(struct page *page) if (PageHWPoison(page)) { folio_unlock(folio); folio_put(folio);
pr_info("soft offline: %#lx page already poisoned\n", pfn);
pr_info("%#lx: page already poisoned\n", pfn); return 0; }
@@ -2720,7 +2723,7 @@ static int soft_offline_in_use_page(struct page *page) folio_unlock(folio);
if (ret) {
pr_info("soft_offline: %#lx: invalidated\n", pfn);
pr_info("%#lx: invalidated\n", pfn); page_handle_poison(page, false, true); return 0; }
@@ -2737,13 +2740,13 @@ static int soft_offline_in_use_page(struct page *page) if (!list_empty(&pagelist)) putback_movable_pages(&pagelist);
pr_info("soft offline: %#lx: %s migration failed %ld, type %pGp\n",
pr_info("%#lx: %s migration failed %ld, type %pGp\n", pfn, msg_page[huge], ret, &page->flags); if (ret > 0) ret = -EBUSY; } } else {
pr_info("soft offline: %#lx: %s isolation failed, page count %d, type %pGp\n",
pr_info("%#lx: %s isolation failed, page count %d, type %pGp\n", pfn, msg_page[huge], page_count(page), &page->flags); ret = -EBUSY; }
@@ -2795,7 +2798,7 @@ int soft_offline_page(unsigned long pfn, int flags) mutex_lock(&mf_mutex);
if (PageHWPoison(page)) {
pr_info("%s: %#lx page already poisoned\n", __func__, pfn);
pr_info("%#lx: page already poisoned\n", pfn); put_ref_page(pfn, flags); mutex_unlock(&mf_mutex); return 0;
-- 2.45.2.803.g4e1b14247a-goog