Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* $Id: conv.h,v 1.4 1998/08/15 20:42:51 davem Exp $ |
2 | * conv.h: Utility macros for Solaris emulation | |
3 | * | |
4 | * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) | |
5 | */ | |
6 | ||
7 | /* #define DEBUG_SOLARIS */ | |
8 | #define DEBUG_SOLARIS_KMALLOC | |
9 | ||
10 | #ifndef __ASSEMBLY__ | |
11 | ||
12 | #include <asm/unistd.h> | |
13 | ||
14 | /* Use this to get at 32-bit user passed pointers. */ | |
15 | #define A(__x) \ | |
16 | ({ unsigned long __ret; \ | |
17 | __asm__ ("srl %0, 0, %0" \ | |
18 | : "=r" (__ret) \ | |
19 | : "0" (__x)); \ | |
20 | (void __user *)__ret; \ | |
21 | }) | |
22 | ||
23 | extern unsigned sys_call_table[]; | |
24 | extern unsigned sys_call_table32[]; | |
25 | extern unsigned sunos_sys_table[]; | |
26 | ||
27 | #define SYS(name) ((long)sys_call_table[__NR_##name]) | |
28 | #define SUNOS(x) ((long)sunos_sys_table[x]) | |
29 | ||
30 | #ifdef DEBUG_SOLARIS | |
31 | #define SOLD(s) printk("%s,%d,%s(): %s\n",__FILE__,__LINE__,__FUNCTION__,(s)) | |
32 | #define SOLDD(s) printk("solaris: "); printk s | |
33 | #else | |
34 | #define SOLD(s) | |
35 | #define SOLDD(s) | |
36 | #endif | |
37 | ||
38 | #endif /* __ASSEMBLY__ */ |