[PATCH] makedumpfile: Free pages aren't removed in non-cyclic mode.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

This is a bug since v1.5.4, it will mainly affect re-filtering
feature since the current makedumpfile generally works in cyclic
mode by default.

Note: these codes will be removed in the next version by merging
      the codes of cyclic mode and non-cyclic mode.


Thanks,
Atsushi Kumagai


From: Atsushi Kumagai <ats-kumagai@xxxxxxxxxxxxx>
Date: Tue, 14 Apr 2015 13:12:37 +0900
Subject: [PATCH] Free pages aren't removed in non-cyclic mode.

If the dump level is 16 (exclude only free pages), free pages will
not be removed in non-cyclic mode because exclude_unnecessary_pages()
will be never called in that case. This issue happens when
page_is_buddy is enabled, otherwise free pages will be removed
by using free list.

Signed-off-by: Atsushi Kumagai <ats-kumagai at wm.jp.nec.com>
---
 makedumpfile.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/makedumpfile.c b/makedumpfile.c
index 32f5459..cb172b4 100644
--- a/makedumpfile.c
+++ b/makedumpfile.c
@@ -5223,7 +5223,8 @@ create_2nd_bitmap(void)
 	if (info->dump_level & DL_EXCLUDE_CACHE ||
 	    info->dump_level & DL_EXCLUDE_CACHE_PRI ||
 	    info->dump_level & DL_EXCLUDE_USER_DATA ||
-	    NUMBER(PG_hwpoison) != NOT_FOUND_NUMBER) {
+	    NUMBER(PG_hwpoison) != NOT_FOUND_NUMBER ||
+	    ((info->dump_level & DL_EXCLUDE_FREE) && info->page_is_buddy)) {
 		if (!exclude_unnecessary_pages()) {
 			ERRMSG("Can't exclude unnecessary pages.\n");
 			return FALSE;
-- 
1.9.0



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux