Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Feb 2015 17:12:32 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r278761 - in head: sys/kern usr.bin/gcore
Message-ID:  <201502141712.t1EHCWn9064051@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Sat Feb 14 17:12:31 2015
New Revision: 278761
URL: https://svnweb.freebsd.org/changeset/base/278761

Log:
  Include OBJT_PHYS VM objects in ELF core dumps. In particular this
  includes the shared page allowing debuggers to use the signal trampoline
  code to identify signal frames in core dumps.
  
  Differential Revision:	https://reviews.freebsd.org/D1828
  Reviewed by:	alc, kib
  MFC after:	1 week

Modified:
  head/sys/kern/imgact_elf.c
  head/usr.bin/gcore/elfcore.c

Modified: head/sys/kern/imgact_elf.c
==============================================================================
--- head/sys/kern/imgact_elf.c	Sat Feb 14 17:02:51 2015	(r278760)
+++ head/sys/kern/imgact_elf.c	Sat Feb 14 17:12:31 2015	(r278761)
@@ -1401,7 +1401,8 @@ each_writable_segment(td, func, closure)
 			object = backing_object;
 		}
 		ignore_entry = object->type != OBJT_DEFAULT &&
-		    object->type != OBJT_SWAP && object->type != OBJT_VNODE;
+		    object->type != OBJT_SWAP && object->type != OBJT_VNODE &&
+		    object->type != OBJT_PHYS;
 		VM_OBJECT_RUNLOCK(object);
 		if (ignore_entry)
 			continue;

Modified: head/usr.bin/gcore/elfcore.c
==============================================================================
--- head/usr.bin/gcore/elfcore.c	Sat Feb 14 17:02:51 2015	(r278760)
+++ head/usr.bin/gcore/elfcore.c	Sat Feb 14 17:12:31 2015	(r278761)
@@ -511,7 +511,8 @@ readmap(pid_t pid)
 		    ((pflags & PFLAGS_FULL) == 0 &&
 		    kve->kve_type != KVME_TYPE_DEFAULT &&
 		    kve->kve_type != KVME_TYPE_VNODE &&
-		    kve->kve_type != KVME_TYPE_SWAP))
+		    kve->kve_type != KVME_TYPE_SWAP &&
+		    kve->kve_type != KVME_TYPE_PHYS))
 			continue;
 
 		ent = calloc(1, sizeof(*ent));



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502141712.t1EHCWn9064051>