Date: Wed, 8 Jul 2015 15:33:00 +0000 (UTC) From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r285272 - head/sys/arm64/arm64 Message-ID: <201507081533.t68FX0Yb077433@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andrew Date: Wed Jul 8 15:32:59 2015 New Revision: 285272 URL: https://svnweb.freebsd.org/changeset/base/285272 Log: Add support for ipi_all_but_self on arm64. Obtained from: ABT Systems Ltd Sponsored by: The freeBSD Foundation Modified: head/sys/arm64/arm64/intr_machdep.c Modified: head/sys/arm64/arm64/intr_machdep.c ============================================================================== --- head/sys/arm64/arm64/intr_machdep.c Wed Jul 8 14:07:06 2015 (r285271) +++ head/sys/arm64/arm64/intr_machdep.c Wed Jul 8 15:32:59 2015 (r285272) @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include <sys/cpuset.h> #include <sys/interrupt.h> #include <sys/queue.h> +#include <sys/smp.h> #include <machine/cpufunc.h> #include <machine/intr.h> @@ -473,9 +474,16 @@ arm_init_secondary(void) void ipi_all_but_self(u_int ipi) { + cpuset_t other_cpus; - /* ARM64TODO: We should support this */ - panic("ipi_all_but_self"); + other_cpus = all_cpus; + CPU_CLR(PCPU_GET(cpuid), &other_cpus); + + /* ARM64TODO: This will be fixed with arm_intrng */ + ipi += 16; + + CTR2(KTR_SMP, "%s: ipi: %x", __func__, ipi); + PIC_IPI_SEND(root_pic, other_cpus, ipi); } void
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507081533.t68FX0Yb077433>