summaryrefslogtreecommitdiff
path: root/Documentation/watchdog/src
diff options
context:
space:
mode:
authorWANG Cong <xiyou.wangcong@gmail.com>2007-10-06 11:17:13 +0800
committerWim Van Sebroeck <wim@iguana.be>2007-10-23 20:35:27 +0000
commit06063e26bc3ab62aa7aca874c6ce9e7638673838 (patch)
treecbccca8820548e9c21f753370b6ab0727c1c35c1 /Documentation/watchdog/src
parentc283cf2c09ca1b7f1e7677bde384a8f92b1b7584 (diff)
downloadlinux-06063e26bc3ab62aa7aca874c6ce9e7638673838.tar.gz
linux-06063e26bc3ab62aa7aca874c6ce9e7638673838.tar.xz
[WATCHDOG] Documentation/watchdog/src/watchdog-simple.c: improve this code
Make some improvements for Documentation/watchdog/src/watchdog-simple.c. Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'Documentation/watchdog/src')
-rw-r--r--Documentation/watchdog/src/watchdog-simple.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/Documentation/watchdog/src/watchdog-simple.c b/Documentation/watchdog/src/watchdog-simple.c
index 47801bc7e742..4cf72f3fa8e9 100644
--- a/Documentation/watchdog/src/watchdog-simple.c
+++ b/Documentation/watchdog/src/watchdog-simple.c
@@ -3,15 +3,25 @@
#include <unistd.h>
#include <fcntl.h>
-int main(int argc, const char *argv[]) {
+int main(void)
+{
int fd = open("/dev/watchdog", O_WRONLY);
+ int ret = 0;
if (fd == -1) {
perror("watchdog");
- exit(1);
+ exit(EXIT_FAILURE);
}
while (1) {
- write(fd, "\0", 1);
- fsync(fd);
+ ret = write(fd, "\0", 1);
+ if (ret != 1) {
+ ret = -1;
+ break;
+ }
+ ret = fsync(fd);
+ if (ret)
+ break;
sleep(10);
}
+ close(fd);
+ return ret;
}