On 06/05/2015 05:41 AM, Markus Rinne wrote:
WDIOC_SETTIMEOUT and WDIOC_GETTIMEOUT returned the initial timeout and
not the one that was last set.  Fix this by updating struct
watchdog_device member 'timeout'.  This is how it's supposed to be done
according to Documentation/watchdog/watchdog-kernel-api.txt.

This is the test case I used:

#include <fcntl.h>
#include <linux/watchdog.h>
#include <sys/stat.h>
#include <sys/types.h>

#include <assert.h>
#include <stdlib.h>

static const int TIMEOUT = 127;

int main(void)
{
        int fd = open("/dev/watchdog", O_WRONLY);
        if (fd == -1)
                return EXIT_FAILURE;

        int timeout = TIMEOUT;
        ioctl(fd, WDIOC_SETTIMEOUT, &timeout);
        assert(timeout == TIMEOUT);

        close(fd);

        return EXIT_SUCCESS;
}

Signed-off-by: Markus Rinne <markus.ri...@vincit.fi>
---

Good catch.

Reviewed-by: Guenter Roeck <li...@roeck-us.net>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to