Date: Tue, 14 Jan 2025 14:43:39 GMT From: Mark Johnston <markj@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: f849557c06e5 - stable/14 - x86: Short-circuit ipi_all_but_self() on UP systems Message-ID: <202501141443.50EEhdmw014391@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f849557c06e55e7ebedc1b5c873fdf5111587918 commit f849557c06e55e7ebedc1b5c873fdf5111587918 Author: Mark Johnston <markj@FreeBSD.org> AuthorDate: 2025-01-07 17:58:58 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2025-01-14 14:14:42 +0000 x86: Short-circuit ipi_all_but_self() on UP systems Apparently this is required on old intel hw, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=275086#c3 PR: 275086 Reviewed by: mav, kib Fixes: 279cd05b7e4d ("Use APIC_IPI_DEST_OTHERS for bitmapped IPIs too.") MFC after: 1 week Diagnosed by: Ben Wilber <ben@desync.com> Differential Revision: https://reviews.freebsd.org/D48361 (cherry picked from commit 254a2b767f9a39f1541e0a07a70bbe269e86ad70) --- sys/x86/x86/mp_x86.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/x86/x86/mp_x86.c b/sys/x86/x86/mp_x86.c index 11b11471d736..c52102e2de1e 100644 --- a/sys/x86/x86/mp_x86.c +++ b/sys/x86/x86/mp_x86.c @@ -1427,6 +1427,9 @@ ipi_all_but_self(u_int ipi) cpuset_t other_cpus; int cpu, c; + if (mp_ncpus == 1) + return; + /* * IPI_STOP_HARD maps to a NMI and the trap handler needs a bit * of help in order to understand what is the source.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501141443.50EEhdmw014391>