aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFengguang Wu <fengguang.wu@intel.com>2018-12-19 12:32:11 +0800
committerFengguang Wu <fengguang.wu@intel.com>2018-12-19 12:32:11 +0800
commit7d160818912161ce71bea42d216391fce7c9702d (patch)
treecd9508eaea4624a846f280d19efbd2fd80e9a8af
parent7350ec835526b6f7a98b72aaedd7ef38082ab3a1 (diff)
downloadvm-scalability-7d160818912161ce71bea42d216391fce7c9702d.tar.gz
usemem: add sleep_secs checks
Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
-rw-r--r--usemem.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/usemem.c b/usemem.c
index 07e23dc..6b29d83 100644
--- a/usemem.c
+++ b/usemem.c
@@ -14,6 +14,7 @@
#include <string.h>
#include <unistd.h>
#include <getopt.h>
+#include <limits.h>
#include <fcntl.h>
#include <errno.h>
#include <time.h>
@@ -701,8 +702,8 @@ long do_units(void)
if (opt_detach)
detach();
- if (sleep_secs)
- sleep(sleep_secs);
+ while (sleep_secs)
+ sleep_secs = sleep(sleep_secs);
if (opt_write_signal_read) {
sigset_t set;
@@ -915,6 +916,8 @@ int main(int argc, char *argv[])
break;
case 's':
sleep_secs = strtol(optarg, NULL, 10);
+ if (sleep_secs < 0)
+ sleep_secs = INT_MAX;
break;
case 'T':
runtime_secs = strtol(optarg, NULL, 10);