svn commit: r321335 - in head/sys: amd64/amd64 x86/x86

Ryan Libby rlibby at FreeBSD.org
Fri Jul 21 17:11:38 UTC 2017


Author: rlibby
Date: Fri Jul 21 17:11:36 2017
New Revision: 321335
URL: https://svnweb.freebsd.org/changeset/base/321335

Log:
  __pcpu: gcc -Wredundant-decls
  
  Pollution from counter.h made __pcpu visible in amd64/pmap.c.  Delete
  the existing extern decl of __pcpu in amd64/pmap.c and avoid referring
  to that symbol, instead accessing the pcpu region via PCPU_SET macros.
  Also delete an unused extern decl of __pcpu from mp_x86.c.
  
  Reviewed by:	kib
  Approved by:	markj (mentor)
  Sponsored by:	Dell EMC Isilon
  Differential Revision:	https://reviews.freebsd.org/D11666

Modified:
  head/sys/amd64/amd64/pmap.c
  head/sys/x86/x86/mp_x86.c

Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c	Fri Jul 21 16:14:35 2017	(r321334)
+++ head/sys/amd64/amd64/pmap.c	Fri Jul 21 17:11:36 2017	(r321335)
@@ -274,8 +274,6 @@ pmap_modified_bit(pmap_t pmap)
 	return (mask);
 }
 
-extern	struct pcpu __pcpu[];
-
 #if !defined(DIAGNOSTIC)
 #ifdef __GNUC_GNU_INLINE__
 #define PMAP_INLINE	__attribute__((__gnu_inline__)) inline
@@ -1063,8 +1061,8 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
 			kernel_pmap->pm_pcids[i].pm_pcid = PMAP_PCID_KERN;
 			kernel_pmap->pm_pcids[i].pm_gen = 1;
 		}
-		__pcpu[0].pc_pcid_next = PMAP_PCID_KERN + 1;
-		__pcpu[0].pc_pcid_gen = 1;
+		PCPU_SET(pcid_next, PMAP_PCID_KERN + 1);
+		PCPU_SET(pcid_gen, 1);
 		/*
 		 * pcpu area for APs is zeroed during AP startup.
 		 * pc_pcid_next and pc_pcid_gen are initialized by AP

Modified: head/sys/x86/x86/mp_x86.c
==============================================================================
--- head/sys/x86/x86/mp_x86.c	Fri Jul 21 16:14:35 2017	(r321334)
+++ head/sys/x86/x86/mp_x86.c	Fri Jul 21 17:11:36 2017	(r321335)
@@ -90,8 +90,6 @@ int	mcount_lock;
 int	mp_naps;		/* # of Applications processors */
 int	boot_cpu_id = -1;	/* designated BSP */
 
-extern	struct pcpu __pcpu[];
-
 /* AP uses this during bootstrap.  Do not staticize.  */
 char *bootSTK;
 int bootAP;


More information about the svn-src-head mailing list