/* | |
* 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 "asm/semaphore.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 semaphore semaphore; | |
union { | |
struct ldt_entry * pages[LDT_PAGES_MAX]; | |
struct ldt_entry entries[LDT_DIRECT_ENTRIES]; | |
} u; | |
} uml_ldt_t; | |
#endif |