finally got ring ptrs right, hope error processing didn't break again!
[unix-history] / usr / src / sys / i386 / include / pcb.h
CommitLineData
4bd1c0bf
WN
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * %sccs.include.noredist.c%
9 *
10 * @(#)pcb.h 5.1 (Berkeley) %G%
11 */
12
2850d516
BJ
13/*
14 * Intel 386 process control block
15 */
16#include "tss.h"
17#include "fpu.h"
18
19struct pcb {
20 struct i386tss pcbtss;
21#define pcb_ksp pcbtss.tss_esp0
22#define pcb_ptd pcbtss.tss_cr3
23#define pcb_pc pcbtss.tss_eip
24#define pcb_psl pcbtss.tss_eflags
25#define pcb_usp pcbtss.tss_esp
26#define pcb_fp pcbtss.tss_ebp
27/*
28 * Software pcb (extension)
29 */
4bd1c0bf
WN
30 int pcb_fpsav;
31#define FP_NEEDSAVE 0x1 /* need save on next context switch */
32#define FP_NEEDRESTORE 0x2 /* need restore on next DNA fault */
2850d516
BJ
33 struct save87 pcb_savefpu;
34 struct pte *pcb_p0br;
35 struct pte *pcb_p1br;
36 int pcb_p0lr;
37 int pcb_p1lr;
38 int pcb_szpt; /* number of pages of user page table */
39 int pcb_cmap2;
40 int *pcb_sswap;
41 long pcb_sigc[5]; /* sigcode actually 19 bytes */
42};