diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 36a0a792f4f873611caa5c169eaa56136be79ef3..4e8029a7a4bf7c6d4b136f8721944db8035afdca 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -2695,9 +2695,8 @@ void warn_alloc_failed(gfp_t gfp_mask, unsigned int order, const char *fmt, ...)
 		va_end(args);
 	}
 
-	pr_warn("%s: page allocation failure: order:%u, mode:0x%x\n",
-		current->comm, order, gfp_mask);
-
+	pr_warn("%s: page allocation failure: order:%u, mode:%#x(%pGg)\n",
+		current->comm, order, gfp_mask, &gfp_mask);
 	dump_stack();
 	if (!should_suppress_show_mem())
 		show_mem(filter);