2

Speaking of Watchdog, here archwiki says:

Many users need this feature due to their system's mission-critical role (i.e. servers), or because of the lack of power reset (i.e. embedded devices). Thus, this feature is required for a good operation in some situations. On the other hand, normal users (i.e. desktop and laptop) do not need this feature and can disable it.

On my laptop I can disable the watchdog in three different ways:

  1. rmmod iTCO_wdt for temporary effects or writing blacklist iTCO_wdt to /etc/modprobe.d/nowatchdog.conf for persistent effects.

  2. writing 0 to /proc/sys/kernel/watchdog or sysctl -w kernel.nmi_watchdog=0 for temporary effects, or writing kernel.nmi_watchdog = 0 to /etc/sysctl.d/nowatchdog.conf for persistent effects.

  3. Appending nowatchdog to /etc/default/grub if GRUB is used for persistent effects.


None of them works for the raspberry pi:

  • 1 Doesn't work because the iTCO_wdt is not loaded.

  • 2 Fails because there is no watchdog or nmi_watchdog under /proc/sys/kernel/

  • 3 Can't work because raspberry pi doesn't use GRUB.

The Output from wdctl (executed as root):

Device:        /dev/watchdog0
Identity:      Broadcom BCM2835 Watchdog timer [version 0]
Timeout:       15 seconds
Pre-timeout:    0 seconds
Timeleft:      15 seconds
FLAG           DESCRIPTION               STATUS BOOT-STATUS
KEEPALIVEPING  Keep alive ping reply          1           0
MAGICCLOSE     Supports magic close char      0           0
SETTIMEOUT     Set timeout (in seconds)       0           0

Is it possible to disable the watchdog feature in Raspberry Pi 3 Model B running Archlinux arm?

6
  • 1
    To be honest I do not think it’s triggering. Looking at your output from wdctl, timeout is set to 0 and that normally means the function is off...
    – user115418
    Commented Mar 30, 2020 at 21:24
  • 1
    @Andyroo: Timeout: 15 seconds Commented Mar 31, 2020 at 8:59
  • @DmitryGrigoryev But surely you computer is not resetting every 15 seconds? Running the wdctl in a loop should show the timeleft value dropping from 15 seconds and resetting when it reaches zero WITHOUT a reboot or anything happening to the box
    – user115418
    Commented Mar 31, 2020 at 17:10
  • @Andyroo My Pi does reset 15 seconds after sudo touch /dev/watchdog. I haven't tried to activate watchdogd, but I'm pretty sure that will work as well. Of course the watchdog is not active from the start: that would lead to a reset loop unless your Pi boots in less than 15 seconds. Commented Apr 4, 2020 at 9:26
  • 1
    @DmitryGrigoryev Sorry - I meant to say SETTIMEOUT being 0 not Timeout. I would expect the machine to reset after your 'touch' command - that sets the timer running. As nothing will be doing this in normal operations I would leave it as it is.
    – user115418
    Commented Apr 4, 2020 at 15:37

1 Answer 1

3
+25

Watchdog is built into the Raspbian kernel using CONFIG_WATCHDOG=y in kernel parameters, so rmmod is not possible unless you rebuild the kernel. /proc/sys/kernel/watchdog is not implemented in Raspbian either. I'm not sure about Arch, but judging by your question the situation there is similar.

You don't need GRUB to pass parameters to the kernel: on Raspbian you do this by editing /boot/cmdline.txt. Putting nowatchdog there should persistently disable the watchdog.

Having said that, the watchdog will not activate until you open /dev/watchdog. So unless you run a watchdog daemon which keeps /dev/watchdog open, it is effectively inactive and I see no reason to disable it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.