Module Name: src
Committed By: dsl
Date: Wed Jan 1 18:57:16 UTC 2014
Modified Files:
src/sys/arch/alpha/alpha: core_machdep.c
src/sys/arch/amd64/amd64: netbsd32_machdep.c
src/sys/arch/arm/arm: core_machdep.c
src/sys/arch/arm/arm32: netbsd32_machdep.c
src/sys/arch/epoc32/stand/e32boot/include: elf.h
src/sys/arch/hppa/hppa: core_machdep.c
src/sys/arch/m68k/m68k: core_machdep.c
src/sys/arch/mips/mips: core_machdep.c netbsd32_machdep.c
src/sys/arch/powerpc/powerpc: core_machdep.c
src/sys/arch/sh3/sh3: core_machdep.c
src/sys/arch/sparc/sparc: core_machdep.c
src/sys/arch/sparc64/sparc64: core_machdep.c netbsd32_machdep.c
src/sys/arch/vax/vax: core_machdep.c
src/sys/arch/x86/x86: core_machdep.c
src/sys/compat/netbsd32: netbsd32.h
src/sys/kern: core_elf32.c core_netbsd.c kern_core.c
src/sys/sys: exec.h exec_elf.h signalvar.h
src/sys/uvm: uvm_coredump.c uvm_extern.h
Log Message:
Change the type of the 'cookie' that holds the state of the core dump file
from 'void *' to the actual type 'struct coredump_iostate *'.
In most of the code the contents of the structure are still unknown.
This just stops the wrong type of pointer being passed to the 'void *'
parameter.
I hope I've found everything, amd64 GENERIC and i386 GENERIC & ALL compile.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/alpha/alpha/core_machdep.c
cvs rdiff -u -r1.85 -r1.86 src/sys/arch/amd64/amd64/netbsd32_machdep.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/arm/core_machdep.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/arm32/netbsd32_machdep.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/epoc32/stand/e32boot/include/elf.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/hppa/hppa/core_machdep.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/m68k/m68k/core_machdep.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/mips/mips/core_machdep.c
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/mips/mips/netbsd32_machdep.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/powerpc/powerpc/core_machdep.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/sh3/sh3/core_machdep.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/sparc/sparc/core_machdep.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/sparc64/sparc64/core_machdep.c
cvs rdiff -u -r1.100 -r1.101 src/sys/arch/sparc64/sparc64/netbsd32_machdep.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/vax/vax/core_machdep.c
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/x86/x86/core_machdep.c
cvs rdiff -u -r1.96 -r1.97 src/sys/compat/netbsd32/netbsd32.h
cvs rdiff -u -r1.36 -r1.37 src/sys/kern/core_elf32.c
cvs rdiff -u -r1.18 -r1.19 src/sys/kern/core_netbsd.c
cvs rdiff -u -r1.20 -r1.21 src/sys/kern/kern_core.c
cvs rdiff -u -r1.142 -r1.143 src/sys/sys/exec.h
cvs rdiff -u -r1.132 -r1.133 src/sys/sys/exec_elf.h
cvs rdiff -u -r1.84 -r1.85 src/sys/sys/signalvar.h
cvs rdiff -u -r1.2 -r1.3 src/sys/uvm/uvm_coredump.c
cvs rdiff -u -r1.185 -r1.186 src/sys/uvm/uvm_extern.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/alpha/alpha/core_machdep.c
diff -u src/sys/arch/alpha/alpha/core_machdep.c:1.7 src/sys/arch/alpha/alpha/core_machdep.c:1.8
--- src/sys/arch/alpha/alpha/core_machdep.c:1.7 Mon Feb 6 02:14:10 2012
+++ src/sys/arch/alpha/alpha/core_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.7 2012/02/06 02:14:10 matt Exp $ */
+/* $NetBSD: core_machdep.c,v 1.8 2014/01/01 18:57:15 dsl Exp $ */
/*
* Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
@@ -29,7 +29,7 @@
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.7 2012/02/06 02:14:10 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.8 2014/01/01 18:57:15 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -51,7 +51,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* Dump the machine specific header information at the start of a core dump.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
int error;
struct md_coredump cpustate;
Index: src/sys/arch/amd64/amd64/netbsd32_machdep.c
diff -u src/sys/arch/amd64/amd64/netbsd32_machdep.c:1.85 src/sys/arch/amd64/amd64/netbsd32_machdep.c:1.86
--- src/sys/arch/amd64/amd64/netbsd32_machdep.c:1.85 Sun Dec 1 01:05:16 2013
+++ src/sys/arch/amd64/amd64/netbsd32_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_machdep.c,v 1.85 2013/12/01 01:05:16 christos Exp $ */
+/* $NetBSD: netbsd32_machdep.c,v 1.86 2014/01/01 18:57:15 dsl Exp $ */
/*
* Copyright (c) 2001 Wasabi Systems, Inc.
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.85 2013/12/01 01:05:16 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.86 2014/01/01 18:57:15 dsl Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -464,7 +464,8 @@ struct md_core32 {
};
int
-cpu_coredump32(struct lwp *l, void *iocookie, struct core32 *chdr)
+cpu_coredump32(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core32 *chdr)
{
struct md_core32 md_core;
struct coreseg cseg;
Index: src/sys/arch/arm/arm/core_machdep.c
diff -u src/sys/arch/arm/arm/core_machdep.c:1.2 src/sys/arch/arm/arm/core_machdep.c:1.3
--- src/sys/arch/arm/arm/core_machdep.c:1.2 Sat Aug 15 23:44:58 2009
+++ src/sys/arch/arm/arm/core_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.2 2009/08/15 23:44:58 matt Exp $ */
+/* $NetBSD: core_machdep.c,v 1.3 2014/01/01 18:57:15 dsl Exp $ */
/*
* Copyright (c) 1994-1998 Mark Brinicombe.
@@ -37,7 +37,7 @@
#include <sys/param.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.2 2009/08/15 23:44:58 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.3 2014/01/01 18:57:15 dsl Exp $");
#include <sys/core.h>
#include <sys/exec.h>
@@ -56,7 +56,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* Dump the machine specific segment at the start of a core dump.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
int error;
struct {
Index: src/sys/arch/arm/arm32/netbsd32_machdep.c
diff -u src/sys/arch/arm/arm32/netbsd32_machdep.c:1.1 src/sys/arch/arm/arm32/netbsd32_machdep.c:1.2
--- src/sys/arch/arm/arm32/netbsd32_machdep.c:1.1 Fri Aug 3 07:59:22 2012
+++ src/sys/arch/arm/arm32/netbsd32_machdep.c Wed Jan 1 18:57:15 2014
@@ -29,7 +29,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: netbsd32_machdep.c,v 1.1 2012/08/03 07:59:22 matt Exp $");
+__KERNEL_RCSID(1, "$NetBSD: netbsd32_machdep.c,v 1.2 2014/01/01 18:57:15 dsl Exp $");
#include <sys/param.h>
#include <sys/core.h>
@@ -48,7 +48,8 @@ const char machine32[] = MACHINE;
const char machine_arch32[] = MACHINE_ARCH;
int
-cpu_coredump32(struct lwp *l, void *iocookie, struct core32 *chdr)
+cpu_coredump32(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core32 *chdr)
{
return cpu_coredump(l, iocookie, (struct core *)chdr);
}
Index: src/sys/arch/epoc32/stand/e32boot/include/elf.h
diff -u src/sys/arch/epoc32/stand/e32boot/include/elf.h:1.1 src/sys/arch/epoc32/stand/e32boot/include/elf.h:1.2
--- src/sys/arch/epoc32/stand/e32boot/include/elf.h:1.1 Sun Apr 28 12:11:27 2013
+++ src/sys/arch/epoc32/stand/e32boot/include/elf.h Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: elf.h,v 1.1 2013/04/28 12:11:27 kiyohara Exp $ */
+/* $NetBSD: elf.h,v 1.2 2014/01/01 18:57:15 dsl Exp $ */
/*-
* Copyright (c) 1994 The NetBSD Foundation, Inc.
@@ -1196,6 +1196,7 @@ struct elf_args {
#endif
struct ps_strings;
+struct coredump_iostate;
#ifdef EXEC_ELF32
int exec_elf32_makecmds(struct lwp *, struct exec_package *);
@@ -1203,8 +1204,8 @@ int elf32_copyargs(struct lwp *, struct
struct ps_strings *, char **, void *);
int coredump_elf32(struct lwp *, void *);
-int coredump_writenote_elf32(struct proc *, void *, Elf32_Nhdr *,
- const char *, void *);
+int coredump_writenote_elf32(struct proc *, struct coredump_iostate *,
+ Elf32_Nhdr *, const char *, void *);
int elf32_check_header(Elf32_Ehdr *, int);
#endif
@@ -1215,8 +1216,8 @@ int elf64_copyargs(struct lwp *, struct
struct ps_strings *, char **, void *);
int coredump_elf64(struct lwp *, void *);
-int coredump_writenote_elf64(struct proc *, void *, Elf64_Nhdr *,
- const char *, void *);
+int coredump_writenote_elf64(struct proc *, struct coredump_iostate *,
+ Elf64_Nhdr *, const char *, void *);
int elf64_check_header(Elf64_Ehdr *, int);
#endif
Index: src/sys/arch/hppa/hppa/core_machdep.c
diff -u src/sys/arch/hppa/hppa/core_machdep.c:1.4 src/sys/arch/hppa/hppa/core_machdep.c:1.5
--- src/sys/arch/hppa/hppa/core_machdep.c:1.4 Sat Nov 21 15:36:33 2009
+++ src/sys/arch/hppa/hppa/core_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.4 2009/11/21 15:36:33 rmind Exp $ */
+/* $NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:15 dsl Exp $ */
/* $OpenBSD: vm_machdep.c,v 1.25 2001/09/19 20:50:56 mickey Exp $ */
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.4 2009/11/21 15:36:33 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:15 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -56,7 +56,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* Dump the machine specific header information at the start of a core dump.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *core)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *core)
{
struct md_coredump md_core;
struct coreseg cseg;
Index: src/sys/arch/m68k/m68k/core_machdep.c
diff -u src/sys/arch/m68k/m68k/core_machdep.c:1.4 src/sys/arch/m68k/m68k/core_machdep.c:1.5
--- src/sys/arch/m68k/m68k/core_machdep.c:1.4 Tue Feb 8 20:20:16 2011
+++ src/sys/arch/m68k/m68k/core_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.4 2011/02/08 20:20:16 rmind Exp $ */
+/* $NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:15 dsl Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.4 2011/02/08 20:20:16 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:15 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -68,7 +68,8 @@ struct md_core {
};
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
struct md_core md_core;
struct coreseg cseg;
Index: src/sys/arch/mips/mips/core_machdep.c
diff -u src/sys/arch/mips/mips/core_machdep.c:1.6 src/sys/arch/mips/mips/core_machdep.c:1.7
--- src/sys/arch/mips/mips/core_machdep.c:1.6 Mon Jun 13 21:32:42 2011
+++ src/sys/arch/mips/mips/core_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.6 2011/06/13 21:32:42 matt Exp $ */
+/* $NetBSD: core_machdep.c,v 1.7 2014/01/01 18:57:15 dsl Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.6 2011/06/13 21:32:42 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.7 2014/01/01 18:57:15 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -64,7 +64,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* Dump the machine specific segment at the start of a core dump.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
int error;
struct coreseg cseg;
Index: src/sys/arch/mips/mips/netbsd32_machdep.c
diff -u src/sys/arch/mips/mips/netbsd32_machdep.c:1.9 src/sys/arch/mips/mips/netbsd32_machdep.c:1.10
--- src/sys/arch/mips/mips/netbsd32_machdep.c:1.9 Mon May 21 14:15:18 2012
+++ src/sys/arch/mips/mips/netbsd32_machdep.c Wed Jan 1 18:57:15 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_machdep.c,v 1.9 2012/05/21 14:15:18 martin Exp $ */
+/* $NetBSD: netbsd32_machdep.c,v 1.10 2014/01/01 18:57:15 dsl Exp $ */
/*-
* Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.9 2012/05/21 14:15:18 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.10 2014/01/01 18:57:15 dsl Exp $");
#include "opt_compat_netbsd.h"
#include "opt_coredump.h"
@@ -301,7 +301,8 @@ cpu_setmcontext32(struct lwp *l, const m
* Dump the machine specific segment at the start of a core dump.
*/
int
-cpu_coredump32(struct lwp *l, void *iocookie, struct core32 *chdr)
+cpu_coredump32(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core32 *chdr)
{
int error;
struct coreseg cseg;
Index: src/sys/arch/powerpc/powerpc/core_machdep.c
diff -u src/sys/arch/powerpc/powerpc/core_machdep.c:1.8 src/sys/arch/powerpc/powerpc/core_machdep.c:1.9
--- src/sys/arch/powerpc/powerpc/core_machdep.c:1.8 Mon Jun 13 21:32:43 2011
+++ src/sys/arch/powerpc/powerpc/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.8 2011/06/13 21:32:43 matt Exp $ */
+/* $NetBSD: core_machdep.c,v 1.9 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.8 2011/06/13 21:32:43 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.9 2014/01/01 18:57:16 dsl Exp $");
#ifdef _KERNEL_OPT
#include "opt_altivec.h"
@@ -60,7 +60,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* Write the machine-dependent part of a core dump.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
struct coreseg cseg;
struct md_coredump md_core;
Index: src/sys/arch/sh3/sh3/core_machdep.c
diff -u src/sys/arch/sh3/sh3/core_machdep.c:1.4 src/sys/arch/sh3/sh3/core_machdep.c:1.5
--- src/sys/arch/sh3/sh3/core_machdep.c:1.4 Thu Jan 27 00:19:27 2011
+++ src/sys/arch/sh3/sh3/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.4 2011/01/27 00:19:27 uwe Exp $ */
+/* $NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:16 dsl Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc. All rights reserved.
@@ -81,7 +81,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.4 2011/01/27 00:19:27 uwe Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -101,7 +101,8 @@ struct md_core {
};
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
struct md_core md_core;
struct coreseg cseg;
Index: src/sys/arch/sparc/sparc/core_machdep.c
diff -u src/sys/arch/sparc/sparc/core_machdep.c:1.5 src/sys/arch/sparc/sparc/core_machdep.c:1.6
--- src/sys/arch/sparc/sparc/core_machdep.c:1.5 Fri Jan 14 02:06:31 2011
+++ src/sys/arch/sparc/sparc/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.5 2011/01/14 02:06:31 rmind Exp $ */
+/* $NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1996
@@ -49,7 +49,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2011/01/14 02:06:31 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -76,7 +76,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* cpu_coredump is called to write a core dump header.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
int error;
struct md_coredump md_core;
Index: src/sys/arch/sparc64/sparc64/core_machdep.c
diff -u src/sys/arch/sparc64/sparc64/core_machdep.c:1.5 src/sys/arch/sparc64/sparc64/core_machdep.c:1.6
--- src/sys/arch/sparc64/sparc64/core_machdep.c:1.5 Fri Jul 1 18:49:24 2011
+++ src/sys/arch/sparc64/sparc64/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.5 2011/07/01 18:49:24 dyoung Exp $ */
+/* $NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1996-2002 Eduardo Horvath. All rights reserved.
@@ -50,7 +50,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2011/07/01 18:49:24 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -74,7 +74,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* cpu_coredump is called to write a core dump header.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
int error;
struct md_coredump md_core;
Index: src/sys/arch/sparc64/sparc64/netbsd32_machdep.c
diff -u src/sys/arch/sparc64/sparc64/netbsd32_machdep.c:1.100 src/sys/arch/sparc64/sparc64/netbsd32_machdep.c:1.101
--- src/sys/arch/sparc64/sparc64/netbsd32_machdep.c:1.100 Sat Sep 14 21:09:56 2013
+++ src/sys/arch/sparc64/sparc64/netbsd32_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32_machdep.c,v 1.100 2013/09/14 21:09:56 martin Exp $ */
+/* $NetBSD: netbsd32_machdep.c,v 1.101 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.100 2013/09/14 21:09:56 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_machdep.c,v 1.101 2014/01/01 18:57:16 dsl Exp $");
#ifdef _KERNEL_OPT
#include "opt_compat_netbsd.h"
@@ -679,7 +679,8 @@ netbsd32_process_write_fpregs(struct lwp
* 32-bit version of cpu_coredump.
*/
int
-cpu_coredump32(struct lwp *l, void *iocookie, struct core32 *chdr)
+cpu_coredump32(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core32 *chdr)
{
int i, error;
struct md_coredump32 md_core;
Index: src/sys/arch/vax/vax/core_machdep.c
diff -u src/sys/arch/vax/vax/core_machdep.c:1.5 src/sys/arch/vax/vax/core_machdep.c:1.6
--- src/sys/arch/vax/vax/core_machdep.c:1.5 Sun Jul 3 02:18:21 2011
+++ src/sys/arch/vax/vax/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.5 2011/07/03 02:18:21 matt Exp $ */
+/* $NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.5 2011/07/03 02:18:21 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.6 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -50,7 +50,8 @@ __KERNEL_RCSID(0, "$NetBSD: core_machdep
* way to do this, but good for my purposes so far.
*/
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
struct md_coredump md_core;
struct coreseg cseg;
Index: src/sys/arch/x86/x86/core_machdep.c
diff -u src/sys/arch/x86/x86/core_machdep.c:1.3 src/sys/arch/x86/x86/core_machdep.c:1.4
--- src/sys/arch/x86/x86/core_machdep.c:1.3 Sat Nov 21 03:11:01 2009
+++ src/sys/arch/x86/x86/core_machdep.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_machdep.c,v 1.3 2009/11/21 03:11:01 rmind Exp $ */
+/* $NetBSD: core_machdep.c,v 1.4 2014/01/01 18:57:16 dsl Exp $ */
/*-
* Copyright (c) 1982, 1986 The Regents of the University of California.
@@ -80,7 +80,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.3 2009/11/21 03:11:01 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_machdep.c,v 1.4 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -110,7 +110,8 @@ struct md_core {
};
int
-cpu_coredump(struct lwp *l, void *iocookie, struct core *chdr)
+cpu_coredump(struct lwp *l, struct coredump_iostate *iocookie,
+ struct core *chdr)
{
struct md_core md_core;
struct coreseg cseg;
Index: src/sys/compat/netbsd32/netbsd32.h
diff -u src/sys/compat/netbsd32/netbsd32.h:1.96 src/sys/compat/netbsd32/netbsd32.h:1.97
--- src/sys/compat/netbsd32/netbsd32.h:1.96 Fri Oct 12 19:45:47 2012
+++ src/sys/compat/netbsd32/netbsd32.h Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netbsd32.h,v 1.96 2012/10/12 19:45:47 christos Exp $ */
+/* $NetBSD: netbsd32.h,v 1.97 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1998, 2001, 2008 Matthew R. Green
@@ -993,7 +993,8 @@ int netbsd32_kevent(struct lwp *, void *
#define SCARG_P32(uap, name) NETBSD32PTR64(SCARG(uap, name))
-int coredump_netbsd32(struct lwp *, void *);
+struct coredump_iostate;
+int coredump_netbsd32(struct lwp *, struct coredump_iostate *);
/*
* random other stuff
Index: src/sys/kern/core_elf32.c
diff -u src/sys/kern/core_elf32.c:1.36 src/sys/kern/core_elf32.c:1.37
--- src/sys/kern/core_elf32.c:1.36 Fri Jan 27 19:48:40 2012
+++ src/sys/kern/core_elf32.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_elf32.c,v 1.36 2012/01/27 19:48:40 para Exp $ */
+/* $NetBSD: core_elf32.c,v 1.37 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 2001 Wasabi Systems, Inc.
@@ -40,7 +40,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: core_elf32.c,v 1.36 2012/01/27 19:48:40 para Exp $");
+__KERNEL_RCSID(1, "$NetBSD: core_elf32.c,v 1.37 2014/01/01 18:57:16 dsl Exp $");
#ifdef _KERNEL_OPT
#include "opt_coredump.h"
@@ -70,21 +70,21 @@ struct countsegs_state {
int npsections;
};
-static int ELFNAMEEND(coredump_countsegs)(struct proc *, void *,
- struct uvm_coredump_state *);
+static int ELFNAMEEND(coredump_countsegs)(struct proc *,
+ struct coredump_iostate *, struct uvm_coredump_state *);
struct writesegs_state {
Elf_Phdr *psections;
off_t secoff;
};
-static int ELFNAMEEND(coredump_writeseghdrs)(struct proc *, void *,
- struct uvm_coredump_state *);
+static int ELFNAMEEND(coredump_writeseghdrs)(struct proc *,
+ struct coredump_iostate *, struct uvm_coredump_state *);
-static int ELFNAMEEND(coredump_notes)(struct proc *, struct lwp *, void *,
- size_t *);
-static int ELFNAMEEND(coredump_note)(struct proc *, struct lwp *, void *,
- size_t *);
+static int ELFNAMEEND(coredump_notes)(struct proc *, struct lwp *,
+ struct coredump_iostate *, size_t *);
+static int ELFNAMEEND(coredump_note)(struct proc *, struct lwp *,
+ struct coredump_iostate *, size_t *);
#define ELFROUNDSIZE 4 /* XXX Should it be sizeof(Elf_Word)? */
#define elfround(x) roundup((x), ELFROUNDSIZE)
@@ -99,7 +99,7 @@ static int ELFNAMEEND(coredump_note)(str
#define elf_fpreg CONCAT(process_fpreg, ELFSIZE)
int
-ELFNAMEEND(coredump)(struct lwp *l, void *cookie)
+ELFNAMEEND(coredump)(struct lwp *l, struct coredump_iostate *cookie)
{
struct proc *p;
Elf_Ehdr ehdr;
@@ -256,8 +256,8 @@ ELFNAMEEND(coredump)(struct lwp *l, void
}
static int
-ELFNAMEEND(coredump_countsegs)(struct proc *p, void *iocookie,
- struct uvm_coredump_state *us)
+ELFNAMEEND(coredump_countsegs)(struct proc *p,
+ struct coredump_iostate *iocookie, struct uvm_coredump_state *us)
{
struct countsegs_state *cs = us->cookie;
@@ -266,8 +266,8 @@ ELFNAMEEND(coredump_countsegs)(struct pr
}
static int
-ELFNAMEEND(coredump_writeseghdrs)(struct proc *p, void *iocookie,
- struct uvm_coredump_state *us)
+ELFNAMEEND(coredump_writeseghdrs)(struct proc *p,
+ struct coredump_iostate *iocookie, struct uvm_coredump_state *us)
{
struct writesegs_state *ws = us->cookie;
Elf_Phdr phdr;
@@ -322,7 +322,7 @@ ELFNAMEEND(coredump_writeseghdrs)(struct
static int
ELFNAMEEND(coredump_notes)(struct proc *p, struct lwp *l,
- void *iocookie, size_t *sizep)
+ struct coredump_iostate *iocookie, size_t *sizep)
{
struct netbsd_elfcore_procinfo cpi;
Elf_Nhdr nhdr;
@@ -420,8 +420,8 @@ ELFNAMEEND(coredump_notes)(struct proc *
}
static int
-ELFNAMEEND(coredump_note)(struct proc *p, struct lwp *l, void *iocookie,
- size_t *sizep)
+ELFNAMEEND(coredump_note)(struct proc *p, struct lwp *l,
+ struct coredump_iostate *iocookie, size_t *sizep)
{
Elf_Nhdr nhdr;
int size, notesize, error;
@@ -486,8 +486,8 @@ ELFNAMEEND(coredump_note)(struct proc *p
}
int
-ELFNAMEEND(coredump_writenote)(struct proc *p, void *cookie, Elf_Nhdr *nhdr,
- const char *name, void *data)
+ELFNAMEEND(coredump_writenote)(struct proc *p, struct coredump_iostate *cookie,
+ Elf_Nhdr *nhdr, const char *name, void *data)
{
int error;
Index: src/sys/kern/core_netbsd.c
diff -u src/sys/kern/core_netbsd.c:1.18 src/sys/kern/core_netbsd.c:1.19
--- src/sys/kern/core_netbsd.c:1.18 Wed Feb 2 20:10:09 2011
+++ src/sys/kern/core_netbsd.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: core_netbsd.c,v 1.18 2011/02/02 20:10:09 chuck Exp $ */
+/* $NetBSD: core_netbsd.c,v 1.19 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: core_netbsd.c,v 1.18 2011/02/02 20:10:09 chuck Exp $");
+__KERNEL_RCSID(0, "$NetBSD: core_netbsd.c,v 1.19 2014/01/01 18:57:16 dsl Exp $");
#ifdef _KERNEL_OPT
#include "opt_coredump.h"
@@ -73,13 +73,13 @@ struct coredump_state {
struct CORENAME(core) core;
};
-static int CORENAME(coredump_countsegs_netbsd)(struct proc *, void *,
- struct uvm_coredump_state *);
-static int CORENAME(coredump_writesegs_netbsd)(struct proc *, void *,
- struct uvm_coredump_state *);
+static int CORENAME(coredump_countsegs_netbsd)(struct proc *,
+ struct coredump_iostate *, struct uvm_coredump_state *);
+static int CORENAME(coredump_writesegs_netbsd)(struct proc *,
+ struct coredump_iostate *, struct uvm_coredump_state *);
int
-CORENAME(coredump_netbsd)(struct lwp *l, void *iocookie)
+CORENAME(coredump_netbsd)(struct lwp *l, struct coredump_iostate *iocookie)
{
struct coredump_state cs;
struct proc *p = l->l_proc;
@@ -121,8 +121,8 @@ CORENAME(coredump_netbsd)(struct lwp *l,
}
static int
-CORENAME(coredump_countsegs_netbsd)(struct proc *p, void *iocookie,
- struct uvm_coredump_state *us)
+CORENAME(coredump_countsegs_netbsd)(struct proc *p,
+ struct coredump_iostate *iocookie, struct uvm_coredump_state *us)
{
struct coredump_state *cs = us->cookie;
@@ -133,8 +133,8 @@ CORENAME(coredump_countsegs_netbsd)(stru
}
static int
-CORENAME(coredump_writesegs_netbsd)(struct proc *p, void *iocookie,
- struct uvm_coredump_state *us)
+CORENAME(coredump_writesegs_netbsd)(struct proc *p,
+ struct coredump_iostate *iocookie, struct uvm_coredump_state *us)
{
struct coredump_state *cs = us->cookie;
struct CORENAME(coreseg) cseg;
@@ -167,7 +167,7 @@ CORENAME(coredump_writesegs_netbsd)(stru
#else /* COREDUMP */
int
-CORENAME(coredump_netbsd)(struct lwp *l, void *cookie)
+CORENAME(coredump_netbsd)(struct lwp *l, struct coredump_iostate *cookie)
{
return ENOSYS;
Index: src/sys/kern/kern_core.c
diff -u src/sys/kern/kern_core.c:1.20 src/sys/kern/kern_core.c:1.21
--- src/sys/kern/kern_core.c:1.20 Sat Sep 24 22:53:50 2011
+++ src/sys/kern/kern_core.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: kern_core.c,v 1.20 2011/09/24 22:53:50 christos Exp $ */
+/* $NetBSD: kern_core.c,v 1.21 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1982, 1986, 1989, 1991, 1993
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_core.c,v 1.20 2011/09/24 22:53:50 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_core.c,v 1.21 2014/01/01 18:57:16 dsl Exp $");
#include <sys/param.h>
#include <sys/vnode.h>
@@ -303,7 +303,8 @@ coredump_buildname(struct proc *p, char
}
int
-coredump_write(void *cookie, enum uio_seg segflg, const void *data, size_t len)
+coredump_write(struct coredump_iostate *cookie, enum uio_seg segflg,
+ const void *data, size_t len)
{
struct coredump_iostate *io = cookie;
int error;
Index: src/sys/sys/exec.h
diff -u src/sys/sys/exec.h:1.142 src/sys/sys/exec.h:1.143
--- src/sys/sys/exec.h:1.142 Thu Nov 14 12:07:11 2013
+++ src/sys/sys/exec.h Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: exec.h,v 1.142 2013/11/14 12:07:11 martin Exp $ */
+/* $NetBSD: exec.h,v 1.143 2014/01/01 18:57:16 dsl Exp $ */
/*-
* Copyright (c) 1992, 1993
@@ -143,6 +143,7 @@ struct lwp;
struct proc;
struct exec_package;
struct vnode;
+struct coredump_iostate;
typedef int (*exec_makecmds_fcn)(struct lwp *, struct exec_package *);
@@ -164,7 +165,7 @@ struct execsw {
/* Set registers before execution */
void (*es_setregs)(struct lwp *, struct exec_package *, vaddr_t);
/* Dump core */
- int (*es_coredump)(struct lwp *, void *);
+ int (*es_coredump)(struct lwp *, struct coredump_iostate *);
int (*es_setup_stack)(struct lwp *, struct exec_package *);
};
@@ -272,7 +273,8 @@ int exec_read_from (struct lwp *, struc
void *, size_t);
int exec_setup_stack (struct lwp *, struct exec_package *);
-int coredump_write (void *, enum uio_seg, const void *, size_t);
+int coredump_write (struct coredump_iostate *, enum uio_seg,
+ const void *, size_t);
void exec_free_emul_arg (struct exec_package *);
@@ -282,8 +284,8 @@ void exec_free_emul_arg (struct exec_pac
*/
struct core;
struct core32;
-int cpu_coredump(struct lwp *, void *, struct core *);
-int cpu_coredump32(struct lwp *, void *, struct core32 *);
+int cpu_coredump(struct lwp *, struct coredump_iostate *, struct core *);
+int cpu_coredump32(struct lwp *, struct coredump_iostate *, struct core32 *);
int exec_add(struct execsw *, int);
int exec_remove(struct execsw *, int);
Index: src/sys/sys/exec_elf.h
diff -u src/sys/sys/exec_elf.h:1.132 src/sys/sys/exec_elf.h:1.133
--- src/sys/sys/exec_elf.h:1.132 Tue Nov 5 14:26:19 2013
+++ src/sys/sys/exec_elf.h Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: exec_elf.h,v 1.132 2013/11/05 14:26:19 martin Exp $ */
+/* $NetBSD: exec_elf.h,v 1.133 2014/01/01 18:57:16 dsl Exp $ */
/*-
* Copyright (c) 1994 The NetBSD Foundation, Inc.
@@ -1248,15 +1248,16 @@ struct elf_args {
#endif
struct ps_strings;
+struct coredump_iostate;
#ifdef EXEC_ELF32
int exec_elf32_makecmds(struct lwp *, struct exec_package *);
int elf32_copyargs(struct lwp *, struct exec_package *,
struct ps_strings *, char **, void *);
-int coredump_elf32(struct lwp *, void *);
-int coredump_writenote_elf32(struct proc *, void *, Elf32_Nhdr *,
- const char *, void *);
+int coredump_elf32(struct lwp *, struct coredump_iostate *);
+int coredump_writenote_elf32(struct proc *, struct coredump_iostate *,
+ Elf32_Nhdr *, const char *, void *);
int elf32_check_header(Elf32_Ehdr *, int);
#endif
@@ -1266,9 +1267,9 @@ int exec_elf64_makecmds(struct lwp *, st
int elf64_copyargs(struct lwp *, struct exec_package *,
struct ps_strings *, char **, void *);
-int coredump_elf64(struct lwp *, void *);
-int coredump_writenote_elf64(struct proc *, void *, Elf64_Nhdr *,
- const char *, void *);
+int coredump_elf64(struct lwp *, struct coredump_iostate *);
+int coredump_writenote_elf64(struct proc *, struct coredump_iostate *,
+ Elf64_Nhdr *, const char *, void *);
int elf64_check_header(Elf64_Ehdr *, int);
#endif
Index: src/sys/sys/signalvar.h
diff -u src/sys/sys/signalvar.h:1.84 src/sys/sys/signalvar.h:1.85
--- src/sys/sys/signalvar.h:1.84 Fri Nov 22 21:04:11 2013
+++ src/sys/sys/signalvar.h Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: signalvar.h,v 1.84 2013/11/22 21:04:11 christos Exp $ */
+/* $NetBSD: signalvar.h,v 1.85 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -114,11 +114,12 @@ struct sigctx {
extern sigset_t contsigmask, sigcantmask;
struct vnode;
+struct coredump_iostate;
/*
* Machine-independent functions:
*/
-int coredump_netbsd(struct lwp *, void *);
+int coredump_netbsd(struct lwp *, struct coredump_iostate *);
void execsigs(struct proc *);
int issignal(struct lwp *);
void pgsignal(struct pgrp *, int, int);
Index: src/sys/uvm/uvm_coredump.c
diff -u src/sys/uvm/uvm_coredump.c:1.2 src/sys/uvm/uvm_coredump.c:1.3
--- src/sys/uvm/uvm_coredump.c:1.2 Wed Feb 2 15:25:27 2011
+++ src/sys/uvm/uvm_coredump.c Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_coredump.c,v 1.2 2011/02/02 15:25:27 chuck Exp $ */
+/* $NetBSD: uvm_coredump.c,v 1.3 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -62,7 +62,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvm_coredump.c,v 1.2 2011/02/02 15:25:27 chuck Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_coredump.c,v 1.3 2014/01/01 18:57:16 dsl Exp $");
/*
* uvm_coredump.c: glue functions for coredump
@@ -80,8 +80,9 @@ __KERNEL_RCSID(0, "$NetBSD: uvm_coredump
*/
int
-uvm_coredump_walkmap(struct proc *p, void *iocookie,
- int (*func)(struct proc *, void *, struct uvm_coredump_state *),
+uvm_coredump_walkmap(struct proc *p, struct coredump_iostate *iocookie,
+ int (*func)(struct proc *, struct coredump_iostate *,
+ struct uvm_coredump_state *),
void *cookie)
{
struct uvm_coredump_state state;
Index: src/sys/uvm/uvm_extern.h
diff -u src/sys/uvm/uvm_extern.h:1.185 src/sys/uvm/uvm_extern.h:1.186
--- src/sys/uvm/uvm_extern.h:1.185 Thu Nov 14 12:07:11 2013
+++ src/sys/uvm/uvm_extern.h Wed Jan 1 18:57:16 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: uvm_extern.h,v 1.185 2013/11/14 12:07:11 martin Exp $ */
+/* $NetBSD: uvm_extern.h,v 1.186 2014/01/01 18:57:16 dsl Exp $ */
/*
* Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -590,9 +590,10 @@ void uvm_chgkprot(void *, size_t, int)
void uvm_proc_fork(struct proc *, struct proc *, bool);
void uvm_lwp_fork(struct lwp *, struct lwp *,
void *, size_t, void (*)(void *), void *);
+struct coredump_iostate;
int uvm_coredump_walkmap(struct proc *,
- void *,
- int (*)(struct proc *, void *,
+ struct coredump_iostate *,
+ int (*)(struct proc *, struct coredump_iostate *,
struct uvm_coredump_state *), void *);
void uvm_proc_exit(struct proc *);
void uvm_lwp_exit(struct lwp *);