Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Nov 2013 16:03:20 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r257575 - stable/10/sys/amd64/amd64
Message-ID:  <201311031603.rA3G3KPk035209@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Sun Nov  3 16:03:19 2013
New Revision: 257575
URL: http://svnweb.freebsd.org/changeset/base/257575

Log:
  MFC r257216:
  Several small fixes for the amd64 minidump code.
  
  Approved by:	re (gjb)

Modified:
  stable/10/sys/amd64/amd64/minidump_machdep.c
Directory Properties:
  stable/10/sys/   (props changed)

Modified: stable/10/sys/amd64/amd64/minidump_machdep.c
==============================================================================
--- stable/10/sys/amd64/amd64/minidump_machdep.c	Sun Nov  3 14:00:17 2013	(r257574)
+++ stable/10/sys/amd64/amd64/minidump_machdep.c	Sun Nov  3 16:03:19 2013	(r257575)
@@ -127,8 +127,9 @@ report_progress(size_t progress, size_t 
 	int sofar, i;
 
 	sofar = 100 - ((progress * 100) / dumpsize);
-	for (i = 0; i < 10; i++) {
-		if (sofar < progress_track[i].min_per || sofar > progress_track[i].max_per)
+	for (i = 0; i < nitems(progress_track); i++) {
+		if (sofar < progress_track[i].min_per ||
+		    sofar > progress_track[i].max_per)
 			continue;
 		if (progress_track[i].visited)
 			return;
@@ -157,8 +158,8 @@ blk_write(struct dumperinfo *di, char *p
 		printf("cant have both va and pa!\n");
 		return (EINVAL);
 	}
-	if (pa != 0 && (((uintptr_t)ptr) % PAGE_SIZE) != 0) {
-		printf("address not page aligned\n");
+	if ((((uintptr_t)pa) % PAGE_SIZE) != 0) {
+		printf("address not page aligned %p\n", ptr);
 		return (EINVAL);
 	}
 	if (ptr != NULL) {
@@ -230,6 +231,8 @@ minidumpsys(struct dumperinfo *di)
  retry:
 	retry_count++;
 	counter = 0;
+	for (i = 0; i < nitems(progress_track); i++)
+		progress_track[i].visited = 0;
 	/* Walk page table pages, set bits in vm_page_dump */
 	pmapsize = 0;
 	for (va = VM_MIN_KERNEL_ADDRESS; va < MAX(KERNBASE + nkpt * NBPDR,



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