watchdogd stat location
Warner Losh
imp at bsdimp.com
Fri Sep 27 16:22:10 UTC 2019
On Fri, Sep 27, 2019 at 9:36 AM mike tancsa <mike at sentex.net> wrote:
> We sometimes run into an issue where our embedded devices that boot off
> a read only SD card, hang with a controller error. Its not clear if
> this is a BIOS/firmware/SDCard or driver bug issue. Its pretty
> infrequent, but annoying enough that I started to dig to see why the box
> is not rebooting via the hardware watchdog. It seems to fail to reboot
> the box as the stat that it does on the filesystem is off the md backed
> /etc which is not impacted. I know I could run an external program, but
> would it be safer to change the default directory where the stat is done
> to something that is generally not mounted via ramdisk ?
>
> eg.
>
>
> diff -u watchdogd.c.orig watchdogd.c
> --- watchdogd.c.orig 2019-09-27 10:51:04.273113000 -0400
> +++ watchdogd.c 2019-09-27 10:51:23.592200000 -0400
> @@ -365,7 +365,7 @@
> if (test_cmd != NULL)
> failed = system(test_cmd);
> else
> - failed = stat("/etc", &sb);
> + failed = stat("/boot", &sb);
>
> error = watchdog_getuptime(&ts_end);
> if (error) {
>
I think this is good.
Warner
More information about the freebsd-embedded
mailing list