1 /* $OpenBSD: sysarch.h,v 1.14 2016/03/24 04:56:08 guenther Exp $ */ 2 /* $NetBSD: sysarch.h,v 1.8 1996/01/08 13:51:44 mycroft Exp $ */ 3 4 #ifndef _MACHINE_SYSARCH_H_ 5 #define _MACHINE_SYSARCH_H_ 6 7 /* 8 * Architecture specific syscalls (i386) 9 */ 10 #define I386_IOPL 2 11 #define I386_VM86 5 12 #define I386_GET_FSBASE 6 13 #define I386_SET_FSBASE 7 14 #define I386_GET_GSBASE 8 15 #define I386_SET_GSBASE 9 16 17 struct i386_iopl_args { 18 int iopl; 19 }; 20 21 #ifdef _KERNEL 22 uint32_t i386_get_threadbase(struct proc *, int); 23 int i386_set_threadbase(struct proc *, uint32_t, int); 24 #else 25 26 #include <sys/cdefs.h> 27 28 __BEGIN_DECLS 29 int i386_iopl(int); 30 int i386_get_fsbase(void **); 31 int i386_set_fsbase(void *); 32 int i386_get_gsbase(void **); 33 int i386_set_gsbase(void *); 34 int sysarch(int, void *); 35 __END_DECLS 36 #endif 37 38 #endif /* !_MACHINE_SYSARCH_H_ */ 39