| lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
|
Open Source and information security mailing list archives
| ||
|
Message-ID: <FC88FED2F4C8574C9318C4D6CDA2BFA8BCEB03@CORPUSMX90A.corp.emc.com>
Date: Wed, 26 Aug 2009 08:34:44 -0400
From: <Timofeev_Alexander@....com>
To: <linux-kernel@...r.kernel.org>
Subject: SoftDog: reboot message missed
Hi All,
I use 2.6.16.60 kernel. It's been compiled with CONFIG_WATCHDOG_NOWAYOUT
<http://lxr.linux.no/linux-bk+*/+code=CONFIG_WATCHDOG_NOWAYOUT> =false.
It reboots system silently. The reboot message does not appear in
/var/log/messages.
Syslog-ng config is correct.
I looked through the watchdog.c and found:
93
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L93>
static void watchdog_fire
<http://lxr.linux.no/linux-bk+*/+code=watchdog_fire> (unsigned long data
<http://lxr.linux.no/linux-bk+*/+code=data> )
94
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L94> {
95
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L95>
if (soft_noboot <http://lxr.linux.no/linux-bk+*/+code=soft_noboot> )
96
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L96>
printk <http://lxr.linux.no/linux-bk+*/+code=printk> (KERN_CRIT
<http://lxr.linux.no/linux-bk+*/+code=KERN_CRIT> PFX
<http://lxr.linux.no/linux-bk+*/+code=PFX> "Triggered - Reboot
ignored.\n");
97
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L97>
else
98
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L98>
{
99
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L99>
printk <http://lxr.linux.no/linux-bk+*/+code=printk> (KERN_CRIT
<http://lxr.linux.no/linux-bk+*/+code=KERN_CRIT> PFX
<http://lxr.linux.no/linux-bk+*/+code=PFX> "Initiating system
reboot.\n");
100
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L100>
machine_restart <http://lxr.linux.no/linux-bk+*/+code=machine_restart>
(NULL <http://lxr.linux.no/linux-bk+*/+code=NULL> );
101
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L101>
printk <http://lxr.linux.no/linux-bk+*/+code=printk> (KERN_CRIT
<http://lxr.linux.no/linux-bk+*/+code=KERN_CRIT> PFX
<http://lxr.linux.no/linux-bk+*/+code=PFX> "Reboot didn't ?????\n");
102
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L102>
}
103
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L103> }
I suspect that system might be halted before printk buffer gets flushed.
Does anybody encounter such a behavior? Is there a workaround?
In fact I only need to know if the last reboot was caused by the timer.
Unfortunately the WDIOC_GETBOOTSTATUS
<http://lxr.linux.no/linux-bk+*/+code=WDIOC_GETBOOTSTATUS> ioctl is not
implemented ( according to the watchdog.c:softdog_ioctl
<http://lxr.linux.no/linux-bk+*/+code=softdog_ioctl> ).
210
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L210>
case WDIOC_GETBOOTSTATUS
<http://lxr.linux.no/linux-bk+*/+code=WDIOC_GETBOOTSTATUS> :
211
<http://lxr.linux.no/linux-bk+*/drivers/char/watchdog/softdog.c#L211>
return put_user <http://lxr.linux.no/linux-bk+*/+code=put_user> (0, p
<http://lxr.linux.no/linux-bk+*/+code=p> );
TIA
Alex T.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/