Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/uvm When core dumping a process, don't dump maps backed ...



details:   https://anonhg.NetBSD.org/src/rev/69352fa97966
branches:  trunk
changeset: 526976:69352fa97966
user:      matt <matt%NetBSD.org@localhost>
date:      Wed May 15 06:57:49 2002 +0000

description:
When core dumping a process, don't dump maps backed up by the device pager.
(move the pagerops externs to uvm_object.h and out the C files).

diffstat:

 sys/uvm/uvm_glue.c   |   8 ++++++--
 sys/uvm/uvm_object.h |   5 ++++-
 sys/uvm/uvm_pager.c  |  10 +++-------
 3 files changed, 13 insertions(+), 10 deletions(-)

diffs (79 lines):

diff -r d8aa410f894f -r 69352fa97966 sys/uvm/uvm_glue.c
--- a/sys/uvm/uvm_glue.c        Wed May 15 06:52:54 2002 +0000
+++ b/sys/uvm/uvm_glue.c        Wed May 15 06:57:49 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: uvm_glue.c,v 1.57 2001/12/31 22:34:39 chs Exp $        */
+/*     $NetBSD: uvm_glue.c,v 1.58 2002/05/15 06:57:49 matt Exp $       */
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_glue.c,v 1.57 2001/12/31 22:34:39 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_glue.c,v 1.58 2002/05/15 06:57:49 matt Exp $");
 
 #include "opt_kgdb.h"
 #include "opt_sysv.h"
@@ -674,6 +674,10 @@
                if ((entry->protection & VM_PROT_WRITE) == 0)
                        state.flags |= UVM_COREDUMP_NODUMP;
 
+               if (entry->object.uvm_obj != NULL &&
+                   entry->object.uvm_obj->pgops == &uvm_deviceops)
+                       state.flags |= UVM_COREDUMP_NODUMP;
+
                error = (*func)(p, vp, cred, &state);
                if (error)
                        return (error);
diff -r d8aa410f894f -r 69352fa97966 sys/uvm/uvm_object.h
--- a/sys/uvm/uvm_object.h      Wed May 15 06:52:54 2002 +0000
+++ b/sys/uvm/uvm_object.h      Wed May 15 06:57:49 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: uvm_object.h,v 1.14 2001/10/30 15:32:05 thorpej Exp $  */
+/*     $NetBSD: uvm_object.h,v 1.15 2002/05/15 06:57:50 matt Exp $     */
 
 /*
  *
@@ -73,6 +73,9 @@
 #ifdef _KERNEL
 
 extern struct uvm_pagerops uvm_vnodeops;
+extern struct uvm_pagerops uvm_deviceops;
+extern struct uvm_pagerops ubc_pager;
+extern struct uvm_pagerops aobj_pager;
 
 #define        UVM_OBJ_IS_VNODE(uobj)                                          \
        ((uobj)->pgops == &uvm_vnodeops)
diff -r d8aa410f894f -r 69352fa97966 sys/uvm/uvm_pager.c
--- a/sys/uvm/uvm_pager.c       Wed May 15 06:52:54 2002 +0000
+++ b/sys/uvm/uvm_pager.c       Wed May 15 06:57:49 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: uvm_pager.c,v 1.56 2002/05/09 07:14:38 enami Exp $     */
+/*     $NetBSD: uvm_pager.c,v 1.57 2002/05/15 06:57:50 matt Exp $      */
 
 /*
  *
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_pager.c,v 1.56 2002/05/09 07:14:38 enami Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_pager.c,v 1.57 2002/05/15 06:57:50 matt Exp $");
 
 #include "opt_uvmhist.h"
 
@@ -59,11 +59,7 @@
  * list of uvm pagers in the system
  */
 
-extern struct uvm_pagerops uvm_deviceops;
-extern struct uvm_pagerops uvm_vnodeops;
-extern struct uvm_pagerops ubc_pager;
-
-struct uvm_pagerops *uvmpagerops[] = {
+struct uvm_pagerops * const uvmpagerops[] = {
        &aobj_pager,
        &uvm_deviceops,
        &uvm_vnodeops,



Home | Main Index | Thread Index | Old Index