Doing some additional cleanup in loadfile_elf.c (the code used for -b bsd)
- switch com port to 115200 instead of 9600 (our own bootloader does the
same when booted in a VM).
- use the new write_mem(addr, NULL, size) code to zero memory. This makes
that code a lot simpler.
OK
--
:wq Claudio
Index: loadfile_elf.c
===================================================================
RCS file: /cvs/src/usr.sbin/vmd/loadfile_elf.c,v
retrieving revision 1.31
diff -u -p -r1.31 loadfile_elf.c
--- loadfile_elf.c 6 Dec 2018 09:20:06 -0000 1.31
+++ loadfile_elf.c 12 Dec 2018 11:17:55 -0000
@@ -430,7 +430,7 @@ push_bootargs(bios_memmap_t *memmap, siz
/* Serial console device, COM1 @ 0x3f8 */
consdev.consdev = makedev(8, 0); /* com1 @ 0x3f8 */
- consdev.conspeed = 9600;
+ consdev.conspeed = 115200;
consdev.consaddr = 0x3f8;
consdev.consfreq = 0;
@@ -648,33 +648,8 @@ marc4random_buf(paddr_t addr, int sz)
static void
mbzero(paddr_t addr, int sz)
{
- int i, ct;
- char buf[PAGE_SIZE];
-
- /*
- * break up the 'sz' bytes into PAGE_SIZE chunks for use with
- * write_mem
- */
- ct = 0;
- memset(buf, 0, sizeof(buf));
- if (addr % PAGE_SIZE != 0) {
- ct = PAGE_SIZE - (addr % PAGE_SIZE);
-
- if (write_mem(addr, buf, ct))
- return;
-
- addr += ct;
- }
-
- for (i = 0; i < sz; i+= PAGE_SIZE, addr += PAGE_SIZE) {
- if (i + PAGE_SIZE > sz)
- ct = sz - i;
- else
- ct = PAGE_SIZE;
-
- if (write_mem(addr, buf, ct))
- return;
- }
+ if (write_mem(addr, NULL, sz))
+ return;
}
/*