1 /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
2 * vim:expandtab:shiftwidth=8:tabstop=8:
4 #ifndef _PORTALS_COMPAT_H
5 #define _PORTALS_COMPAT_H
7 // XXX BUG 1511 -- remove this stanza and all callers when bug 1511 is resolved
9 # if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)) || defined(CONFIG_RH_2_4_20)
10 # define SIGNAL_MASK_ASSERT() \
11 LASSERT(current->sighand->siglock.magic == SPINLOCK_MAGIC)
13 # define SIGNAL_MASK_ASSERT() \
14 LASSERT(current->sigmask_lock.magic == SPINLOCK_MAGIC)
17 # define SIGNAL_MASK_ASSERT()
19 // XXX BUG 1511 -- remove this stanza and all callers when bug 1511 is resolved
21 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
23 # define SIGNAL_MASK_LOCK(task, flags) \
24 spin_lock_irqsave(&task->sighand->siglock, flags)
25 # define SIGNAL_MASK_UNLOCK(task, flags) \
26 spin_unlock_irqrestore(&task->sighand->siglock, flags)
27 # define USERMODEHELPER(path, argv, envp) \
28 call_usermodehelper(path, argv, envp, 1)
29 # define RECALC_SIGPENDING recalc_sigpending()
30 # define CURRENT_SECONDS get_seconds()
32 #elif defined(CONFIG_RH_2_4_20) /* RH 2.4.x */
34 # define SIGNAL_MASK_LOCK(task, flags) \
35 spin_lock_irqsave(&task->sighand->siglock, flags)
36 # define SIGNAL_MASK_UNLOCK(task, flags) \
37 spin_unlock_irqrestore(&task->sighand->siglock, flags)
38 # define USERMODEHELPER(path, argv, envp) \
39 call_usermodehelper(path, argv, envp)
40 # define RECALC_SIGPENDING recalc_sigpending()
41 # define CURRENT_SECONDS CURRENT_TIME
45 # define SIGNAL_MASK_LOCK(task, flags) \
46 spin_lock_irqsave(&task->sigmask_lock, flags)
47 # define SIGNAL_MASK_UNLOCK(task, flags) \
48 spin_unlock_irqrestore(&task->sigmask_lock, flags)
49 # define USERMODEHELPER(path, argv, envp) \
50 call_usermodehelper(path, argv, envp)
51 # define RECALC_SIGPENDING recalc_sigpending(current)
52 # define CURRENT_SECONDS CURRENT_TIME
56 #if defined(__arch_um__) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,20))
57 # define THREAD_NAME(comm, fmt, a...) \
58 sprintf(comm, fmt "|%d", ## a, current->thread.extern_pid)
59 #elif defined(__arch_um__) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
60 # define THREAD_NAME(comm, fmt, a...) \
61 sprintf(comm, fmt "|%d", ## a, current->thread.mode.tt.extern_pid)
63 # define THREAD_NAME(comm, fmt, a...) \
64 sprintf(comm, fmt, ## a)
68 /* 2.4 alloc_page users can use page->list */
69 #define PAGE_LIST_ENTRY list
70 #define PAGE_LIST(page) ((page)->list)
72 /* 2.6 alloc_page users can use page->lru */
73 #define PAGE_LIST_ENTRY lru
74 #define PAGE_LIST(page) ((page)->lru)
77 #endif /* _PORTALS_COMPAT_H */