2005-02-24 15:39:27

by Vivek Goyal

[permalink] [raw]

2005-03-01 06:14:30

by Andrew Morton

[permalink] [raw]
Subject: Re: [RFC][PATCH 3/3] Kdump: Export crash notes section address through sysfs

Vivek Goyal <[email protected]> wrote:
>
> o Following patch exports kexec global variable "crash_notes" to user space
> through sysfs as kernel attribute in /sys/kernel.

It breaks the x86_64 build. A fix for that is below.

Please test kexec/kdump patches on all three architectures, both with your
config option enabled and with it disabled. There are cross-compilers at
http://developer.osdl.org/dev/plm/cross_compile/


It also breaks the ppc build:

kernel/ksysfs.c: In function `crash_notes_show':
kernel/ksysfs.c:38: error: `crash_notes' undeclared (first use in this function)
kernel/ksysfs.c:38: error: (Each undeclared identifier is reported only once
kernel/ksysfs.c:38: error: for each function it appears in.)

but as ppc doesn't support crashdump, that is unfixable.

Why is the crashdump feature linked to CONFIG_KEXEC? It should have its
own config option, which is dependent upon kexec.




kernel/ksysfs.c: In function `crash_notes_show':
kernel/ksysfs.c:38: error: `crash_notes' undeclared (first use in this function)
kernel/ksysfs.c:38: error: (Each undeclared identifier is reported only once
kernel/ksysfs.c:38: error: for each function it appears in.)


Signed-off-by: Andrew Morton <[email protected]>
---

25-akpm/arch/x86_64/kernel/crash.c | 3 ---
25-akpm/include/asm-x86_64/kexec.h | 5 +++++
2 files changed, 5 insertions(+), 3 deletions(-)

diff -puN include/asm-x86_64/kexec.h~kdump-export-crash-notes-section-address-through-x86_64-fix include/asm-x86_64/kexec.h
--- 25/include/asm-x86_64/kexec.h~kdump-export-crash-notes-section-address-through-x86_64-fix 2005-02-28 21:54:41.000000000 -0800
+++ 25-akpm/include/asm-x86_64/kexec.h 2005-02-28 21:55:12.000000000 -0800
@@ -25,4 +25,9 @@
/* The native architecture */
#define KEXEC_ARCH KEXEC_ARCH_X86_64

+#define MAX_NOTE_BYTES 1024
+typedef u32 note_buf_t[MAX_NOTE_BYTES/4];
+
+extern note_buf_t crash_notes[];
+
#endif /* _X86_64_KEXEC_H */
diff -puN arch/x86_64/kernel/crash.c~kdump-export-crash-notes-section-address-through-x86_64-fix arch/x86_64/kernel/crash.c
--- 25/arch/x86_64/kernel/crash.c~kdump-export-crash-notes-section-address-through-x86_64-fix 2005-02-28 21:58:39.000000000 -0800
+++ 25-akpm/arch/x86_64/kernel/crash.c 2005-02-28 21:58:55.000000000 -0800
@@ -22,9 +22,6 @@
#include <asm/nmi.h>
#include <asm/hw_irq.h>

-#define MAX_NOTE_BYTES 1024
-typedef u32 note_buf_t[MAX_NOTE_BYTES/4];
-
note_buf_t crash_notes[NR_CPUS];

void machine_crash_shutdown(void)
_

2005-03-01 22:03:36

by Randy.Dunlap

[permalink] [raw]
Subject: Re: [Fastboot] Re: [RFC][PATCH 3/3] Kdump: Export crash notes section address through sysfs

Andrew Morton wrote:
> Vivek Goyal <[email protected]> wrote:
>
>>o Following patch exports kexec global variable "crash_notes" to user space
>> through sysfs as kernel attribute in /sys/kernel.
>
>
> It breaks the x86_64 build. A fix for that is below.
>
> Please test kexec/kdump patches on all three architectures, both with your
> config option enabled and with it disabled. There are cross-compilers at
> http://developer.osdl.org/dev/plm/cross_compile/

BTW:
You can download the cross_compile tools and run them yourself or you
can submit a patch to the PLM tool and it will run 8 arch. builds
for you....

--
~Randy