lkml.org 
[lkml]   [2013]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [BUG?] false positive in soft lockup detector while unlzma initramfs on slow cpu
On Tue, Jan 29, 2013 at 10:48:27PM +0530, anish kumar wrote:
> Sorry for digressing from the topic but I think there is something wrong
> with my understanding or something wrong with the code.So I guess Don
> can clarify this.
> If I pass this below parameter during boot i.e. setting watchdog_enabled
> to zero.
> __setup("nowatchdog", nowatchdog_setup);
>
> Now I use sysctl to enable the watchdog then wouldn't the below code
> will hinder enabling the watchdog?
>
> static void watchdog_enable_all_cpus(void)
> {//snip
> if (watchdog_disabled) { /* this is zero ?? */
> watchdog_disabled = 0;
> //snip
> }
>
> Should watchdog_disabled be set to 1?Or is it that we always disable the
> watchdog and then enable it?

It seems like a bug, so does something like this fix it? There is
probably a better way to handle the internal representation of the
watchdog state (watchdog_disable) and the procfs version
(watchdog_enable), but I just can't think of something right now. :-(

Cheers,
Don


diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 75a2ab3..d287726 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -82,6 +82,7 @@ __setup("softlockup_panic=", softlockup_panic_setup);
static int __init nowatchdog_setup(char *str)
{
watchdog_enabled = 0;
+ watchdog_disabled =1;
return 1;
}
__setup("nowatchdog", nowatchdog_setup);

\
 
 \ /
  Last update: 2013-01-30 17:44    [W:0.069 / U:0.484 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site