PERFORCE change 28607 for review

Peter Wemm peter at FreeBSD.org
Tue Apr 8 21:33:54 PDT 2003


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

Change 28607 by peter at peter_daintree on 2003/04/08 21:33:13

	do not add empty MODINFOMD_SMAP metadata records.

Affected files ...

.. //depot/projects/hammer/sys/boot/i386/libi386/biossmap.c#2 edit

Differences ...

==== //depot/projects/hammer/sys/boot/i386/libi386/biossmap.c#2 (text+ko) ====

@@ -54,8 +54,9 @@
 {
 	int n;
 
+	n = 0;
+	smaplen = 0;
 	/* Count up segments in system memory map */
-	n = 0;
 	v86.ebx = 0;
 	do {
 		v86.ctl = V86_FLAGS;
@@ -70,11 +71,12 @@
 			break;
 		n++;
 	} while (v86.ebx != 0);
+	if (n == 0)
+		return;
 	n += 10;	/* spare room */
 	smapbase = malloc(n * sizeof(*smapbase));
 
 	/* Save system memory map */
-	smaplen = 0;
 	v86.ebx = 0;
 	do {
 		v86.ctl = V86_FLAGS;
@@ -93,7 +95,10 @@
 void
 bios_addsmapdata(struct preloaded_file *kfp)
 {
+	int len;
 
-	file_addmetadata(kfp, MODINFOMD_SMAP,
-	    smaplen * sizeof(*smapbase), smapbase);
+	if (smapbase == 0 || smaplen == 0)
+		return;
+	len = smaplen * sizeof(*smapbase);
+	file_addmetadata(kfp, MODINFOMD_SMAP, len, smapbase);
 }


More information about the p4-projects mailing list