diff options
author | Robert Swiecki <robert@swiecki.net> | 2019-02-26 09:03:12 +0100 |
---|---|---|
committer | Robert Swiecki <robert@swiecki.net> | 2019-02-26 09:03:12 +0100 |
commit | 555e47fcab94cba20b1cb22532dab6e8a2786c26 (patch) | |
tree | 340910752df5040ffc2d96c0bfbf5350f726d338 | |
parent | 2a96bec5ee03282f6d16f50916e3d009df25cf4d (diff) | |
download | honggfuzz-555e47fcab94cba20b1cb22532dab6e8a2786c26.tar.gz |
cmdline: allow to use -na or -n all to use all cores
-rw-r--r-- | cmdline.c | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -243,8 +243,10 @@ bool cmdlineParse(int argc, char* argv[], honggfuzz_t* hfuzz) { .threads = { .threadsFinished = 0, - .threadsMax = - (sysconf(_SC_NPROCESSORS_ONLN) <= 1) ? 1 : sysconf(_SC_NPROCESSORS_ONLN) / 2, + .threadsMax = ({ + long ncpus = sysconf(_SC_NPROCESSORS_ONLN); + (ncpus <= 1 ? 1 : ncpus / 2); + }), .threadsActiveCnt = 0, .mainThread = pthread_self(), .mainPid = getpid(), @@ -561,7 +563,12 @@ bool cmdlineParse(int argc, char* argv[], honggfuzz_t* hfuzz) { hfuzz->cfg.reportFile = optarg; break; case 'n': - hfuzz->threads.threadsMax = atol(optarg); + if (optarg[0] == 'a') { + long ncpus = sysconf(_SC_NPROCESSORS_ONLN); + hfuzz->threads.threadsMax = (ncpus < 1 ? 1 : ncpus); + } else { + hfuzz->threads.threadsMax = atol(optarg); + } break; case 0x109: { time_t p = atol(optarg); |