svn commit: r257180 - head/sys/powerpc/aim

Nathan Whitehorn nwhitehorn at FreeBSD.org
Sat Oct 26 18:19:37 UTC 2013


Author: nwhitehorn
Date: Sat Oct 26 18:19:36 2013
New Revision: 257180
URL: http://svnweb.freebsd.org/changeset/base/257180

Log:
  Add some extra sanity checking and checks to printf format specifiers.

Modified:
  head/sys/powerpc/aim/mmu_oea64.c

Modified: head/sys/powerpc/aim/mmu_oea64.c
==============================================================================
--- head/sys/powerpc/aim/mmu_oea64.c	Sat Oct 26 18:18:50 2013	(r257179)
+++ head/sys/powerpc/aim/mmu_oea64.c	Sat Oct 26 18:19:36 2013	(r257180)
@@ -498,15 +498,7 @@ moea64_add_ofw_mappings(mmu_t mmup, phan
 	qsort(translations, sz, sizeof (*translations), om_cmp);
 
 	for (i = 0; i < sz; i++) {
-		CTR3(KTR_PMAP, "translation: pa=%#x va=%#x len=%#x",
-		    (uint32_t)(translations[i].om_pa_lo), translations[i].om_va,
-		    translations[i].om_len);
-
-		if (translations[i].om_pa_lo % PAGE_SIZE)
-			panic("OFW translation not page-aligned!");
-
 		pa_base = translations[i].om_pa_lo;
-
 	      #ifdef __powerpc64__
 		pa_base += (vm_offset_t)translations[i].om_pa_hi << 32;
 	      #else
@@ -514,6 +506,14 @@ moea64_add_ofw_mappings(mmu_t mmup, phan
 			panic("OFW translations above 32-bit boundary!");
 	      #endif
 
+		if (pa_base % PAGE_SIZE)
+			panic("OFW translation not page-aligned (phys)!");
+		if (translations[i].om_va % PAGE_SIZE)
+			panic("OFW translation not page-aligned (virt)!");
+
+		CTR3(KTR_PMAP, "translation: pa=%#zx va=%#x len=%#x",
+		    pa_base, translations[i].om_va, translations[i].om_len);
+
 		/* Now enter the pages for this mapping */
 
 		DISABLE_TRANS(msr);
@@ -690,9 +690,9 @@ moea64_early_bootstrap(mmu_t mmup, vm_of
 	hwphyssz = 0;
 	TUNABLE_ULONG_FETCH("hw.physmem", (u_long *) &hwphyssz);
 	for (i = 0, j = 0; i < regions_sz; i++, j += 2) {
-		CTR3(KTR_PMAP, "region: %#x - %#x (%#x)", regions[i].mr_start,
-		    regions[i].mr_start + regions[i].mr_size,
-		    regions[i].mr_size);
+		CTR3(KTR_PMAP, "region: %#zx - %#zx (%#zx)",
+		    regions[i].mr_start, regions[i].mr_start +
+		    regions[i].mr_size, regions[i].mr_size);
 		if (hwphyssz != 0 &&
 		    (physsz + regions[i].mr_size) >= hwphyssz) {
 			if (physsz < hwphyssz) {


More information about the svn-src-all mailing list