Deleted Added
full compact
pcb.h (150648) pcb.h (168035)
1/*-
2 * Copyright (c) 2003 Peter Wemm.
3 * Copyright (c) 1990 The Regents of the University of California.
4 * All rights reserved.
5 *
6 * This code is derived from software contributed to Berkeley by
7 * William Jolitz.
8 *

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * from: @(#)pcb.h 5.10 (Berkeley) 5/12/91
1/*-
2 * Copyright (c) 2003 Peter Wemm.
3 * Copyright (c) 1990 The Regents of the University of California.
4 * All rights reserved.
5 *
6 * This code is derived from software contributed to Berkeley by
7 * William Jolitz.
8 *

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * from: @(#)pcb.h 5.10 (Berkeley) 5/12/91
34 * $FreeBSD: head/sys/amd64/include/pcb.h 150648 2005-09-27 21:11:35Z peter $
34 * $FreeBSD: head/sys/amd64/include/pcb.h 168035 2007-03-30 00:06:21Z jkim $
35 */
36
37#ifndef _AMD64_PCB_H_
38#define _AMD64_PCB_H_
39
40/*
41 * AMD64 process control block
42 */
43#include <machine/fpu.h>
35 */
36
37#ifndef _AMD64_PCB_H_
38#define _AMD64_PCB_H_
39
40/*
41 * AMD64 process control block
42 */
43#include <machine/fpu.h>
44#include <machine/segments.h>
44
45struct pcb {
46 register_t pcb_cr3;
47 register_t pcb_r15;
48 register_t pcb_r14;
49 register_t pcb_r13;
50 register_t pcb_r12;
51 register_t pcb_rbp;

--- 16 unchanged lines hidden (view full) ---

68 struct savefpu pcb_save;
69 u_long pcb_flags;
70#define PCB_DBREGS 0x02 /* process using debug registers */
71#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */
72#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */
73#define PCB_FULLCTX 0x80 /* full context restore on sysret */
74
75 caddr_t pcb_onfault; /* copyin/out fault recovery */
45
46struct pcb {
47 register_t pcb_cr3;
48 register_t pcb_r15;
49 register_t pcb_r14;
50 register_t pcb_r13;
51 register_t pcb_r12;
52 register_t pcb_rbp;

--- 16 unchanged lines hidden (view full) ---

69 struct savefpu pcb_save;
70 u_long pcb_flags;
71#define PCB_DBREGS 0x02 /* process using debug registers */
72#define PCB_FPUINITDONE 0x08 /* fpu state is initialized */
73#define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */
74#define PCB_FULLCTX 0x80 /* full context restore on sysret */
75
76 caddr_t pcb_onfault; /* copyin/out fault recovery */
77
78 /* 32-bit segment descriptor */
79 struct user_segment_descriptor *pcb_gs32p;
80 struct user_segment_descriptor pcb_gs32sd;
76};
77
78#ifdef _KERNEL
79struct trapframe;
80
81void makectx(struct trapframe *, struct pcb *);
82void savectx(struct pcb *);
83#endif
84
85#endif /* _AMD64_PCB_H_ */
81};
82
83#ifdef _KERNEL
84struct trapframe;
85
86void makectx(struct trapframe *, struct pcb *);
87void savectx(struct pcb *);
88#endif
89
90#endif /* _AMD64_PCB_H_ */