Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Apr 2003 20:14:44 -0700 (PDT)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 28390 for review
Message-ID:  <200304070314.h373Eien015830@repoman.freebsd.org>

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

Change 28390 by peter@peter_overcee on 2003/04/06 20:14:28

	delete bootinfo.
	print modulep and kernend for good luck at this point.

Affected files ...

.. //depot/projects/hammer/sys/boot/i386/libi386/elf64_freebsd.c#7 edit

Differences ...

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

@@ -65,10 +65,8 @@
 {
     struct file_metadata	*md;
     Elf_Ehdr 			*ehdr;
-    vm_offset_t			bootinfop, modulep;
+    vm_offset_t			bootinfop, modulep, kernend;
     int				boothowto, err, bootdev;
-    struct bootinfo		*bi;
-    vm_offset_t			ssym, esym;
     int				i;
 
     if ((md = file_findmetadata(fp, MODINFOMD_ELFHDR)) == NULL)
@@ -78,16 +76,10 @@
     if ((err = bi_load(fp->f_args, &boothowto, &bootdev, &bootinfop, &modulep)) != 0)
 	return(err);
 
-    ssym = esym = 0;
-    if ((md = file_findmetadata(fp, MODINFOMD_SSYM)) != NULL)
-	ssym = *((vm_offset_t *)&(md->md_data));
-    if ((md = file_findmetadata(fp, MODINFOMD_ESYM)) != NULL)
-	esym = *((vm_offset_t *)&(md->md_data));
-    if (ssym == 0 || esym == 0)
-	ssym = esym = 0;		/* sanity */
-    bi = (struct bootinfo *)PTOV(bootinfop);
-    bi->bi_symtab = ssym;	/* XXX this is only the primary kernel symtab */
-    bi->bi_esymtab = esym;
+	kernend = 0;
+	md = file_findmetadata(fp, MODINFOMD_KERNEND);
+	if (md != NULL)
+		kernend = *((vm_offset_t *)&(md->md_data));
 
 #define PG_V	0x001
 #define PG_RW	0x002
@@ -117,12 +109,14 @@
 
     entry_lo = ehdr->e_entry & 0xffffffff;
     entry_hi = (ehdr->e_entry >> 32) & 0xffffffff;
+    printf("modulep: 0x%x\n", modulep);
+    printf("kernend: 0x%x\n", kernend);
 #ifdef DEBUG
     printf("Start @ %#llx ...\n", ehdr->e_entry);
 #endif
 
     dev_cleanup();
-    __exec((void *)VTOP(x86_64_tramp), boothowto, bootdev, 0, 0, 0, bootinfop, modulep, bi->bi_kernend);
+    __exec((void *)VTOP(x86_64_tramp), modulep, kernend);
 
     panic("exec returned");
 }



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