Author: jhb
Date: Thu Dec 22 20:28:06 2016
New Revision: 310428
URL: https://svnweb.freebsd.org/changeset/base/310428

Log:
  Fix dump_avail[] for MALTA platforms to include the kernel.
  
  dump_avail[] is supposed to be a superset of phys_avail[] that
  describes all of the memory ranges that should be included in a full
  dump.  minidumps don't consider pages described by dump_avail[] to be
  valid and thus they are excluded via the is_dumpable() function.  Most
  MIPS platforms (including MALTA) set dump_avail[] to be identical to
  phys_avail[].  In particular, phys_avail[] doesn't include the kernel
  itself, so pages for the kernel and it's global variables are not
  considered dumpable and not included in the dump.  Fix this by setting
  dump_avail[0] to the first memory address (0) rather than the end of
  the kernel.
  
  Several other MIPS platforms have the same bug, though I am only able
  to test malta in qemu.  The correct fix is to set dump_avail[] to
  describe RAM and in particular to not set dump_avail[0] to the end of
  the kernel (kernel_kseg0_end).
  
  Sponsored by: DARPA / AFRL

Modified:
  head/sys/mips/malta/malta_machdep.c

Modified: head/sys/mips/malta/malta_machdep.c
==============================================================================
--- head/sys/mips/malta/malta_machdep.c Thu Dec 22 20:16:10 2016        
(r310427)
+++ head/sys/mips/malta/malta_machdep.c Thu Dec 22 20:28:06 2016        
(r310428)
@@ -191,7 +191,7 @@ mips_init(unsigned long memsize, uint64_
        /* phys_avail regions are in bytes */
        phys_avail[0] = MIPS_KSEG0_TO_PHYS(kernel_kseg0_end);
        phys_avail[1] = memsize;
-       dump_avail[0] = phys_avail[0];
+       dump_avail[0] = 0;
        dump_avail[1] = phys_avail[1];
 
        /* Only specify the extended region if it's set */
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to