PERFORCE change 34043 for review

Peter Wemm peter at FreeBSD.org
Thu Jul 3 16:20:35 PDT 2003


http://perforce.freebsd.org/chv.cgi?CH=34043

Change 34043 by peter at peter_daintree on 2003/07/03 16:20:01

	Deal with large pages in pmap_pte().  This kinda sucks, but other code
	expects it.  More to the point, the i386 code intentionally didn't
	test for the PG_PS case since it knew that pmap_pte* on i386
	would return the pde for a large page case.

Affected files ...

.. //depot/projects/hammer/sys/amd64/amd64/pmap.c#23 edit

Differences ...

==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#23 (text+ko) ====

@@ -330,6 +330,8 @@
 	pde = pmap_pde(pmap, va);
 	if (pde == NULL || (*pde & PG_V) == 0)
 		return NULL;
+	if ((*pde & PG_PS) != 0)	/* compat with i386 pmap_pte() */
+		return ((pt_entry_t *)pde);
 	pte = (pt_entry_t *)PHYS_TO_DMAP(*pde & PG_FRAME);
 	return (&pte[pmap_pte_index(va)]);
 }


More information about the p4-projects mailing list