Index: miscutils/watchdog.c
===================================================================
--- miscutils/watchdog.c	(revisión: 19790)
+++ miscutils/watchdog.c	(copia de trabajo)
@@ -26,15 +26,22 @@
 int watchdog_main(int argc, char **argv)
 {
 	unsigned opts;
-	unsigned timer_duration = 30; /* Userspace timer duration, in seconds */
+	unsigned timer_duration = 30000; /* Userspace timer duration, in milliseconds */
 	char *t_arg;
 
 	opt_complementary = "=1"; /* must have 1 argument */
 	opts = getopt32(argv, "Ft:", &t_arg);
 
-	if (opts & OPT_TIMER)
-		timer_duration = xatou(t_arg);
+	if (opts & OPT_TIMER) {
+		static const struct suffix_mult suffixes[] = {
+			{ "ms", 1 },
+			{ "", 1000 }
+		};
+		timer_duration = xatou_sfx(t_arg, suffixes);
+	}
 
+	fprintf(stderr, "%u\n", timer_duration);
+
 	if (!(opts & OPT_FOREGROUND)) {
 		bb_daemonize_or_rexec(DAEMON_CHDIR_ROOT, argv);
 	}
@@ -51,7 +58,7 @@
 		 * is undefined at this point -- PFM
 		 */
 		write(3, "", 1);
-		sleep(timer_duration);
+		usleep(timer_duration * 1000L);
 	}
 
 	watchdog_shutdown(0);
Index: include/usage.h
===================================================================
--- include/usage.h	(revisión: 19790)
+++ include/usage.h	(copia de trabajo)
@@ -3856,8 +3856,10 @@
 #define watchdog_full_usage \
        "Periodically write to watchdog device DEV" \
        "\n\nOptions:\n" \
-       "	-t	Timer period in seconds - default is 30\n" \
-       "	-F	Stay in the foreground and don't fork"
+       "	-t	Timer period - default is 30 seconds\n" \
+       "	-F	Stay in the foreground and don't fork" \
+       "\n" \
+       "Use ms suffix to specify timer period in milliseconds\n"
 
 #define wc_trivial_usage \
        "[OPTION]... [FILE]..."
