Date: Wed, 29 Jun 2005 22:28:46 +0000 (UTC) From: Peter Wemm <peter@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 dump_machdep.c machdep.c src/sys/amd64/include pmap.h src/sys/i386/i386 dump_machdep.c machdep.c src/sys/i386/include pmap.h src/sys/sys kerneldump.h Message-ID: <200506292228.j5TMSkUt049409@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
peter 2005-06-29 22:28:46 UTC FreeBSD src repository Modified files: sys/amd64/amd64 dump_machdep.c machdep.c sys/amd64/include pmap.h sys/i386/i386 dump_machdep.c machdep.c sys/i386/include pmap.h sys/sys kerneldump.h Log: Switch AMD64 and i386 platforms to using ELF as their kernel crash dump format. The key reason to do this is so that we can dump sparse address space. For example, we need to be able to skip the PCI hole just below the 4GB boundary. Trying to destructively dump MMIO device registers is Really Bad(TM). The frequent result of trying to do a crash dump on a machine with 4GB or more ram was ugly (lockup or reboot). This code has been taken directly from the IA64 dump_machdep.c code, with just a few (mostly minor) mods. Introduce a dump_avail[] array in the machdep.c code so that we have a source of truth for what memory is present in a machine that needs to be dumped. We can't use phys_avail[] because all sorts of things slice memory out of it that we really need to dump. eg: the vm page array and the dmesg buffer. dump_avail[] is pretty much an unmolested version of phys_avail[]. It does have Maxmem correction. Bump the i386 and amd64 dump format to version 2, but nothing actually uses this. amd64 was actually using the i386 dump version number. libkvm support to follow. Approved by: re Revision Changes Path 1.10 +324 -90 src/sys/amd64/amd64/dump_machdep.c 1.638 +33 -12 src/sys/amd64/amd64/machdep.c 1.127 +1 -0 src/sys/amd64/include/pmap.h 1.10 +324 -90 src/sys/i386/i386/dump_machdep.c 1.615 +35 -19 src/sys/i386/i386/machdep.c 1.117 +1 -0 src/sys/i386/include/pmap.h 1.7 +2 -1 src/sys/sys/kerneldump.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200506292228.j5TMSkUt049409>