2015-07-08 17:33 GMT+02:00 Andrew Turner <and...@freebsd.org>: > 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;
BTW. Can you explain why we need += 16 here? We think this is wrong and we will probably try to upstream patches that i.a. remove this. Best regards zbb > + > + CTR2(KTR_SMP, "%s: ipi: %x", __func__, ipi); > + PIC_IPI_SEND(root_pic, other_cpus, ipi); > } > > void > _______________________________________________ > svn-src-all@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/svn-src-all > To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org" _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"