• Hector Palacios's avatar
    watchdog: core: don't try to stop device if not running · fcf95670
    Hector Palacios authored
    A watchdog device may be stopped from userspace using WDIOC_SETOPTIONS
    ioctl and flag WDIOS_DISABLECARD. If the device is closed after this
    operation, watchdog_release() is called and status bits checked for
    stopping it. Besides, if the device has not been unregistered a critical
    message "watchdog did not stop!" is printed, although the ioctl may have
    successfully stopped it already.
    
    Without the patch a user application sample code like this will successfully
    stop the watchdog, but the kernel will output the message
    "watchdog did not stop!":
    
    	wd_fd = open("/dev/watchdog", O_RDWR);
    
    	flags = WDIOS_DISABLECARD;
    	ioctl(wd_fd, WDIOC_SETOPTIONS, &flags);
    
    	close(wd_fd);
    Signed-off-by: default avatarHector Palacios <hector.palacios@digi.com>
    Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
    Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
    fcf95670
watchdog_dev.c 14.4 KB