[lkml]   [2005]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Linux Kernel Dump Summit 2005

On Tue, 18 Oct 2005 22:48:23 +0900 (JST), OBATA Noboru wrote:

>> The 2nd issue (memory size problem) may be solved by exporting
>> diskdump's functions to kdump.
>Could you briefly explain the implementation of partial dump in
>diskdump for those who are not familiar with it?
>- Levels of partial dump (supported page categories)
>- How to indentify the category (kernel data structure used)

Partial dump of diskdump defines 5 filters.

#define DUMP_EXCLUDE_CACHE 0x00000001 /* Exclude LRU & SwapCache pages*/
#define DUMP_EXCLUDE_CLEAN 0x00000002 /* Exclude all-zero pages */
#define DUMP_EXCLUDE_FREE 0x00000004 /* Exclude free pages */
#define DUMP_EXCLUDE_ANON 0x00000008 /* Exclude Anon pages */
#define DUMP_SAVE_PRIVATE 0x00000010 /* Save private pages */

You can select each filters for partialdump. (Therefore, there are 32
levels of partial dump.)


This filter uses only page flags of struct page.
If the following condition is true, the page is not dumped.

!PageAnon(page) && (PageLRU(page) || PageSwapCache(page))


If this filter is enabled, a page which is filled with zero is not


If this filter is enabled, free pages are not dumped. Diskdump find free
pages from free_list of zone->free_area.


This filter uses only page flags of struct page.
If the following condition is true, the page is not dumped.



This filter is different from others. Even if you specified
DUMP_EXCLUDE_CACHE, a page which has PG_private flag is dumped if this
filter is enabled.

DUMP_EXCLUDE_FREE has some risks. If this filter is enable, diskdump
scans free page linked lists. If the list is corrupt, diskdump may hang.
Therefore, I always use level-19 (EXCLUDE_CACHE & EXCLUDE_CLEAN &

DUMP_EXCLUDE_CACHE reduces dump size effectively when file caches on
memory are big. I don't use DUMP_EXCLUDE_ANON because user data(user
stack, thread stack, mutex, etc.) is sometimes needed to investigate
DUMP_SAVE_PRIVATE is needed for filesystem. Filesystem (journal) uses
PG_private pages, so these pages is necessary to investigate
trouble of filesystem.

If there are other useful filters, please let me know.

These filters may be able to be used for kdump, but I don't know how I
can find the kernel structure (for example, page flag of struct page)
when kdump dumps memory.

Takao Indoh
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-10-19 05:17    [W:0.061 / U:4.244 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site