Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Jul 2008 15:01:44 GMT
From:      Oleksandr Tymoshenko <gonzo@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 145100 for review
Message-ID:  <200807121501.m6CF1igY088251@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=145100

Change 145100 by gonzo@gonzo_jeeves on 2008/07/12 15:01:19

	pmap.h is borked in mips2-jnpr, clean it up and merge changes from 
	HEAD by alc@

Affected files ...

.. //depot/projects/mips2/src/sys/mips/include/pmap.h#13 edit

Differences ...

==== //depot/projects/mips2/src/sys/mips/include/pmap.h#13 (text+ko) ====

@@ -90,7 +90,7 @@
  *	from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90
  *	from: @(#)pmap.h	7.4 (Berkeley) 5/12/91
  *	from: src/sys/i386/include/pmap.h,v 1.65.2.2 2000/11/30 01:54:42 peter
- *	JNPR: pmap.h,v 1.7.2.1 2007/09/10 07:44:12 girish
+ *	JNPR: pmap.h,v 1.7.2.1 2007/09/10 07:44:12
  *      $FreeBSD: src/sys/mips/include/pmap.h,v 1.3 2008/04/30 06:05:36 alc Exp $
  */
 #define	VADDR(pdi, pti)	((vm_offset_t)(((pdi)<<PDRSHIFT)|((pti)<<PAGE_SHIFT)))
@@ -104,6 +104,7 @@
 #define	KPTDI		(VM_MIN_KERNEL_ADDRESS >> SEGSHIFT)
 #define	NUSERPGTBLS	(VM_MAXUSER_ADDRESS >> SEGSHIFT)
 
+#ifdef	_KERNEL
 #ifndef LOCORE
 
 #include <sys/queue.h>
@@ -111,7 +112,6 @@
 #include <sys/_lock.h>
 #include <sys/_mutex.h>
 
-
 /*
  * Pmap stuff
  */
@@ -129,13 +129,11 @@
 #define	ASID_BITS		8
 #define	ASIDGEN_BITS		(32 - ASID_BITS)
 #define	ASIDGEN_MASK		((1 << ASIDGEN_BITS) - 1)
-};
 
 struct pmap {
 	pd_entry_t *pm_segtab;	/* KVA of segment table */
 	           TAILQ_HEAD(, pv_entry)pm_pvlist;	/* list of mappings in
 							 * pmap */
-	int pm_count;		/* reference count */
 	int pm_active;		/* active on cpus */
 	struct {
 		u_int32_t asid:ASID_BITS;	/* TLB address space tag */
@@ -144,20 +142,9 @@
 	struct pmap_statistics pm_stats;	/* pmap statistics */
 	struct vm_page *pm_ptphint;	/* pmap ptp hint */
 	struct mtx pm_mtx;
+};
 
-struct pmap {
-	pd_entry_t *pm_segtab;	/* KVA of segment table */
-	           TAILQ_HEAD(, pv_entry)pm_pvlist;	/* list of mappings in
-							 * pmap */
-	int 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 */
-	}      pm_asid[MAXSMPCPU];
-	struct pmap_statistics pm_stats;	/* pmap statistics */
-	struct vm_page *pm_ptphint;	/* pmap ptp hint */
-	struct mtx pm_mtx;
-};
+typedef struct pmap *pmap_t;
 
 pt_entry_t *pmap_pte(pmap_t, vm_offset_t);
 pd_entry_t pmap_segmap(pmap_t pmap, vm_offset_t va);
@@ -182,8 +169,6 @@
 #define PMAP_LGMEM_UNLOCK(sysmap) mtx_unlock(&(sysmap)->lock)
 #define PMAP_LGMEM_DESTROY(sysmap) mtx_destroy(&(sysmap)->lock)
 
-#endif				/* _KERNEL */
-
 /*
  * For each vm_page_t, there is a list of all currently valid virtual
  * mappings of that page.  An entry is a pv_entry_t, the list is pv_table.
@@ -197,36 +182,6 @@
 	boolean_t pv_wired;	/* whether this entry is wired */
 }       *pv_entry_t;
 
-#define	pmap_page_is_mapped(m)	(!TAILQ_EMPTY(&(m)->md.pv_list))
-
-#ifdef	_KERNEL
-
-#if defined(DIAGNOSTIC)
-#define	PMAP_DIAGNOSTIC
-#endif
-
-#if !defined(PMAP_DIAGNOSTIC)
-#define	PMAP_INLINE __inline
-#else
-#define	PMAP_INLINE
-#endif
-
-extern vm_offset_t avail_end;
-extern vm_offset_t avail_start;
-extern vm_offset_t clean_eva;
-extern vm_offset_t clean_sva;
-extern vm_offset_t phys_avail[];
-extern char *ptvmmap;		/* poor name! */
-extern vm_offset_t virtual_avail;
-extern vm_offset_t virtual_end;
-extern pd_entry_t *segbase;
-
-extern vm_paddr_t mips_wired_tlb_physmem_start;
-extern vm_paddr_t mips_wired_tlb_physmem_end;
-extern u_int need_wired_tlb_page_pool;
-
-
-#ifdef	_KERNEL
 
 #if defined(DIAGNOSTIC)
 #define	PMAP_DIAGNOSTIC



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200807121501.m6CF1igY088251>