Re: 2.6.23-rc6-mm1

Mel Gorman
2007-09-18T17:44:19Z

Hi Andrew,

IA64 failed to build in kgdb with the messages

arch/ia64/kernel/kgdb.c: In function 'kgdb_arch_set_breakpoint':
arch/ia64/kernel/kgdb.c:555: warning: large integer implicitly truncated to unsigned type
arch/ia64/kernel/kgdb.c: At top level:
arch/ia64/kernel/kgdb.c:673: error: static declaration of 'kgdb_hwbreak_sstep' follows non-static declaration
include/asm/kgdb.h:33: error: previous declaration of 'kgdb_hwbreak_sstep' was here
make[1]: *** [arch/ia64/kernel/kgdb.o] Error 1
make: *** [arch/ia64/kernel] Error 2
make: *** Waiting for unfinished jobs....

It's buried in git-kgdb.patch and I've cc'd who might be the owner. A candidate
fix is below. The build error seems to be a simple case of a badly placed
static. The warning about large integer truncating does not have an obvious
fix and I didn't want to hide the warning with a real bug.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>

---
kgdb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff -rup -X /usr/src/patchset-0.6/bin//dontdiff linux-2.6.23-rc6-mm1-010_fix_ehea_main/arch/ia64/kernel/kgdb.c linux-2.6.23-rc6-mm1-015_fix_ia64_kgdb/arch/ia64/kernel/kgdb.c
--- linux-2.6.23-rc6-mm1-010_fix_ehea_main/arch/ia64/kernel/kgdb.c 2007-09-18 11:29:26.000000000 +0100
+++ linux-2.6.23-rc6-mm1-015_fix_ia64_kgdb/arch/ia64/kernel/kgdb.c 2007-09-18 17:33:36.000000000 +0100
@@ -670,7 +670,7 @@ void kgdb_roundup_cpus(unsigned long fla
smp_send_nmi_allbutself();
}

-static volatile int kgdb_hwbreak_sstep[NR_CPUS];
+volatile int kgdb_hwbreak_sstep[NR_CPUS];

static int kgdb_notify(struct notifier_block *self, unsigned long cmd,
void *ptr)
--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab