Displaying 3 results from an estimated 3 matches for "pgentry_t".
2007 Mar 08
3
Mini-OS: new_pt_frame fails
...0002
(XEN) mm.c:456:d1 Could not get page ref for pfn 0
(XEN) mm.c:2225:d1 Could not get page for normal update
New PT could not be mapped R/W.
Now I am puzzled what these hypervisor errors mean, and what I could
have done wrong? The code in question is the following:
mmu_updates[0].ptr = ((pgentry_t)tab[l2_table_offset(pt_page)] &
PAGE_MASK) +
sizeof(pgentry_t) * l1_table_offset(pt_page);
mmu_updates[0].val = ((pgentry_t)pfn_to_mfn(*pt_pfn) << PAGE_SHIFT)
| _PAGE_RW | _PAGE_PRESENT;
if(HYPERVISOR_mmu_update(mmu_updates, 1, NULL, DOMID_SELF) < 0...
2008 Jan 18
0
[PATCH] minios: support COW for a zero page
...d41be2 extras/mini-os/arch/x86/traps.c
--- a/extras/mini-os/arch/x86/traps.c Fri Jan 18 15:55:13 2008 +0000
+++ b/extras/mini-os/arch/x86/traps.c Fri Jan 18 16:02:32 2008 +0000
@@ -118,6 +118,46 @@ void page_walk(unsigned long virt_addres
}
+static int handle_cow(unsigned long addr) {
+ pgentry_t *tab = (pgentry_t *)start_info.pt_base, page;
+ unsigned long new_page;
+ int rc;
+
+#if defined(__x86_64__)
+ page = tab[l4_table_offset(addr)];
+ if (!(page & _PAGE_PRESENT))
+ return 0;
+ tab = pte_to_virt(page);
+#endif
+#if defined(__x86_64__) || defined(CONFIG_X86_PAE)
+...
2012 Nov 26
13
[PATCH 0 of 4] Minios improvements for app development
This patch series contains a set of patches making minios rather easier
to use, from an application development point of view.
Overview of patches:
1 Command line argument parsing support, from Xen.
2 Weak console handler function.
3 Build system tweaks for application directories.
4 Trailing whitespace cleanup. (because it is very messy)
Patch 4 is likely to be more controversial than