Change sendfile() to use the new m_ext callback scheme for cleaning up after
[dragonfly.git] / sys / sys / ckpt.h
CommitLineData
5a5c6af6
MD
1/*-
2 * Copyright (c) 2003 Kip Macy All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 *
13 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 * SUCH DAMAGE.
24 *
55e44363 25 * $DragonFly: src/sys/sys/ckpt.h,v 1.4 2003/11/10 18:09:10 dillon Exp $
731100e5
MD
26 */
27#ifndef _SYS_CKPT_H_
28#define _SYS_CKPT_H_
29
55e44363
MD
30#define CKPT_MAXTHREADS 256
31
731100e5 32struct ckpt_filehdr {
351b7b6d
MD
33 int cfh_magic; /* XXX implement */
34 int cfh_nfiles;
35 int cfh_reserved[8];
731100e5
MD
36};
37
5a5c6af6
MD
38struct ckpt_vminfo {
39 segsz_t cvm_dsize;
40 segsz_t cvm_tsize;
41 segsz_t cvm_reserved1[4];
42 caddr_t cvm_daddr;
43 caddr_t cvm_taddr;
44 caddr_t cvm_reserved2[4];
45};
731100e5
MD
46
47struct ckpt_fileinfo {
351b7b6d
MD
48 int cfi_index;
49 u_int cfi_flags; /* saved f_flag */
50 off_t cfi_offset; /* saved f_offset */
51 fhandle_t cfi_fh;
52 int cfi_reserved[8];
731100e5
MD
53};
54
55struct ckpt_siginfo {
351b7b6d
MD
56 int csi_ckptpisz;
57 struct procsig csi_procsig;
58 struct sigacts csi_sigacts;
59 struct itimerval csi_itimerval;
60 int csi_sigparent;
61 int csi_reserved[8];
731100e5
MD
62};
63
64struct vn_hdr {
351b7b6d
MD
65 fhandle_t vnh_fh;
66 Elf_Phdr vnh_phdr;
67 int vnh_reserved[8];
731100e5
MD
68};
69
70#ifdef _KERNEL
71#ifdef DEBUG
72#define TRACE_ENTER \
73printf("entering %s at %s:%d\n", __FUNCTION__, __FILE__, __LINE__)
74#define TRACE_EXIT \
75printf("exiting %s at %s:%d\n", __FUNCTION__, __FILE__, __LINE__)
76#define TRACE_ERR \
77printf("failure encountered in %s at %s:%d\n", __FUNCTION__, __FILE__, __LINE__)
5a5c6af6 78#define PRINTF(args) printf args
731100e5
MD
79#else
80#define TRACE_ENTER
81#define TRACE_EXIT
82#define TRACE_ERR
5a5c6af6 83#define PRINTF(args)
731100e5
MD
84#endif
85#endif
86
87#endif