[FFmpeg-cvslog] avutil/cpu: Use HW_NCPUONLINE to detect # of online CPUs with OpenBSD

Brad Smith git at videolan.org
Mon Apr 19 00:02:34 EEST 2021


ffmpeg | branch: master | Brad Smith <brad at comstyle.com> | Sat Apr  3 14:49:20 2021 -0400| [c8fb68ec52194d3de2f24a6850cd795d98eb2f2f] | committer: Marton Balint

avutil/cpu: Use HW_NCPUONLINE to detect # of online CPUs with OpenBSD

Signed-off-by: Brad Smith <brad at comstyle.com>
Signed-off-by: Marton Balint <cus at passwd.hu>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c8fb68ec52194d3de2f24a6850cd795d98eb2f2f
---

 libavutil/cpu.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libavutil/cpu.c b/libavutil/cpu.c
index 8e3576a1f3..9d249737df 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);



More information about the ffmpeg-cvslog mailing list