From owner-svn-src-all@FreeBSD.ORG Wed Aug 11 23:22:54 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4A2CA1065675; Wed, 11 Aug 2010 23:22:54 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 361468FC12; Wed, 11 Aug 2010 23:22:54 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o7BNMsA1002831; Wed, 11 Aug 2010 23:22:54 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o7BNMr8X002816; Wed, 11 Aug 2010 23:22:53 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201008112322.o7BNMr8X002816@svn.freebsd.org> From: John Baldwin Date: Wed, 11 Aug 2010 23:22:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r211197 - in head/sys: amd64/amd64 arm/include i386/i386 i386/xen mips/include powerpc/include sparc64/include sparc64/sparc64 sun4v/include sun4v/sun4v X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Aug 2010 23:22:54 -0000 Author: jhb Date: Wed Aug 11 23:22:53 2010 New Revision: 211197 URL: http://svn.freebsd.org/changeset/base/211197 Log: Update various places that store or manipulate CPU masks to use cpumask_t instead of int or u_int. Since cpumask_t is currently u_int on all platforms this should just be a cosmetic change. Modified: head/sys/amd64/amd64/mp_machdep.c head/sys/amd64/amd64/vm_machdep.c head/sys/arm/include/pmap.h head/sys/i386/i386/mp_machdep.c head/sys/i386/i386/vm_machdep.c head/sys/i386/xen/pmap.c head/sys/mips/include/pmap.h head/sys/powerpc/include/pmap.h head/sys/sparc64/include/pmap.h head/sys/sparc64/include/smp.h head/sys/sparc64/sparc64/mp_machdep.c head/sys/sun4v/include/smp.h head/sys/sun4v/sun4v/mp_machdep.c head/sys/sun4v/sun4v/pmap.c Modified: head/sys/amd64/amd64/mp_machdep.c ============================================================================== --- head/sys/amd64/amd64/mp_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/amd64/amd64/mp_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -1053,7 +1053,7 @@ smp_targeted_tlb_shootdown(cpumask_t mas int ncpu, othercpus; othercpus = mp_ncpus - 1; - if (mask == (u_int)-1) { + if (mask == (cpumask_t)-1) { ncpu = othercpus; if (ncpu < 1) return; @@ -1078,7 +1078,7 @@ smp_targeted_tlb_shootdown(cpumask_t mas smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); - if (mask == (u_int)-1) + if (mask == (cpumask_t)-1) ipi_all_but_self(vector); else ipi_selected(mask, vector); @@ -1549,9 +1549,11 @@ mp_grab_cpu_hlt(void) mask = PCPU_GET(cpumask); #endif - retval = mask & hlt_cpus_mask; - while (mask & hlt_cpus_mask) + retval = 0; + while (mask & hlt_cpus_mask) { + retval = 1; __asm __volatile("sti; hlt" : : : "memory"); + } return (retval); } Modified: head/sys/amd64/amd64/vm_machdep.c ============================================================================== --- head/sys/amd64/amd64/vm_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/amd64/amd64/vm_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -527,7 +527,8 @@ void cpu_reset() { #ifdef SMP - u_int cnt, map; + cpumask_t map; + u_int cnt; if (smp_active) { map = PCPU_GET(other_cpus) & ~stopped_cpus; Modified: head/sys/arm/include/pmap.h ============================================================================== --- head/sys/arm/include/pmap.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/arm/include/pmap.h Wed Aug 11 23:22:53 2010 (r211197) @@ -136,7 +136,7 @@ struct pmap { pd_entry_t *pm_pdir; /* KVA of page directory */ uint32_t pm_gen_count; /* generation count (pmap lock dropped) */ u_int pm_retries; - int pm_active; /* active on cpus */ + cpumask_t pm_active; /* active on cpus */ struct pmap_statistics pm_stats; /* pmap statictics */ TAILQ_HEAD(,pv_entry) pm_pvlist; /* list of mappings in pmap */ }; Modified: head/sys/i386/i386/mp_machdep.c ============================================================================== --- head/sys/i386/i386/mp_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/i386/i386/mp_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -1598,9 +1598,11 @@ mp_grab_cpu_hlt(void) mask = PCPU_GET(cpumask); #endif - retval = mask & hlt_cpus_mask; - while (mask & hlt_cpus_mask) + retval = 0; + while (mask & hlt_cpus_mask) { + retval = 1; __asm __volatile("sti; hlt" : : : "memory"); + } return (retval); } Modified: head/sys/i386/i386/vm_machdep.c ============================================================================== --- head/sys/i386/i386/vm_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/i386/i386/vm_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -596,7 +596,8 @@ cpu_reset() #endif #ifdef SMP - u_int cnt, map; + cpumask_t map; + u_int cnt; if (smp_active) { map = PCPU_GET(other_cpus) & ~stopped_cpus; Modified: head/sys/i386/xen/pmap.c ============================================================================== --- head/sys/i386/xen/pmap.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/i386/xen/pmap.c Wed Aug 11 23:22:53 2010 (r211197) @@ -863,8 +863,7 @@ pmap_cache_bits(int mode, boolean_t is_p void pmap_invalidate_page(pmap_t pmap, vm_offset_t va) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; CTR2(KTR_PMAP, "pmap_invalidate_page: pmap=%p va=0x%x", pmap, va); @@ -888,8 +887,7 @@ pmap_invalidate_page(pmap_t pmap, vm_off void pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; vm_offset_t addr; CTR3(KTR_PMAP, "pmap_invalidate_page: pmap=%p eva=0x%x sva=0x%x", @@ -917,8 +915,7 @@ pmap_invalidate_range(pmap_t pmap, vm_of void pmap_invalidate_all(pmap_t pmap) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; CTR1(KTR_PMAP, "pmap_invalidate_page: pmap=%p", pmap); Modified: head/sys/mips/include/pmap.h ============================================================================== --- head/sys/mips/include/pmap.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/mips/include/pmap.h Wed Aug 11 23:22:53 2010 (r211197) @@ -81,7 +81,7 @@ struct pmap { * pmap */ uint32_t pm_gen_count; /* generation count (pmap lock dropped) */ u_int pm_retries; - int pm_active; /* active on cpus */ + cpumask_t pm_active; /* active on cpus */ struct { u_int32_t asid:ASID_BITS; /* TLB address space tag */ u_int32_t gen:ASIDGEN_BITS; /* its generation number */ Modified: head/sys/powerpc/include/pmap.h ============================================================================== --- head/sys/powerpc/include/pmap.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/powerpc/include/pmap.h Wed Aug 11 23:22:53 2010 (r211197) @@ -99,7 +99,7 @@ struct pmap { #else register_t pm_sr[16]; #endif - u_int pm_active; + cpumask_t pm_active; uint32_t pm_gen_count; /* generation count (pmap lock dropped) */ u_int pm_retries; @@ -153,7 +153,7 @@ void slb_free_user_cache(struct slb *); struct pmap { struct mtx pm_mtx; /* pmap mutex */ tlbtid_t pm_tid[MAXCPU]; /* TID to identify this pmap entries in TLB */ - u_int pm_active; /* active on cpus */ + cpumask_t pm_active; /* active on cpus */ int pm_refs; /* ref count */ struct pmap_statistics pm_stats; /* pmap statistics */ Modified: head/sys/sparc64/include/pmap.h ============================================================================== --- head/sys/sparc64/include/pmap.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sparc64/include/pmap.h Wed Aug 11 23:22:53 2010 (r211197) @@ -61,7 +61,7 @@ struct pmap { struct mtx pm_mtx; struct tte *pm_tsb; vm_object_t pm_tsb_obj; - u_int pm_active; + cpumask_t pm_active; uint32_t pm_gen_count; /* generation count (pmap lock dropped) */ u_int pm_retries; u_int pm_context[MAXCPU]; Modified: head/sys/sparc64/include/smp.h ============================================================================== --- head/sys/sparc64/include/smp.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sparc64/include/smp.h Wed Aug 11 23:22:53 2010 (r211197) @@ -77,17 +77,17 @@ struct cpu_start_args { }; struct ipi_cache_args { - u_int ica_mask; + cpumask_t ica_mask; vm_paddr_t ica_pa; }; struct ipi_rd_args { - u_int ira_mask; + cpumask_t ira_mask; register_t *ira_val; }; struct ipi_tlb_args { - u_int ita_mask; + cpumask_t ita_mask; struct pmap *ita_pmap; u_long ita_start; u_long ita_end; @@ -208,7 +208,7 @@ static __inline void * ipi_tlb_context_demap(struct pmap *pm) { struct ipi_tlb_args *ita; - u_int cpus; + cpumask_t cpus; if (smp_cpus == 1) return (NULL); @@ -230,7 +230,7 @@ static __inline void * ipi_tlb_page_demap(struct pmap *pm, vm_offset_t va) { struct ipi_tlb_args *ita; - u_int cpus; + cpumask_t cpus; if (smp_cpus == 1) return (NULL); @@ -252,7 +252,7 @@ static __inline void * ipi_tlb_range_demap(struct pmap *pm, vm_offset_t start, vm_offset_t end) { struct ipi_tlb_args *ita; - u_int cpus; + cpumask_t cpus; if (smp_cpus == 1) return (NULL); @@ -275,7 +275,7 @@ ipi_tlb_range_demap(struct pmap *pm, vm_ static __inline void ipi_wait(void *cookie) { - volatile u_int *mask; + volatile cpumask_t *mask; if ((mask = cookie) != NULL) { atomic_clear_int(mask, PCPU_GET(cpumask)); Modified: head/sys/sparc64/sparc64/mp_machdep.c ============================================================================== --- head/sys/sparc64/sparc64/mp_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sparc64/sparc64/mp_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -121,7 +121,7 @@ cpu_ipi_single_t *cpu_ipi_single; static vm_offset_t mp_tramp; static u_int cpuid_to_mid[MAXCPU]; static int isjbus; -static volatile u_int shutdown_cpus; +static volatile cpumask_t shutdown_cpus; static void ap_count(phandle_t node, u_int mid, u_int cpu_impl); static void ap_start(phandle_t node, u_int mid, u_int cpu_impl); Modified: head/sys/sun4v/include/smp.h ============================================================================== --- head/sys/sun4v/include/smp.h Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sun4v/include/smp.h Wed Aug 11 23:22:53 2010 (r211197) @@ -59,12 +59,12 @@ struct cpu_start_args { }; struct ipi_cache_args { - u_int ica_mask; + cpumask_t ica_mask; vm_paddr_t ica_pa; }; struct ipi_tlb_args { - u_int ita_mask; + cpumask_t ita_mask; struct pmap *ita_pmap; u_long ita_start; u_long ita_end; Modified: head/sys/sun4v/sun4v/mp_machdep.c ============================================================================== --- head/sys/sun4v/sun4v/mp_machdep.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sun4v/sun4v/mp_machdep.c Wed Aug 11 23:22:53 2010 (r211197) @@ -115,7 +115,7 @@ vm_offset_t mp_tramp; u_int mp_boot_mid; -static volatile u_int shutdown_cpus; +static volatile cpumask_t shutdown_cpus; void cpu_mp_unleash(void *); SYSINIT(cpu_mp_unleash, SI_SUB_SMP, SI_ORDER_FIRST, cpu_mp_unleash, NULL); Modified: head/sys/sun4v/sun4v/pmap.c ============================================================================== --- head/sys/sun4v/sun4v/pmap.c Wed Aug 11 23:21:25 2010 (r211196) +++ head/sys/sun4v/sun4v/pmap.c Wed Aug 11 23:22:53 2010 (r211197) @@ -1451,7 +1451,7 @@ pmap_ipi(pmap_t pmap, char *func, uint64 { int i, cpu_count, retried; - u_int cpus; + cpumask_t cpus; cpumask_t cpumask, active, curactive; cpumask_t active_total, ackmask; uint16_t *cpulist;