diff options
author | van Hauser <vh@thc.org> | 2019-09-19 09:02:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-19 09:02:01 +0200 |
commit | c29af4aeba91bfef147573e4c232d443558af427 (patch) | |
tree | 4daca87751d6966f3878be565dc911155aa95fdb /src/afl-fuzz-init.c | |
parent | 74a984d75f59358d07c8816e4a1329108ca1fd41 (diff) | |
parent | 48e6e3ac458a6bfbe8db2a3603945e3091a63f33 (diff) | |
download | afl++-c29af4aeba91bfef147573e4c232d443558af427.tar.gz |
Merge pull request #61 from devnexen/mac_os_cpu_scaling
Checking CPU scaling on MacOS
Diffstat (limited to 'src/afl-fuzz-init.c')
-rw-r--r-- | src/afl-fuzz-init.c | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/afl-fuzz-init.c b/src/afl-fuzz-init.c index e791fdde..4908626a 100644 --- a/src/afl-fuzz-init.c +++ b/src/afl-fuzz-init.c @@ -1479,9 +1479,39 @@ void check_cpu_governor(void) { "drop.\n", min / 1024, max / 1024); - FATAL("Suboptimal CPU scaling governor"); -#endif +#else + u64 min = 0, max = 0; + size_t mlen = sizeof(min); + if (getenv("AFL_SKIP_CPUFREQ")) return; + + ACTF("Checking CPU scaling governor..."); + if (sysctlbyname("hw.cpufrequency_min", &min, &mlen, NULL, 0) == -1) { + + WARNF("Could not check CPU min frequency"); + return; + + } + + if (sysctlbyname("hw.cpufrequency_max", &max, &mlen, NULL, 0) == -1) { + + WARNF("Could not check CPU max frequency"); + return; + + } + + if (min == max) return; + + SAYF("\n" cLRD "[-] " cRST + "Whoops, your system uses on-demand CPU frequency scaling, adjusted\n" + " between %llu and %llu MHz.\n" + " If you don't want to check those settings, set " + "AFL_SKIP_CPUFREQ\n" + " to make afl-fuzz skip this check - but expect some performance " + "drop.\n", + min / 1024, max / 1024); +#endif + FATAL("Suboptimal CPU scaling governor"); } /* Count the number of logical CPU cores. */ |