add-vmcore: add nodemask_t's size and NR_FREE_PAGES's value to vmcoreinfo_data
[2/3] Add nodemask_t's size and NR_FREE_PAGES's value to vmcoreinfo_data. The dump filetering command 'makedumpfile'(v1.1.6 or before) had assumed the above values, and it was not good from the reliability viewpoint. So makedumpfile v1.2.0 came to need these values and I created the patch to let the kernel output them. makedumpfile site: https://sourceforge.net/projects/makedumpfile/ Signed-off-by: Ken'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
d768281e97
commit
6cfa062f01
|
@ -132,11 +132,16 @@ unsigned long paddr_vmcoreinfo_note(void);
|
||||||
#define SIZE(name) \
|
#define SIZE(name) \
|
||||||
vmcoreinfo_append_str("SIZE(%s)=%lu\n", #name, \
|
vmcoreinfo_append_str("SIZE(%s)=%lu\n", #name, \
|
||||||
(unsigned long)sizeof(struct name))
|
(unsigned long)sizeof(struct name))
|
||||||
|
#define TYPEDEF_SIZE(name) \
|
||||||
|
vmcoreinfo_append_str("SIZE(%s)=%lu\n", #name, \
|
||||||
|
(unsigned long)sizeof(name))
|
||||||
#define OFFSET(name, field) \
|
#define OFFSET(name, field) \
|
||||||
vmcoreinfo_append_str("OFFSET(%s.%s)=%lu\n", #name, #field, \
|
vmcoreinfo_append_str("OFFSET(%s.%s)=%lu\n", #name, #field, \
|
||||||
(unsigned long)&(((struct name *)0)->field))
|
(unsigned long)&(((struct name *)0)->field))
|
||||||
#define LENGTH(name, value) \
|
#define LENGTH(name, value) \
|
||||||
vmcoreinfo_append_str("LENGTH(%s)=%lu\n", #name, (unsigned long)value)
|
vmcoreinfo_append_str("LENGTH(%s)=%lu\n", #name, (unsigned long)value)
|
||||||
|
#define NUMBER(name) \
|
||||||
|
vmcoreinfo_append_str("NUMBER(%s)=%ld\n", #name, (long)name)
|
||||||
#define CONFIG(name) \
|
#define CONFIG(name) \
|
||||||
vmcoreinfo_append_str("CONFIG_%s=y\n", #name)
|
vmcoreinfo_append_str("CONFIG_%s=y\n", #name)
|
||||||
|
|
||||||
|
|
|
@ -1218,6 +1218,7 @@ static int __init crash_save_vmcoreinfo_init(void)
|
||||||
SIZE(zone);
|
SIZE(zone);
|
||||||
SIZE(free_area);
|
SIZE(free_area);
|
||||||
SIZE(list_head);
|
SIZE(list_head);
|
||||||
|
TYPEDEF_SIZE(nodemask_t);
|
||||||
OFFSET(page, flags);
|
OFFSET(page, flags);
|
||||||
OFFSET(page, _count);
|
OFFSET(page, _count);
|
||||||
OFFSET(page, mapping);
|
OFFSET(page, mapping);
|
||||||
|
@ -1237,6 +1238,7 @@ static int __init crash_save_vmcoreinfo_init(void)
|
||||||
OFFSET(list_head, next);
|
OFFSET(list_head, next);
|
||||||
OFFSET(list_head, prev);
|
OFFSET(list_head, prev);
|
||||||
LENGTH(zone.free_area, MAX_ORDER);
|
LENGTH(zone.free_area, MAX_ORDER);
|
||||||
|
NUMBER(NR_FREE_PAGES);
|
||||||
|
|
||||||
arch_crash_save_vmcoreinfo();
|
arch_crash_save_vmcoreinfo();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue