]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # The ARCH_INLINE foo is necessary because select ignores "depends on" | |
3 | # | |
4 | config ARCH_INLINE_SPIN_TRYLOCK | |
5 | bool | |
6 | ||
7 | config ARCH_INLINE_SPIN_TRYLOCK_BH | |
8 | bool | |
9 | ||
10 | config ARCH_INLINE_SPIN_LOCK | |
11 | bool | |
12 | ||
13 | config ARCH_INLINE_SPIN_LOCK_BH | |
14 | bool | |
15 | ||
16 | config ARCH_INLINE_SPIN_LOCK_IRQ | |
17 | bool | |
18 | ||
19 | config ARCH_INLINE_SPIN_LOCK_IRQSAVE | |
20 | bool | |
21 | ||
22 | config ARCH_INLINE_SPIN_UNLOCK | |
23 | bool | |
24 | ||
25 | config ARCH_INLINE_SPIN_UNLOCK_BH | |
26 | bool | |
27 | ||
28 | config ARCH_INLINE_SPIN_UNLOCK_IRQ | |
29 | bool | |
30 | ||
31 | config ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE | |
32 | bool | |
33 | ||
34 | ||
35 | config ARCH_INLINE_READ_TRYLOCK | |
36 | bool | |
37 | ||
38 | config ARCH_INLINE_READ_LOCK | |
39 | bool | |
40 | ||
41 | config ARCH_INLINE_READ_LOCK_BH | |
42 | bool | |
43 | ||
44 | config ARCH_INLINE_READ_LOCK_IRQ | |
45 | bool | |
46 | ||
47 | config ARCH_INLINE_READ_LOCK_IRQSAVE | |
48 | bool | |
49 | ||
50 | config ARCH_INLINE_READ_UNLOCK | |
51 | bool | |
52 | ||
53 | config ARCH_INLINE_READ_UNLOCK_BH | |
54 | bool | |
55 | ||
56 | config ARCH_INLINE_READ_UNLOCK_IRQ | |
57 | bool | |
58 | ||
59 | config ARCH_INLINE_READ_UNLOCK_IRQRESTORE | |
60 | bool | |
61 | ||
62 | ||
63 | config ARCH_INLINE_WRITE_TRYLOCK | |
64 | bool | |
65 | ||
66 | config ARCH_INLINE_WRITE_LOCK | |
67 | bool | |
68 | ||
69 | config ARCH_INLINE_WRITE_LOCK_BH | |
70 | bool | |
71 | ||
72 | config ARCH_INLINE_WRITE_LOCK_IRQ | |
73 | bool | |
74 | ||
75 | config ARCH_INLINE_WRITE_LOCK_IRQSAVE | |
76 | bool | |
77 | ||
78 | config ARCH_INLINE_WRITE_UNLOCK | |
79 | bool | |
80 | ||
81 | config ARCH_INLINE_WRITE_UNLOCK_BH | |
82 | bool | |
83 | ||
84 | config ARCH_INLINE_WRITE_UNLOCK_IRQ | |
85 | bool | |
86 | ||
87 | config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE | |
88 | bool | |
89 | ||
90 | config UNINLINE_SPIN_UNLOCK | |
91 | bool | |
92 | ||
93 | # | |
94 | # lock_* functions are inlined when: | |
95 | # - DEBUG_SPINLOCK=n and GENERIC_LOCKBREAK=n and ARCH_INLINE_*LOCK=y | |
96 | # | |
97 | # trylock_* functions are inlined when: | |
98 | # - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y | |
99 | # | |
100 | # unlock and unlock_irq functions are inlined when: | |
101 | # - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y | |
102 | # or | |
103 | # - DEBUG_SPINLOCK=n and PREEMPT=n | |
104 | # | |
105 | # unlock_bh and unlock_irqrestore functions are inlined when: | |
106 | # - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y | |
107 | # | |
108 | ||
109 | if !DEBUG_SPINLOCK | |
110 | ||
111 | config INLINE_SPIN_TRYLOCK | |
112 | def_bool y | |
113 | depends on ARCH_INLINE_SPIN_TRYLOCK | |
114 | ||
115 | config INLINE_SPIN_TRYLOCK_BH | |
116 | def_bool y | |
117 | depends on ARCH_INLINE_SPIN_TRYLOCK_BH | |
118 | ||
119 | config INLINE_SPIN_LOCK | |
120 | def_bool y | |
121 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK | |
122 | ||
123 | config INLINE_SPIN_LOCK_BH | |
124 | def_bool y | |
125 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_BH | |
126 | ||
127 | config INLINE_SPIN_LOCK_IRQ | |
128 | def_bool y | |
129 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQ | |
130 | ||
131 | config INLINE_SPIN_LOCK_IRQSAVE | |
132 | def_bool y | |
133 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQSAVE | |
134 | ||
135 | config INLINE_SPIN_UNLOCK_BH | |
136 | def_bool y | |
137 | depends on ARCH_INLINE_SPIN_UNLOCK_BH | |
138 | ||
139 | config INLINE_SPIN_UNLOCK_IRQ | |
140 | def_bool y | |
141 | depends on !PREEMPT || ARCH_INLINE_SPIN_UNLOCK_IRQ | |
142 | ||
143 | config INLINE_SPIN_UNLOCK_IRQRESTORE | |
144 | def_bool y | |
145 | depends on ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE | |
146 | ||
147 | ||
148 | config INLINE_READ_TRYLOCK | |
149 | def_bool y | |
150 | depends on ARCH_INLINE_READ_TRYLOCK | |
151 | ||
152 | config INLINE_READ_LOCK | |
153 | def_bool y | |
154 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK | |
155 | ||
156 | config INLINE_READ_LOCK_BH | |
157 | def_bool y | |
158 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_BH | |
159 | ||
160 | config INLINE_READ_LOCK_IRQ | |
161 | def_bool y | |
162 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQ | |
163 | ||
164 | config INLINE_READ_LOCK_IRQSAVE | |
165 | def_bool y | |
166 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQSAVE | |
167 | ||
168 | config INLINE_READ_UNLOCK | |
169 | def_bool y | |
170 | depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK | |
171 | ||
172 | config INLINE_READ_UNLOCK_BH | |
173 | def_bool y | |
174 | depends on ARCH_INLINE_READ_UNLOCK_BH | |
175 | ||
176 | config INLINE_READ_UNLOCK_IRQ | |
177 | def_bool y | |
178 | depends on !PREEMPT || ARCH_INLINE_READ_UNLOCK_IRQ | |
179 | ||
180 | config INLINE_READ_UNLOCK_IRQRESTORE | |
181 | def_bool y | |
182 | depends on ARCH_INLINE_READ_UNLOCK_IRQRESTORE | |
183 | ||
184 | ||
185 | config INLINE_WRITE_TRYLOCK | |
186 | def_bool y | |
187 | depends on ARCH_INLINE_WRITE_TRYLOCK | |
188 | ||
189 | config INLINE_WRITE_LOCK | |
190 | def_bool y | |
191 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK | |
192 | ||
193 | config INLINE_WRITE_LOCK_BH | |
194 | def_bool y | |
195 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_BH | |
196 | ||
197 | config INLINE_WRITE_LOCK_IRQ | |
198 | def_bool y | |
199 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQ | |
200 | ||
201 | config INLINE_WRITE_LOCK_IRQSAVE | |
202 | def_bool y | |
203 | depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQSAVE | |
204 | ||
205 | config INLINE_WRITE_UNLOCK | |
206 | def_bool y | |
207 | depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK | |
208 | ||
209 | config INLINE_WRITE_UNLOCK_BH | |
210 | def_bool y | |
211 | depends on ARCH_INLINE_WRITE_UNLOCK_BH | |
212 | ||
213 | config INLINE_WRITE_UNLOCK_IRQ | |
214 | def_bool y | |
215 | depends on !PREEMPT || ARCH_INLINE_WRITE_UNLOCK_IRQ | |
216 | ||
217 | config INLINE_WRITE_UNLOCK_IRQRESTORE | |
218 | def_bool y | |
219 | depends on ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE | |
220 | ||
221 | endif | |
222 | ||
223 | config ARCH_SUPPORTS_ATOMIC_RMW | |
224 | bool | |
225 | ||
226 | config MUTEX_SPIN_ON_OWNER | |
227 | def_bool y | |
228 | depends on SMP && ARCH_SUPPORTS_ATOMIC_RMW | |
229 | ||
230 | config RWSEM_SPIN_ON_OWNER | |
231 | def_bool y | |
232 | depends on SMP && RWSEM_XCHGADD_ALGORITHM && ARCH_SUPPORTS_ATOMIC_RMW | |
233 | ||
234 | config LOCK_SPIN_ON_OWNER | |
235 | def_bool y | |
236 | depends on MUTEX_SPIN_ON_OWNER || RWSEM_SPIN_ON_OWNER | |
237 | ||
238 | config ARCH_USE_QUEUED_SPINLOCKS | |
239 | bool | |
240 | ||
241 | config QUEUED_SPINLOCKS | |
242 | def_bool y if ARCH_USE_QUEUED_SPINLOCKS | |
243 | depends on SMP | |
244 | ||
245 | config ARCH_USE_QUEUED_RWLOCKS | |
246 | bool | |
247 | ||
248 | config QUEUED_RWLOCKS | |
249 | def_bool y if ARCH_USE_QUEUED_RWLOCKS | |
250 | depends on SMP |