From: Andreas Herrmann <AHERRMAN@de.ibm.com> - 2002-04-19 09:19:24
Just to inform you:
In libklib/include/asm-i386/dump.h (and also in asm-ia64/dupm.h)
the kernel header linux/threads.h is included.
This causes lkcdutils to fail compilation under Linux 2.2.x.
The reason for the inclusion is the macro NR_CPUS I guess.
I suggest to put into asm-i386/dump.h:
#define KL_NR_CPUS 32
You don't want to compile lcrash again if you switch from a non-SMP
kernel to a SMP kernel? So we wouldn't need to include
the header -- just define KL_NR_CPUS as the max value of cpus
available and we should be on the save side.
I didn't try to fix this, because I have addressed this issue
already in cross-system-lcrash.
What this problem raises is the question of kernel header
lcrash is an user application and shouldn't include any
Of course this would cause double work to some extent.
Because equivalents for definitions of required kernel macros and
kernel structures have to be introduced in lcrash.
Those equivalents should be general enough to be suitable to work
for different kernel versions.
But in the end this will make lcrash more independent of specific
kernel versions and more robust.
For your interest:
In cross-system-lcrash I have addressed these questions.
I intend to check it in at beginning of May (when work is starting for
a 4.2 release). First I'll put this stuff into a separate branch,
because I will have to merge some recently changes of the HEAD
(E.g. separate libutils, changes for i386 PAE)
Linux for eServer Development
Tel : +49-7031-16-4640
Notes mail : Andreas Herrmann/GERMANY/IBM@...
email : aherrman@...