aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/rcutiny.h
diff options
context:
space:
mode:
authorJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
committerJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
commit8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch)
treea8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /include/linux/rcutiny.h
parent406089d01562f1e2bf9f089fd7637009ebaad589 (diff)
Patched in Tegra support.
Diffstat (limited to 'include/linux/rcutiny.h')
-rw-r--r--include/linux/rcutiny.h33
1 files changed, 8 insertions, 25 deletions
diff --git a/include/linux/rcutiny.h b/include/linux/rcutiny.h
index 4e56a9c69a3..52b3e0281fd 100644
--- a/include/linux/rcutiny.h
+++ b/include/linux/rcutiny.h
@@ -31,16 +31,6 @@ static inline void rcu_init(void)
31{ 31{
32} 32}
33 33
34static inline void rcu_barrier_bh(void)
35{
36 wait_rcu_gp(call_rcu_bh);
37}
38
39static inline void rcu_barrier_sched(void)
40{
41 wait_rcu_gp(call_rcu_sched);
42}
43
44#ifdef CONFIG_TINY_RCU 34#ifdef CONFIG_TINY_RCU
45 35
46static inline void synchronize_rcu_expedited(void) 36static inline void synchronize_rcu_expedited(void)
@@ -55,13 +45,9 @@ static inline void rcu_barrier(void)
55 45
56#else /* #ifdef CONFIG_TINY_RCU */ 46#else /* #ifdef CONFIG_TINY_RCU */
57 47
48void rcu_barrier(void);
58void synchronize_rcu_expedited(void); 49void synchronize_rcu_expedited(void);
59 50
60static inline void rcu_barrier(void)
61{
62 wait_rcu_gp(call_rcu);
63}
64
65#endif /* #else #ifdef CONFIG_TINY_RCU */ 51#endif /* #else #ifdef CONFIG_TINY_RCU */
66 52
67static inline void synchronize_rcu_bh(void) 53static inline void synchronize_rcu_bh(void)
@@ -79,32 +65,29 @@ static inline void synchronize_sched_expedited(void)
79 synchronize_sched(); 65 synchronize_sched();
80} 66}
81 67
82static inline void kfree_call_rcu(struct rcu_head *head,
83 void (*func)(struct rcu_head *rcu))
84{
85 call_rcu(head, func);
86}
87
88#ifdef CONFIG_TINY_RCU 68#ifdef CONFIG_TINY_RCU
89 69
90static inline void rcu_preempt_note_context_switch(void) 70static inline void rcu_preempt_note_context_switch(void)
91{ 71{
92} 72}
93 73
94static inline int rcu_needs_cpu(int cpu, unsigned long *delta_jiffies) 74static inline void exit_rcu(void)
75{
76}
77
78static inline int rcu_needs_cpu(int cpu)
95{ 79{
96 *delta_jiffies = ULONG_MAX;
97 return 0; 80 return 0;
98} 81}
99 82
100#else /* #ifdef CONFIG_TINY_RCU */ 83#else /* #ifdef CONFIG_TINY_RCU */
101 84
102void rcu_preempt_note_context_switch(void); 85void rcu_preempt_note_context_switch(void);
86extern void exit_rcu(void);
103int rcu_preempt_needs_cpu(void); 87int rcu_preempt_needs_cpu(void);
104 88
105static inline int rcu_needs_cpu(int cpu, unsigned long *delta_jiffies) 89static inline int rcu_needs_cpu(int cpu)
106{ 90{
107 *delta_jiffies = ULONG_MAX;
108 return rcu_preempt_needs_cpu(); 91 return rcu_preempt_needs_cpu();
109} 92}
110 93