diff options
author | Brad Smith <brad@comstyle.com> | 2021-04-03 14:49:20 -0400 |
---|---|---|
committer | Marton Balint <cus@passwd.hu> | 2021-04-24 09:24:03 +0200 |
commit | 7e9b9f24df6c98df5bf4c8ce41154b67f485e45f (patch) | |
tree | 5d49acec6209a1c21c9a71fc116e9832d722e564 | |
parent | e3fb0f0c88f14cf382d005469242bd63338b862e (diff) | |
download | ffmpeg-7e9b9f24df6c98df5bf4c8ce41154b67f485e45f.tar.gz |
avutil/cpu: Use HW_NCPUONLINE to detect # of online CPUs with OpenBSD
Signed-off-by: Brad Smith <brad@comstyle.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
(cherry picked from commit c8fb68ec52194d3de2f24a6850cd795d98eb2f2f)
-rw-r--r-- | libavutil/cpu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libavutil/cpu.c b/libavutil/cpu.c index 52f6b9a3bf..6bd0f07a62 100644 --- a/libavutil/cpu.c +++ b/libavutil/cpu.c @@ -291,6 +291,12 @@ int av_cpu_count(void) DWORD_PTR proc_aff, sys_aff; if (GetProcessAffinityMask(GetCurrentProcess(), &proc_aff, &sys_aff)) nb_cpus = av_popcount64(proc_aff); +#elif HAVE_SYSCTL && defined(HW_NCPUONLINE) + int mib[2] = { CTL_HW, HW_NCPUONLINE }; + size_t len = sizeof(nb_cpus); + + if (sysctl(mib, 2, &nb_cpus, &len, NULL, 0) == -1) + nb_cpus = 0; #elif HAVE_SYSCTL && defined(HW_NCPU) int mib[2] = { CTL_HW, HW_NCPU }; size_t len = sizeof(nb_cpus); |