2006-03-31 18:30:19 +08:00
|
|
|
/*
|
|
|
|
* 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
|
|
|
|
|
2008-02-05 14:31:26 +08:00
|
|
|
#include <linux/mutex.h>
|
2008-08-18 13:26:38 +08:00
|
|
|
#include <sysdep/host_ldt.h>
|
2006-03-31 18:30:19 +08:00
|
|
|
|
|
|
|
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;
|
2008-02-05 14:31:26 +08:00
|
|
|
struct mutex lock;
|
2006-03-31 18:30:19 +08:00
|
|
|
union {
|
|
|
|
struct ldt_entry * pages[LDT_PAGES_MAX];
|
|
|
|
struct ldt_entry entries[LDT_DIRECT_ENTRIES];
|
|
|
|
} u;
|
|
|
|
} uml_ldt_t;
|
|
|
|
|
|
|
|
#endif
|