| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #ifndef COMMON_LINUX_H |
| #define COMMON_LINUX_H |
| |
| #ifndef ASSEMBLER |
| |
| #include <syscall.h> |
| |
| extern long int syscall (long int __sysno, ...); |
| |
| #ifndef MPOL_PREFERRED |
| #define MPOL_PREFERRED 1 |
| #endif |
| |
| #ifndef MPOL_INTERLEAVE |
| #define MPOL_INTERLEAVE 3 |
| #endif |
| |
| #if defined(ARCH_IA64) && defined(__ECC) |
| #ifndef __NR_mbind |
| #define __NR_mbind 1259 |
| #endif |
| #ifndef __NR_get_mempolicy |
| #define __NR_get_mempolicy 1260 |
| #endif |
| #ifndef __NR_set_mempolicy |
| #define __NR_set_mempolicy 1261 |
| #endif |
| #endif |
| |
| static inline int my_mbind(void *addr, unsigned long len, int mode, |
| unsigned long *nodemask, unsigned long maxnode, |
| unsigned flags) { |
| #if defined (LOONGSON3B) |
| #if defined (__64BIT__) |
| return syscall(SYS_mbind, addr, len, mode, nodemask, maxnode, flags); |
| #else |
| return 0; |
| #endif |
| #else |
| |
| |
| return syscall(SYS_mbind, addr, len, mode, nodemask, maxnode, flags); |
| #endif |
| } |
| |
| static inline int my_set_mempolicy(int mode, const unsigned long *addr, unsigned long flag) { |
| |
| return syscall(SYS_set_mempolicy, mode, addr, flag); |
| } |
| |
| static inline int my_gettid(void) { return syscall(SYS_gettid); } |
| |
| #endif |
| #endif |