Re: [PATCH] watchdog docs: Fix use of WDIOC_SETOPTIONS ioctl.

From: Wim Van Sebroeck
Date: Tue Apr 06 2010 - 04:51:51 EST


Hi James,

Will be added to the watchdog fixes that I'm preparing.

Thanks,
Wim.

> In the watchdog-test program and watchdog-api.txt, pass the values to
> the WDIOC_SETOPTIONS ioctl as a pointer to an integer containing the
> values intead of directly in the third ioctl argument. The actual
> watchdog drivers in drivers/watchdog don't read the options directly
> from the argument but use get_user and copy_from_user.
>
> Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
> ---
> Documentation/watchdog/src/watchdog-test.c | 8 ++++++--
> Documentation/watchdog/watchdog-api.txt | 5 ++---
> 2 files changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/Documentation/watchdog/src/watchdog-test.c
> b/Documentation/watchdog/src/watchdog-test.c
> index a750532..63fdc34 100644
> --- a/Documentation/watchdog/src/watchdog-test.c
> +++ b/Documentation/watchdog/src/watchdog-test.c
> @@ -31,6 +31,8 @@ static void keep_alive(void)
> */
> int main(int argc, char *argv[])
> {
> + int flags;
> +
> fd = open("/dev/watchdog", O_WRONLY);
>
> if (fd == -1) {
> @@ -41,12 +43,14 @@ int main(int argc, char *argv[])
>
> if (argc > 1) {
> if (!strncasecmp(argv[1], "-d", 2)) {
> - ioctl(fd, WDIOC_SETOPTIONS, WDIOS_DISABLECARD);
> + flags = WDIOS_DISABLECARD;
> + ioctl(fd, WDIOC_SETOPTIONS, &flags);
> fprintf(stderr, "Watchdog card disabled.\n");
> fflush(stderr);
> exit(0);
> } else if (!strncasecmp(argv[1], "-e", 2)) {
> - ioctl(fd, WDIOC_SETOPTIONS, WDIOS_ENABLECARD);
> + flags = WDIOS_ENABLECARD;
> + ioctl(fd, WDIOC_SETOPTIONS, &flags);
> fprintf(stderr, "Watchdog card enabled.\n");
> fflush(stderr);
> exit(0);
> diff --git a/Documentation/watchdog/watchdog-api.txt
> b/Documentation/watchdog/watchdog-api.txt
> index 4cc4ba9..eb7132e 100644
> --- a/Documentation/watchdog/watchdog-api.txt
> +++ b/Documentation/watchdog/watchdog-api.txt
> @@ -222,11 +222,10 @@ returned value is the temperature in degrees fahrenheit.
> ioctl(fd, WDIOC_GETTEMP, &temperature);
>
> Finally the SETOPTIONS ioctl can be used to control some aspects of
> -the cards operation; right now the pcwd driver is the only one
> -supporting this ioctl.
> +the cards operation.
>
> int options = 0;
> - ioctl(fd, WDIOC_SETOPTIONS, options);
> + ioctl(fd, WDIOC_SETOPTIONS, &options);
>
> The following options are available:
>
> --
> 1.6.6.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/