From 47fadb7f9b17dcc81e1d2a1b3c3b7a4ffaf829b1 Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Wed, 23 Jan 2019 09:02:56 +0900 Subject: [PATCH] examples/ioat: Improve error check of input parsing by spdk_strtol Change-Id: Ia71c7047c0611a2b66126e57e36427ed791d3a43 Signed-off-by: Shuhei Matsumoto Reviewed-on: https://review.gerrithub.io/c/441628 Tested-by: SPDK CI Jenkins Chandler-Test-Pool: SPDK Automated Test System Reviewed-by: Darek Stojaczyk Reviewed-by: wuzhouhui Reviewed-by: Ben Walker Reviewed-by: Changpeng Liu --- examples/ioat/perf/perf.c | 14 +++++++------- examples/ioat/verify/verify.c | 7 ++++--- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/examples/ioat/perf/perf.c b/examples/ioat/perf/perf.c index f71b80f7a..8328842f9 100644 --- a/examples/ioat/perf/perf.c +++ b/examples/ioat/perf/perf.c @@ -264,16 +264,16 @@ parse_args(int argc, char **argv) while ((op = getopt(argc, argv, "c:hn:o:q:t:v")) != -1) { switch (op) { case 'o': - g_user_config.xfer_size_bytes = atoi(optarg); + g_user_config.xfer_size_bytes = spdk_strtol(optarg, 10); break; case 'n': - g_user_config.ioat_chan_num = atoi(optarg); + g_user_config.ioat_chan_num = spdk_strtol(optarg, 10); break; case 'q': - g_user_config.queue_depth = atoi(optarg); + g_user_config.queue_depth = spdk_strtol(optarg, 10); break; case 't': - g_user_config.time_in_sec = atoi(optarg); + g_user_config.time_in_sec = spdk_strtol(optarg, 10); break; case 'c': g_user_config.core_mask = optarg; @@ -289,9 +289,9 @@ parse_args(int argc, char **argv) return 1; } } - if (!g_user_config.xfer_size_bytes || !g_user_config.queue_depth || - !g_user_config.time_in_sec || !g_user_config.core_mask || - !g_user_config.ioat_chan_num) { + if (g_user_config.xfer_size_bytes <= 0 || g_user_config.queue_depth <= 0 || + g_user_config.time_in_sec <= 0 || !g_user_config.core_mask || + g_user_config.ioat_chan_num <= 0) { usage(argv[0]); return 1; } diff --git a/examples/ioat/verify/verify.c b/examples/ioat/verify/verify.c index c344ba82c..1409ad6a9 100644 --- a/examples/ioat/verify/verify.c +++ b/examples/ioat/verify/verify.c @@ -256,13 +256,13 @@ parse_args(int argc, char **argv) while ((op = getopt(argc, argv, "c:ht:q:")) != -1) { switch (op) { case 't': - g_user_config.time_in_sec = atoi(optarg); + g_user_config.time_in_sec = spdk_strtol(optarg, 10); break; case 'c': g_user_config.core_mask = optarg; break; case 'q': - g_user_config.queue_depth = atoi(optarg); + g_user_config.queue_depth = spdk_strtol(optarg, 10); break; case 'h': usage(argv[0]); @@ -272,7 +272,8 @@ parse_args(int argc, char **argv) return 1; } } - if (!g_user_config.time_in_sec || !g_user_config.core_mask || !g_user_config.queue_depth) { + if (g_user_config.time_in_sec <= 0 || !g_user_config.core_mask || + g_user_config.queue_depth <= 0) { usage(argv[0]); return 1; }