-/* Northwestern University */
-/* (c) 2008, Jack Lange <jarusl@cs.northwestern.edu> */
+/*
+ * This file is part of the Palacios Virtual Machine Monitor developed
+ * by the V3VEE Project with funding from the United States National
+ * Science Foundation and the Department of Energy.
+ *
+ * The V3VEE Project is a joint project between Northwestern University
+ * and the University of New Mexico. You can find out more at
+ * http://www.v3vee.org
+ *
+ * Copyright (c) 2008, Jack Lange <jarusl@cs.northwestern.edu>
+ * Copyright (c) 2008, The V3VEE Project <http://www.v3vee.org>
+ * All rights reserved.
+ *
+ * Author: Jack Lange <jarusl@cs.northwestern.edu>
+ *
+ * This is free software. You are permitted to use,
+ * redistribute, and modify it as specified in the file "V3VEE_LICENSE".
+ */
#include <palacios/vmm_mem.h>
#include <palacios/vmm.h>
struct shadow_region * region = get_shadow_region_by_addr(&(info->mem_map), guest_addr);
if (region == NULL) {
- PrintDebug("Could not find shadow region for addr: %x\n", guest_addr);
+ PrintDebug("Could not find shadow region for addr: %p\n", (void *)guest_addr);
return NULL;
}
{
struct shadow_region * reg = get_shadow_region_by_addr(&(info->mem_map), fault_gpa);
+ PrintDebug("Handling Special Page Fault\n");
+
switch (reg->host_type) {
case HOST_REGION_HOOK:
return mem_hook_dispatch(info, fault_gva, fault_gpa, access_info, (struct vmm_mem_hook *)(reg->host_addr));
{
struct shadow_region * cursor = map->head;
- PrintDebug("Adding Shadow Region: (0x%x-0x%x)\n", region->guest_start, region->guest_end);
+ PrintDebug("Adding Shadow Region: (0x%p-0x%p)\n",
+ (void *)region->guest_start, (void *)region->guest_end);
if ((!cursor) || (cursor->guest_start >= region->guest_end)) {
region->prev = NULL;
PrintDebug("Memory Layout (regions: %d) \n", map->num_regions);
while (cur) {
- PrintDebug("%d: 0x%x - 0x%x (%s) -> ", i, cur->guest_start, cur->guest_end - 1,
+ PrintDebug("%d: 0x%p - 0x%p (%s) -> ", i,
+ (void *)cur->guest_start, (void *)(cur->guest_end - 1),
cur->guest_type == GUEST_REGION_PHYSICAL_MEMORY ? "GUEST_REGION_PHYSICAL_MEMORY" :
cur->guest_type == GUEST_REGION_NOTHING ? "GUEST_REGION_NOTHING" :
cur->guest_type == GUEST_REGION_MEMORY_MAPPED_DEVICE ? "GUEST_REGION_MEMORY_MAPPED_DEVICE" :
if (cur->host_type == HOST_REGION_PHYSICAL_MEMORY ||
cur->host_type == HOST_REGION_UNALLOCATED ||
cur->host_type == HOST_REGION_MEMORY_MAPPED_DEVICE) {
- PrintDebug("0x%x", cur->host_addr);
+ PrintDebug("0x%p", (void *)(cur->host_addr));
}
PrintDebug("(%s)\n",
cur->host_type == HOST_REGION_PHYSICAL_MEMORY ? "HOST_REGION_PHYSICAL_MEMORY" :