From owner-svn-src-projects@FreeBSD.ORG Wed May 11 21:15:12 2011 Return-Path: <owner-svn-src-projects@FreeBSD.ORG> Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A88E01065676; Wed, 11 May 2011 21:15:12 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 9986C8FC0C; Wed, 11 May 2011 21:15:12 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p4BLFC8K006444; Wed, 11 May 2011 21:15:12 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p4BLFCGW006442; Wed, 11 May 2011 21:15:12 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201105112115.p4BLFCGW006442@svn.freebsd.org> From: Marius Strobl <marius@FreeBSD.org> Date: Wed, 11 May 2011 21:15:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r221791 - projects/largeSMP/sys/sparc64/include X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" <svn-src-projects.freebsd.org> List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, <mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects> List-Post: <mailto:svn-src-projects@freebsd.org> List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help> List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, <mailto:svn-src-projects-request@freebsd.org?subject=subscribe> X-List-Received-Date: Wed, 11 May 2011 21:15:12 -0000 Author: marius Date: Wed May 11 21:15:12 2011 New Revision: 221791 URL: http://svn.freebsd.org/changeset/base/221791 Log: The ita_mask should include curcpu but the cpuset passed to cpu_ipi_selected() must not, otherwise we tell the CPU to IPI itself, which the sun4u CPUs don't support. For reasons unknown so far MD and MI IPI use actually still triggers that assertion though. Modified: projects/largeSMP/sys/sparc64/include/smp.h Modified: projects/largeSMP/sys/sparc64/include/smp.h ============================================================================== --- projects/largeSMP/sys/sparc64/include/smp.h Wed May 11 21:10:43 2011 (r221790) +++ projects/largeSMP/sys/sparc64/include/smp.h Wed May 11 21:15:12 2011 (r221791) @@ -222,8 +222,8 @@ ipi_tlb_context_demap(struct pmap *pm) } ita = &ipi_tlb_args; mtx_lock_spin(&ipi_mtx); - CPU_OR(&cpus, PCPU_PTR(cpumask)); ita->ita_mask = cpus; + CPU_OR(&ita->ita_mask, PCPU_PTR(cpumask)); ita->ita_pmap = pm; cpu_ipi_selected(cpus, 0, (u_long)tl_ipi_tlb_context_demap, (u_long)ita); @@ -247,8 +247,8 @@ ipi_tlb_page_demap(struct pmap *pm, vm_o } ita = &ipi_tlb_args; mtx_lock_spin(&ipi_mtx); - CPU_OR(&cpus, PCPU_PTR(cpumask)); ita->ita_mask = cpus; + CPU_OR(&ita->ita_mask, PCPU_PTR(cpumask)); ita->ita_pmap = pm; ita->ita_va = va; cpu_ipi_selected(cpus, 0, (u_long)tl_ipi_tlb_page_demap, (u_long)ita); @@ -272,8 +272,8 @@ ipi_tlb_range_demap(struct pmap *pm, vm_ } ita = &ipi_tlb_args; mtx_lock_spin(&ipi_mtx); - CPU_OR(&cpus, PCPU_PTR(cpumask)); ita->ita_mask = cpus; + CPU_OR(&ita->ita_mask, PCPU_PTR(cpumask)); ita->ita_pmap = pm; ita->ita_start = start; ita->ita_end = end;