linux/arch/sparc64/solaris/conv.h
<<
>>
Prefs
   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
  23extern unsigned sys_call_table[];
  24extern unsigned sys_call_table32[];
  25extern 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__ */
  39