summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/minidump.h
diff options
context:
space:
mode:
authoravg <avg@FreeBSD.org>2010-11-11 18:35:28 +0000
committeravg <avg@FreeBSD.org>2010-11-11 18:35:28 +0000
commit6ba2297b754f9d2cd9840610b1327c746071b697 (patch)
treeab4a8852b8f7a080ba65cb8f77fcec31c195cb3f /sys/amd64/include/minidump.h
parent37790e770eac68da33354ccc87eaaf139b2a5bb5 (diff)
downloadFreeBSD-src-6ba2297b754f9d2cd9840610b1327c746071b697.zip
FreeBSD-src-6ba2297b754f9d2cd9840610b1327c746071b697.tar.gz
amd64: introduce minidump version 2
After KVA space was increased to 512GB on amd64 it became impractical to use PTEs as entries in the minidump map of dumped pages, because size of that map alone would already be 1GB. Instead, we now use PDEs as page map entries and employ two stage lookup in libkvm: virtual address -> PDE -> PTE -> physical address. PTEs are now dumped as regular pages. Fixed page map size now is 2MB. libkvm keeps support for accessing amd64 minidumps of version 1. Support for 1GB pages is added. Many thanks to Alan Cox for his guidance, numerous reviews, suggestions, enhancments and corrections. Reviewed by: alc [kernel part] MFC after: 15 days
Diffstat (limited to 'sys/amd64/include/minidump.h')
-rw-r--r--sys/amd64/include/minidump.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/amd64/include/minidump.h b/sys/amd64/include/minidump.h
index 1ea92b7..2ac529c 100644
--- a/sys/amd64/include/minidump.h
+++ b/sys/amd64/include/minidump.h
@@ -30,14 +30,14 @@
#define _MACHINE_MINIDUMP_H_ 1
#define MINIDUMP_MAGIC "minidump FreeBSD/amd64"
-#define MINIDUMP_VERSION 1
+#define MINIDUMP_VERSION 2
struct minidumphdr {
char magic[24];
uint32_t version;
uint32_t msgbufsize;
uint32_t bitmapsize;
- uint32_t ptesize;
+ uint32_t pmapsize;
uint64_t kernbase;
uint64_t dmapbase;
uint64_t dmapend;
OpenPOWER on IntegriCloud