Skip to contentSkip to conversation

ia64: eliminate softlockup warning

PATCH In review [email protected] 2 participants 2 messages Dec 14, 2005

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ia64: eliminate softlockup warning

Fix an unnecessary softlockup watchdog warning in the ia64 uncached_build_memmap() that occurs occasionally at 256p and always at 512p. The problem occurs at boot time.

It would be good if we had a cleaner mechanism to temporarily silence the watchdog thread, e.g.,

    http://marc.theaimsgroup.com/?l=linux-kernel&m1552476401175&w=2

but until that patch gets merged, this fix will have to suffice.

Index: linux/arch/ia64/kernel/uncached.c
=================================--- linux.orig/arch/ia64/kernel/uncached.c 2005-12-06 15:12:14.000000000 -0800
+++ linux/arch/ia64/kernel/uncached.c 2005-12-14 14:50:55.000000000 -0800
@@ -210,6 +210,7 @@

dprintk(KERN_ERR "uncached_build_memmap(%lx %lx)\n", start, end);

+ touch_softlockup_watchdog();
memset((char *)start, 0, length);

node = paddr_to_nid(start - __IA64_UNCACHED_OFFSET);

#1 lore raw
Quoted 10 lines · [email protected] wrote:

Fix an unnecessary softlockup watchdog warning in the ia64 uncached_build_memmap() that occurs occasionally at 256p and always at 512p. The problem occurs at boot time.

It would be good if we had a cleaner mechanism to temporarily silence the watchdog thread, e.g.,

    http://marc.theaimsgroup.com/?l=linux-kernel&m=111552476401175&w=2

but until that patch gets merged, this fix will have to suffice.

That patch is for the hangcheck timer driver which is unrelated to the softlockup detector.

arch/ia64/kernel/uncached.c line 216

Quoted 13 lines

Index: linux/arch/ia64/kernel/uncached.c
===================================================================

arch/ia64/kernel/uncached.c +1 -0
@@ -210,6 +210,7 @@
 
 	dprintk(KERN_ERR "uncached_build_memmap(%lx %lx)\n", start, end);
 
+	touch_softlockup_watchdog();
 	memset((char *)start, 0, length);
 
 	node = paddr_to_nid(start - __IA64_UNCACHED_OFFSET);

Yes, additions like this are a bit awkward, but they're not _that_ bad. It says "this code is doing something unusual". It's an explicit marker which we can grep for and which conveys useful information about an exceptional kernel state.