diff options
author | kmacy <kmacy@FreeBSD.org> | 2009-12-09 08:09:25 +0000 |
---|---|---|
committer | kmacy <kmacy@FreeBSD.org> | 2009-12-09 08:09:25 +0000 |
commit | 69e3b41184101b4cd3e0e822f4631ad8054813c0 (patch) | |
tree | f53475780ade8291d3c8e7a27e2975872d369495 /sys/i386 | |
parent | dd5a134c1b58b0113ba754b78460c32a8e3e7b29 (diff) | |
download | FreeBSD-src-69e3b41184101b4cd3e0e822f4631ad8054813c0.zip FreeBSD-src-69e3b41184101b4cd3e0e822f4631ad8054813c0.tar.gz |
make PV core dump actually dump memory - still need to fix program header initialization
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/dump_machdep.c | 4 | ||||
-rw-r--r-- | sys/i386/i386/machdep.c | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/sys/i386/i386/dump_machdep.c b/sys/i386/i386/dump_machdep.c index d0c6ba7..2f5dcc9 100644 --- a/sys/i386/i386/dump_machdep.c +++ b/sys/i386/i386/dump_machdep.c @@ -182,7 +182,11 @@ cb_dumpdata(struct md_pa *mdp, int seqnr, void *arg) } for (i = 0; i < chunk; i++) { a = pa + i * PAGE_SIZE; +#ifdef XEN + va = pmap_kenter_temporary(xpmap_ptom(trunc_page(a)), i); +#else va = pmap_kenter_temporary(trunc_page(a), i); +#endif } error = dump_write(di, va, 0, dumplo, sz); if (error) diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c index 5c294eb..8313216 100644 --- a/sys/i386/i386/machdep.c +++ b/sys/i386/i386/machdep.c @@ -2432,6 +2432,9 @@ do_next: #else phys_avail[0] = physfree; phys_avail[1] = xen_start_info->nr_pages*PAGE_SIZE; + dump_avail[0] = 0; + dump_avail[1] = xen_start_info->nr_pages*PAGE_SIZE; + #endif /* |