Thread (4 messages) 4 messages, 3 authors, 2015-03-26

Re: [PATCH] mm/memory-failure.c: define page types for action_result() in one place

From: Naoya Horiguchi <hidden>
Date: 2015-03-26 00:01:49
Also in: lkml

On Tue, Mar 24, 2015 at 09:02:13PM -0700, David Rientjes wrote:
On Thu, 19 Mar 2015, Naoya Horiguchi wrote:
quoted
This cleanup patch moves all strings passed to action_result() into a single
array action_page_type so that a reader can easily find which kind of action
results are possible. And this patch also fixes the odd lines to be printed
out, like "unknown page state page" or "free buddy, 2nd try page".

Signed-off-by: Naoya Horiguchi <redacted>
---
 mm/memory-failure.c | 107 +++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 76 insertions(+), 31 deletions(-)
diff --git v3.19.orig/mm/memory-failure.c v3.19/mm/memory-failure.c
index d487f8dc6d39..afb740e1c8b0 100644
--- v3.19.orig/mm/memory-failure.c
+++ v3.19/mm/memory-failure.c
@@ -521,6 +521,52 @@ static const char *action_name[] = {
 	[RECOVERED] = "Recovered",
 };
 
+enum page_type {
+	KERNEL,
+	KERNEL_HIGH_ORDER,
+	SLAB,
+	DIFFERENT_COMPOUND,
+	POISONED_HUGE,
+	HUGE,
+	FREE_HUGE,
+	UNMAP_FAILED,
+	DIRTY_SWAPCACHE,
+	CLEAN_SWAPCACHE,
+	DIRTY_MLOCKED_LRU,
+	CLEAN_MLOCKED_LRU,
+	DIRTY_UNEVICTABLE_LRU,
+	CLEAN_UNEVICTABLE_LRU,
+	DIRTY_LRU,
+	CLEAN_LRU,
+	TRUNCATED_LRU,
+	BUDDY,
+	BUDDY_2ND,
+	UNKNOWN,
+};
+
I like the patch because of the consistency in output and think it's worth 
the extra 1% .text size.

My only concern is the generic naming of the enum members.  
memory-failure.c is already an offender with "enum outcome" and the naming 
of its members.

Would you mind renaming these to be prefixed with "MSG_"?
no, your naming is clearer and represents better what it is, so I agree with it.
These enums should be anonymous, too, nothing is referencing enum outcome 
or your new enum page_type.
Or the type of action_result()'s 2nd parameter can be "enum page_type".

Thanks,
Naoya Horiguchi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help