summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/proc.h
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-10-25 00:53:43 +0000
committerjhb <jhb@FreeBSD.org>2001-10-25 00:53:43 +0000
commitba0a9ee2e6605c9d7c16f4f8ff1b8abd51656a52 (patch)
tree985767d54ab8587f13c4b10e2042c123e33ede0e /sys/amd64/include/proc.h
parent5a9e0848db34a5ed03ef25c96a45f2759fd0e14c (diff)
downloadFreeBSD-src-ba0a9ee2e6605c9d7c16f4f8ff1b8abd51656a52.zip
FreeBSD-src-ba0a9ee2e6605c9d7c16f4f8ff1b8abd51656a52.tar.gz
Split the per-process Local Descriptor Table out of the PCB and into
struct mdproc. Submitted by: Andrew R. Reiter <arr@watson.org> Silence on: -current
Diffstat (limited to 'sys/amd64/include/proc.h')
-rw-r--r--sys/amd64/include/proc.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/amd64/include/proc.h b/sys/amd64/include/proc.h
index 9e9e449..911f6b8 100644
--- a/sys/amd64/include/proc.h
+++ b/sys/amd64/include/proc.h
@@ -38,6 +38,15 @@
#define _MACHINE_PROC_H_
#include <machine/globals.h>
+#include <machine/segments.h>
+
+struct proc_ldt {
+ caddr_t ldt_base;
+ int ldt_len;
+ int ldt_refcnt;
+ u_long ldt_active;
+ struct segment_descriptor ldt_sd;
+};
/*
* Machine-dependent part of the proc structure for i386.
@@ -46,6 +55,15 @@ struct mdthread {
};
struct mdproc {
+ struct proc_ldt *md_ldt; /* per-process ldt */
};
+#ifdef _KERNEL
+
+void set_user_ldt __P((struct mdproc *));
+struct proc_ldt *user_ldt_alloc __P((struct mdproc *, int));
+void user_ldt_free __P((struct thread *));
+
+#endif /* _KERNEL */
+
#endif /* !_MACHINE_PROC_H_ */
OpenPOWER on IntegriCloud