diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
commit | c71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch) | |
tree | ecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /include/linux/smp_lock.h | |
parent | ea53c912f8a86a8567697115b6a0d8152beee5c8 (diff) | |
parent | 6a00f206debf8a5c8899055726ad127dbeeed098 (diff) |
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts:
litmus/sched_cedf.c
Diffstat (limited to 'include/linux/smp_lock.h')
-rw-r--r-- | include/linux/smp_lock.h | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/include/linux/smp_lock.h b/include/linux/smp_lock.h deleted file mode 100644 index 2ea1dd1ba21c..000000000000 --- a/include/linux/smp_lock.h +++ /dev/null | |||
@@ -1,65 +0,0 @@ | |||
1 | #ifndef __LINUX_SMPLOCK_H | ||
2 | #define __LINUX_SMPLOCK_H | ||
3 | |||
4 | #ifdef CONFIG_LOCK_KERNEL | ||
5 | #include <linux/sched.h> | ||
6 | |||
7 | #define kernel_locked() (current->lock_depth >= 0) | ||
8 | |||
9 | extern int __lockfunc __reacquire_kernel_lock(void); | ||
10 | extern void __lockfunc __release_kernel_lock(void); | ||
11 | |||
12 | /* | ||
13 | * Release/re-acquire global kernel lock for the scheduler | ||
14 | */ | ||
15 | #define release_kernel_lock(tsk) do { \ | ||
16 | if (unlikely((tsk)->lock_depth >= 0)) \ | ||
17 | __release_kernel_lock(); \ | ||
18 | } while (0) | ||
19 | |||
20 | static inline int reacquire_kernel_lock(struct task_struct *task) | ||
21 | { | ||
22 | if (unlikely(task->lock_depth >= 0)) | ||
23 | return __reacquire_kernel_lock(); | ||
24 | return 0; | ||
25 | } | ||
26 | |||
27 | extern void __lockfunc | ||
28 | _lock_kernel(const char *func, const char *file, int line) | ||
29 | __acquires(kernel_lock); | ||
30 | |||
31 | extern void __lockfunc | ||
32 | _unlock_kernel(const char *func, const char *file, int line) | ||
33 | __releases(kernel_lock); | ||
34 | |||
35 | #define lock_kernel() do { \ | ||
36 | _lock_kernel(__func__, __FILE__, __LINE__); \ | ||
37 | } while (0) | ||
38 | |||
39 | #define unlock_kernel() do { \ | ||
40 | _unlock_kernel(__func__, __FILE__, __LINE__); \ | ||
41 | } while (0) | ||
42 | |||
43 | /* | ||
44 | * Various legacy drivers don't really need the BKL in a specific | ||
45 | * function, but they *do* need to know that the BKL became available. | ||
46 | * This function just avoids wrapping a bunch of lock/unlock pairs | ||
47 | * around code which doesn't really need it. | ||
48 | */ | ||
49 | static inline void cycle_kernel_lock(void) | ||
50 | { | ||
51 | lock_kernel(); | ||
52 | unlock_kernel(); | ||
53 | } | ||
54 | |||
55 | #else | ||
56 | |||
57 | #define lock_kernel() | ||
58 | #define unlock_kernel() | ||
59 | #define release_kernel_lock(task) do { } while(0) | ||
60 | #define cycle_kernel_lock() do { } while(0) | ||
61 | #define reacquire_kernel_lock(task) 0 | ||
62 | #define kernel_locked() 1 | ||
63 | |||
64 | #endif /* CONFIG_LOCK_KERNEL */ | ||
65 | #endif /* __LINUX_SMPLOCK_H */ | ||