diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2008-08-18 01:26:38 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-10-22 22:55:21 -0700 |
commit | efb21cc2384e385c4873ac6e7b23f16659469ea9 (patch) | |
tree | e7da1bf7e0d02327a974ec5724e9209eeb9ec7ef /arch/um/include/asm | |
parent | 5077c2a9cd43e8db71f8257e745e1d27e7b79d3f (diff) |
x86, um: untangle uml ldt.h
* turn asm/ldt.h into ldt.h; update the (very few) users
* take host_ldt.h into sysdep, kill symlink mess
* includes of asm/arch/ldt.h turn into asm/ldt.h now
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/um/include/asm')
-rw-r--r-- | arch/um/include/asm/host_ldt-i386.h | 34 | ||||
-rw-r--r-- | arch/um/include/asm/host_ldt-x86_64.h | 38 | ||||
-rw-r--r-- | arch/um/include/asm/ldt.h | 37 | ||||
-rw-r--r-- | arch/um/include/asm/processor-i386.h | 2 | ||||
-rw-r--r-- | arch/um/include/asm/ptrace-x86_64.h | 2 |
5 files changed, 2 insertions, 111 deletions
diff --git a/arch/um/include/asm/host_ldt-i386.h b/arch/um/include/asm/host_ldt-i386.h deleted file mode 100644 index b27cb0a9dd30..000000000000 --- a/arch/um/include/asm/host_ldt-i386.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef __ASM_HOST_LDT_I386_H -#define __ASM_HOST_LDT_I386_H - -#include "asm/arch/ldt.h" - -/* - * macros stolen from include/asm-i386/desc.h - */ -#define LDT_entry_a(info) \ - ((((info)->base_addr & 0x0000ffff) << 16) | ((info)->limit & 0x0ffff)) - -#define LDT_entry_b(info) \ - (((info)->base_addr & 0xff000000) | \ - (((info)->base_addr & 0x00ff0000) >> 16) | \ - ((info)->limit & 0xf0000) | \ - (((info)->read_exec_only ^ 1) << 9) | \ - ((info)->contents << 10) | \ - (((info)->seg_not_present ^ 1) << 15) | \ - ((info)->seg_32bit << 22) | \ - ((info)->limit_in_pages << 23) | \ - ((info)->useable << 20) | \ - 0x7000) - -#define LDT_empty(info) (\ - (info)->base_addr == 0 && \ - (info)->limit == 0 && \ - (info)->contents == 0 && \ - (info)->read_exec_only == 1 && \ - (info)->seg_32bit == 0 && \ - (info)->limit_in_pages == 0 && \ - (info)->seg_not_present == 1 && \ - (info)->useable == 0 ) - -#endif diff --git a/arch/um/include/asm/host_ldt-x86_64.h b/arch/um/include/asm/host_ldt-x86_64.h deleted file mode 100644 index 74a63f7d9a90..000000000000 --- a/arch/um/include/asm/host_ldt-x86_64.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef __ASM_HOST_LDT_X86_64_H -#define __ASM_HOST_LDT_X86_64_H - -#include "asm/arch/ldt.h" - -/* - * macros stolen from include/asm-x86_64/desc.h - */ -#define LDT_entry_a(info) \ - ((((info)->base_addr & 0x0000ffff) << 16) | ((info)->limit & 0x0ffff)) - -/* Don't allow setting of the lm bit. It is useless anyways because - * 64bit system calls require __USER_CS. */ -#define LDT_entry_b(info) \ - (((info)->base_addr & 0xff000000) | \ - (((info)->base_addr & 0x00ff0000) >> 16) | \ - ((info)->limit & 0xf0000) | \ - (((info)->read_exec_only ^ 1) << 9) | \ - ((info)->contents << 10) | \ - (((info)->seg_not_present ^ 1) << 15) | \ - ((info)->seg_32bit << 22) | \ - ((info)->limit_in_pages << 23) | \ - ((info)->useable << 20) | \ - /* ((info)->lm << 21) | */ \ - 0x7000) - -#define LDT_empty(info) (\ - (info)->base_addr == 0 && \ - (info)->limit == 0 && \ - (info)->contents == 0 && \ - (info)->read_exec_only == 1 && \ - (info)->seg_32bit == 0 && \ - (info)->limit_in_pages == 0 && \ - (info)->seg_not_present == 1 && \ - (info)->useable == 0 && \ - (info)->lm == 0) - -#endif diff --git a/arch/um/include/asm/ldt.h b/arch/um/include/asm/ldt.h deleted file mode 100644 index 52af512f5e7d..000000000000 --- a/arch/um/include/asm/ldt.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (C) 2004 Fujitsu Siemens Computers GmbH - * Licensed under the GPL - * - * Author: Bodo Stroesser <bstroesser@fujitsu-siemens.com> - */ - -#ifndef __ASM_LDT_H -#define __ASM_LDT_H - -#include <linux/mutex.h> -#include "asm/host_ldt.h" - -extern void ldt_host_info(void); - -#define LDT_PAGES_MAX \ - ((LDT_ENTRIES * LDT_ENTRY_SIZE)/PAGE_SIZE) -#define LDT_ENTRIES_PER_PAGE \ - (PAGE_SIZE/LDT_ENTRY_SIZE) -#define LDT_DIRECT_ENTRIES \ - ((LDT_PAGES_MAX*sizeof(void *))/LDT_ENTRY_SIZE) - -struct ldt_entry { - __u32 a; - __u32 b; -}; - -typedef struct uml_ldt { - int entry_count; - struct mutex lock; - union { - struct ldt_entry * pages[LDT_PAGES_MAX]; - struct ldt_entry entries[LDT_DIRECT_ENTRIES]; - } u; -} uml_ldt_t; - -#endif diff --git a/arch/um/include/asm/processor-i386.h b/arch/um/include/asm/processor-i386.h index 4f8be0063639..82a9061ab5be 100644 --- a/arch/um/include/asm/processor-i386.h +++ b/arch/um/include/asm/processor-i386.h @@ -7,7 +7,7 @@ #define __UM_PROCESSOR_I386_H #include "linux/string.h" -#include "asm/host_ldt.h" +#include <sysdep/host_ldt.h> #include "asm/segment.h" extern int host_has_cmov; diff --git a/arch/um/include/asm/ptrace-x86_64.h b/arch/um/include/asm/ptrace-x86_64.h index 4c475350dcf0..2653fbaa352e 100644 --- a/arch/um/include/asm/ptrace-x86_64.h +++ b/arch/um/include/asm/ptrace-x86_64.h @@ -9,7 +9,7 @@ #include "linux/compiler.h" #include "asm/errno.h" -#include "asm/host_ldt.h" +#include <sysdep/host_ldt.h> #define __FRAME_OFFSETS /* Needed to get the R* macros */ #include "asm/ptrace-generic.h" |