Re: watchdog: iTCO_wdt: cannot register miscdev on minor=130 (err=-16).

From: Guenter Roeck
Date: Tue May 26 2020 - 07:38:56 EST


On 5/26/20 4:21 AM, Paul Menzel wrote:
> Dear Linux folks,
>
>
> Linux 5.4.39 reports the watchdog messages below on a Dell PowerEdge T630 with 12x E5-2603 v4 @ 1.70GHz.
>
> ÂÂÂ DMI: Dell Inc. PowerEdge T630/0NT78X, BIOS 2.5.4 08/17/2017
>
> ```
> handsomejack:~$ more /proc/version
> Linux version 5.4.39.mx64.334 (root@xxxxxxxxxxxxxxxxx) (gcc version 7.5.0 (GCC)) #1 SMP Thu May 7 14:27:50 CEST 2020
> handsomejack:~$ grep TCO /boot/config-5.4.39.mx64.334
> CONFIG_NETCONSOLE=m
> CONFIG_NETCONSOLE_DYNAMIC=y
> # CONFIG_SP5100_TCO is not set
> CONFIG_ITCO_WDT=y
> CONFIG_ITCO_VENDOR_SUPPORT=y
> CONFIG_NV_TCO=y
> # CONFIG_INTEL_SMARTCONNECT is not set
> # CONFIG_EXTCON is not set
> handsomejack:~$ dmesg --level=err
> [ÂÂ 11.618887] watchdog: iTCO_wdt: cannot register miscdev on minor=130 (err=-16).
> [ÂÂ 11.627956] watchdog: iTCO_wdt: a legacy watchdog module is probably present.
> handsomejack:~$ dmesg | grep -e iTCO -e watchdog
> [ÂÂ 11.603138] iTCO_wdt: Intel TCO WatchDog Timer Driver v1.11
> [ÂÂ 11.609888] iTCO_wdt: Found a Wellsburg TCO device (Version=2, TCOBASE=0x0460)
> [ÂÂ 11.618887] watchdog: iTCO_wdt: cannot register miscdev on minor=130 (err=-16).
> [ÂÂ 11.627956] watchdog: iTCO_wdt: a legacy watchdog module is probably present.
> [ÂÂ 11.636462] iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)
> [ÂÂ 11.643679] iTCO_vendor_support: vendor-support=0
> handsomejack:~$ ls -l /dev/watchdog
> crw------- 1 root root 10, 130 May 26 11:40 /dev/watchdog
> ```
>
> Together the error and success messages are from the same module are confusing me a little. How can I find out the legacy watchdog module?
>

/dev/watchdog is your legacy watchdog. You should also have /dev/watchdogN
(where N is a number, probably '0') which is the iTCO watchdog. The error
message refers to the inability to create /dev/watchdog because it already
exists, not to the inability to install the driver at all.

You might have some other log messages indicating which other watchdog
is installed. Otherwise you might need to use ioctls on /dev/watchdog
to determine its name. 'lsmod' might also be useful.

Guenter