vmm: remove verbose output
authorBarret Rhoden <brho@cs.berkeley.edu>
Fri, 24 May 2019 20:15:27 +0000 (16:15 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Fri, 24 May 2019 20:15:27 +0000 (16:15 -0400)
A lot of those debugging prints were unused and cluttered the VMM's
early output, making it harder to find real bugs.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
tests/vmm/vmrunkernel.c
user/vmm/biostables.c
user/vmm/io.c
user/vmm/load_elf.c
user/vmm/memory.c
user/vmm/virtio_mmio.c

index 7934257..7d81a4b 100644 (file)
@@ -251,7 +251,6 @@ void alloc_intr_pages(void)
 
        a_page = mmap((void *)APIC_GPA, PGSIZE, PROT_READ | PROT_WRITE,
                      MAP_POPULATE | MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
-       fprintf(stderr, "a_page mmap pointer %p\n", a_page);
 
        if (a_page != (void *)APIC_GPA) {
                perror("Could not mmap APIC");
@@ -423,9 +422,6 @@ int main(int argc, char **argv)
                {0, 0, 0, 0}
        };
 
-       fprintf(stderr, "%p %p %p %p\n", PGSIZE, PGSHIFT, PML1_SHIFT,
-               PML1_PTE_REACH);
-
        if ((uintptr_t)__procinfo.program_end >= MinMemory) {
                fprintf(stderr,
                        "Panic: vmrunkernel binary extends into guest memory\n");
@@ -549,7 +545,6 @@ int main(int argc, char **argv)
 
        // Set vm->nr_gpcs before it's referenced in the struct setups below.
        vm->nr_gpcs = num_pcs;
-       fprintf(stderr, "NUM PCS: %d\n", num_pcs);
        /* These are only used to be passed to vmm_init, which makes copies
         * internally */
        gpcis = (struct vmm_gpcore_init *)
@@ -708,7 +703,6 @@ int main(int argc, char **argv)
        vm_tf->tf_rsi = (uint64_t) bp;
        vm_tf->tf_rflags = FL_RSVD_1;
        vm->up_gpcs = 1;
-       fprintf(stderr, "Start guest: cr3 %p rip %p\n", vm_tf->tf_cr3, entry);
        start_guest_thread(gpcid_to_gth(vm, 0));
 
        uthread_sleep_forever();
index 009e296..38ac8b9 100644 (file)
@@ -99,13 +99,8 @@ static uint8_t acpi_tb_checksum(uint8_t *buffer, uint32_t length)
        uint8_t sum = 0;
        uint8_t *end = buffer + length;
 
-       fprintf(stderr, "tbchecksum %p for %d", buffer, length);
-       while (buffer < end) {
-               if (end - buffer < 2)
-                       fprintf(stderr, "%02x\n", sum);
+       while (buffer < end)
                sum = (uint8_t)(sum + *(buffer++));
-       }
-       fprintf(stderr, " is %02x\n", sum);
        return sum;
 }
 
@@ -115,12 +110,9 @@ static void gencsum(uint8_t *target, void *data, int len)
 
        // blast target to zero so it does not get counted
        // (it might be in the struct we checksum) And, yes, it is, goodness.
-       fprintf(stderr, "gencsum %p target %p source %d bytes\n", target, data,
-               len);
        *target = 0;
        csum = acpi_tb_checksum((uint8_t *)data, len);
        *target = ~csum + 1;
-       fprintf(stderr, "Cmoputed is %02x\n", *target);
 }
 
 /* Initialize the MADT structs for each local apic. */
@@ -208,7 +200,6 @@ void *setup_biostables(struct virtual_machine *vm,
        }
 
        r = a;
-       fprintf(stderr, "install rsdp to %p\n", r);
        *r = rsdp;
        a += sizeof(*r);
        r->xsdt_physical_address = (uint64_t)a;
@@ -232,21 +223,18 @@ void *setup_biostables(struct virtual_machine *vm,
        x = a;
        a += sizeof(*x) + 8*sizeof(void *);
        memset(x, 0, a - (void *)x);
-       fprintf(stderr, "install xsdt to %p\n", x);
        *x = xsdt;
        x->table_offset_entry[0] = 0;
        x->table_offset_entry[1] = 0;
        x->header.length = a - (void *)x;
 
        f = a;
-       fprintf(stderr, "install fadt to %p\n", f);
        *f = fadt;
        x->table_offset_entry[0] = (uint64_t)f; // fadt MUST be first in xsdt!
        a += sizeof(*f);
        f->header.length = a - (void *)f;
 
        f->Xdsdt = (uint64_t) a;
-       fprintf(stderr, "install dsdt to %p\n", a);
        memcpy(a, &DSDT_DSDTTBL_Header, 36);
        a += 36;
 
@@ -260,7 +248,6 @@ void *setup_biostables(struct virtual_machine *vm,
        *m = madt;
        x->table_offset_entry[3] = (uint64_t) m;
        a += sizeof(*m);
-       fprintf(stderr, "install madt to %p\n", m);
 
        a = init_madt_local_apic(vm, a);
 
@@ -286,8 +273,6 @@ void *setup_biostables(struct virtual_machine *vm,
                exit(1);
        }
 
-       fprintf(stderr, "allchecksums ok\n");
-
        a = (void *)(((unsigned long)a + 0xfff) & ~0xfff);
 
        return a;
index d46fe80..96859a3 100644 (file)
@@ -162,7 +162,7 @@ int io(struct guest_thread *vm_thread)
                 * confused people into thinking we were running
                 * Windows 98, not Linux.
                 */
-               printf("(out rax, edx): unhandled IO address dx @%p is 0x%x\n",
+               printd("(out rax, edx): unhandled IO address dx @%p is 0x%x\n",
                       ip8, edx);
                return 0;
        }
@@ -172,7 +172,7 @@ int io(struct guest_thread *vm_thread)
                vm_tf->tf_rip += 1;
                /* out al %edx */
                if (edx == 0xcfb) { // special!
-                       printf("Just ignore the damned cfb write\n");
+                       printd("Just ignore the damned cfb write\n");
                        return 0;
                }
                if ((edx&~3) == 0xcfc) {
@@ -196,7 +196,7 @@ int io(struct guest_thread *vm_thread)
 
                /* Another case where we print a message but it's not an error.
                 * */
-               printf("out al, dx: unhandled IO address dx @%p is 0x%x\n", ip8,
+               printd("out al, dx: unhandled IO address dx @%p is 0x%x\n", ip8,
                       edx); return 0;
        }
        /* Silently accept OUT imm8, al */
index b9bc612..a628eec 100644 (file)
@@ -44,15 +44,12 @@ uintptr_t load_elf(char *filename, uint64_t offset, uint64_t *highest,
                        __func__, filename);
                goto fail;
        }
-       fprintf(stderr, "%s ELF entry point is %p\n", filename,
-               (void *)ehdr->e_entry);
 
        if (elf_getphdrnum(elf, &phnum) < 0) {
                fprintf(stderr, "%s: cannot get program header num of %s.\n",
                        __func__, filename);
                goto fail;
        }
-       fprintf(stderr, "%s has %p program headers\n", filename, phnum);
 
        hdrs = elf64_getphdr(elf);
        if (hdrs == NULL) {
@@ -66,26 +63,24 @@ uintptr_t load_elf(char *filename, uint64_t offset, uint64_t *highest,
                Elf64_Phdr *h = &hdrs[i];
                uintptr_t pa;
 
-               fprintf(stderr,
-                       "%d: type 0x%lx flags 0x%lx  offset 0x%lx vaddr 0x%lx\npaddr 0x%lx size 0x%lx  memsz 0x%lx align 0x%lx\n",
-                       i,
-                       h->p_type,              /* Segment type */
-                       h->p_flags,             /* Segment flags */
-                       h->p_offset,            /* Segment file offset */
-                       h->p_vaddr,             /* Segment virtual address */
-                       h->p_paddr,             /* Segment physical address */
-                       h->p_filesz,            /* Segment size in file */
-                       h->p_memsz,             /* Segment size in memory */
-                       h->p_align              /* Segment alignment */);
+               printd("%d: type 0x%lx flags 0x%lx  offset 0x%lx vaddr 0x%lx\npaddr 0x%lx size 0x%lx  memsz 0x%lx align 0x%lx\n",
+                      i,
+                      h->p_type,              /* Segment type */
+                      h->p_flags,             /* Segment flags */
+                      h->p_offset,            /* Segment file offset */
+                      h->p_vaddr,             /* Segment virtual address */
+                      h->p_paddr,             /* Segment physical address */
+                      h->p_filesz,            /* Segment size in file */
+                      h->p_memsz,             /* Segment size in memory */
+                      h->p_align              /* Segment alignment */);
                if (h->p_type != PT_LOAD)
                        continue;
                if ((h->p_flags & (PF_R | PF_W | PF_X)) == 0)
                        continue;
 
                pa = h->p_paddr;
-               fprintf(stderr,
-                       "Read header %d @offset %p to %p (elf PA is %p) %d bytes:",
-                       i, h->p_offset, pa, h->p_paddr, h->p_filesz);
+               printd("Read header %d @offset %p to %p (elf PA is %p) %d bytes:",
+                      i, h->p_offset, pa, h->p_paddr, h->p_filesz);
                tot = 0;
                while (tot < h->p_filesz) {
                        int amt = pread(fd, (void *)(pa + tot + offset),
@@ -95,7 +90,6 @@ uintptr_t load_elf(char *filename, uint64_t offset, uint64_t *highest,
                                break;
                        tot += amt;
                }
-               fprintf(stderr, "read a total of %d bytes\n", tot);
                if (tot < h->p_filesz) {
                        fprintf(stderr, "%s: got %d bytes, wanted %d bytes\n",
                                filename, tot, h->p_filesz);
index 27d9e06..fe4db99 100644 (file)
@@ -85,7 +85,6 @@ void *init_e820map(struct virtual_machine *vm, struct boot_params *bp)
                bp->e820_map[bp->e820_entries++].type = E820_RAM;
        }
 
-       dumpe820(bp->e820_map, bp->e820_entries);
        return (void *)bp + PGSIZE;
 }
 
index 6e91816..d805d2e 100644 (file)
@@ -93,9 +93,6 @@ static void virtio_mmio_reset(struct virtio_mmio_dev *mmio_dev)
        if (!mmio_dev->vqdev)
                return;
 
-       fprintf(stderr, "virtio mmio device reset: %s\n",
-               mmio_dev->vqdev->name);
-
        // Clear any driver-activated feature bits
        mmio_dev->vqdev->dri_feat = 0;