BNX2X: spatch changes for BUG and WARN
[akaros.git] / scripts / spatch / linux / funcs.cocci
1 @@
2 expression T;
3 @@
4 -msleep(T);
5 +kthread_usleep(1000 * T);
6
7 @@
8 expression TMIN;
9 expression TMAX;
10 @@
11 -usleep_range(TMIN, TMAX);
12 +kthread_usleep(TMIN);
13
14 // barriers
15 @@
16 @@
17 -barrier();
18 +cmb();
19
20 // akaros RMW, locking atomics provide hw memory barriers.
21 // (excluding set, init, and read)
22 @@
23 @@
24 -smp_mb__before_atomic();
25 +cmb();
26
27 @@
28 @@
29 -smp_mb__after_atomic();
30 +cmb();
31
32 @@
33 @@
34 -smp_mb();
35 +mb();
36
37 @@
38 @@
39 -smp_rmb();
40 +rmb();
41
42 @@
43 @@
44 -smp_wmb();
45 +wmb();
46
47 @@
48 expression A0;
49 expression A1;
50 @@
51 -min(A0, A1)
52 +MIN(A0, A1)
53
54 @@
55 expression A0;
56 expression A1;
57 @@
58 -max(A0, A1)
59 +MAX(A0, A1)
60
61 @@
62 expression LO;
63 expression HI;
64 expression V;
65 @@
66 -clamp(V, LO, HI)
67 +CLAMP(V, LO, HI)
68
69 @@
70 expression A0;
71 expression A1;
72 type T;
73 @@
74 -min_t(T, A0, A1)
75 +MIN_T(T, A0, A1)
76
77 @@
78 expression A0;
79 expression A1;
80 type T;
81 @@
82 -max_t(T, A0, A1)
83 +MAX_T(T, A0, A1)
84
85 @@
86 expression LO;
87 expression HI;
88 expression V;
89 type T;
90 @@
91 -clamp_t(T, V, LO, HI)
92 +CLAMP_T(T, V, LO, HI)
93
94
95 // locking
96 // being conservative: they might not need irqsave
97 @@
98 expression E;
99 @@
100 -spin_lock_init(E)
101 +spinlock_init_irqsave(E)
102
103 @@
104 expression E;
105 @@
106 -spin_lock_bh(E)
107 +spin_lock(E)
108
109 @@
110 expression E;
111 @@
112 -spin_unlock_bh(E)
113 +spin_unlock(E)
114 @@
115
116 expression E;
117 @@
118 -spin_lock_irq(E)
119 +spin_lock_irqsave(E)
120
121 @@
122 expression E;
123 @@
124 -spin_unlock_irq(E)
125 +spin_unlock_irqsave(E)
126
127 @@
128 expression E;
129 @@
130 -ilog2(E)
131 +LOG2_UP(E)
132
133 @@
134 expression DST;
135 expression SRC;
136 expression LEN;
137 @@
138 -copy_from_user(DST, SRC, LEN)
139 +memcpy_from_user(current, DST, SRC, LEN)
140
141 @@
142 expression DST;
143 expression SRC;
144 expression LEN;
145 @@
146 -copy_to_user(DST, SRC, LEN)
147 +memcpy_to_user(current, DST, SRC, LEN)
148
149 @@
150 @@
151 -ktime_get_real()
152 +epoch_nsec()
153
154 @@
155 expression E;
156 @@
157 -ktime_to_ns(E)
158 +E
159
160 @@
161 expression E;
162 @@
163 -htonl(E)
164 +cpu_to_be32(E)
165
166 @@
167 expression E;
168 @@
169 -htons(E)
170 +cpu_to_be16(E)
171
172 @@
173 expression E;
174 @@
175 -ntohl(E)
176 +be32_to_cpu(E)
177
178 @@
179 expression E;
180 @@
181 -ntohs(E)
182 +be16_to_cpu(E)
183
184 @@
185 @@
186 -smp_processor_id()
187 +core_id()
188
189 // This is a little half-assed.  Any fix will need to be manually edited to
190 // provide a pointer to the pci device.  And you'll need to fix your handler to
191 // be the correct type.
192 @@
193 expression IRQ;
194 expression HANDLER;
195 expression FLAGS;
196 expression NAME;
197 expression ARG;
198 @@
199 -request_irq(IRQ, HANDLER, FLAGS, NAME, ARG)
200 +register_irq(IRQ, HANDLER, ARG, pci_to_tbdf(PCIDEV))
201
202 // There are 3 return types for the irq handlers, IRQ_NONE, IRQ_HANDLED, and
203 // IRQ_WAKE_THREAD.  We can change the first two to just return.  The latter
204 // will need manual attention, since they want a thread to handle the rest.
205 @@
206 identifier HANDLER;
207 typedef irqreturn_t;
208 @@
209 irqreturn_t HANDLER(...) {
210 <...
211 -return IRQ_NONE;
212 +return;
213 ...>
214 }
215
216 // Need to comment out irqreturn_t, I guess because it's in a previous rule
217 @@
218 identifier HANDLER;
219 //typedef irqreturn_t;
220 @@
221 irqreturn_t HANDLER(...) {
222 <...
223 -return IRQ_HANDLED;
224 +return;
225 ...>
226 }
227
228 // There should be a way to catch both decl and def at once...
229 // Changes the definition
230 @@
231 identifier HANDLER;
232 //typedef irqreturn_t;
233 identifier IRQ;
234 identifier ARG;
235 @@
236 -irqreturn_t HANDLER(int IRQ, void *ARG
237 +void HANDLER(struct hw_trapframe *hw_tf, void *ARG
238  ) { ... }
239
240 // Changes the declaration
241 @@
242 identifier HANDLER;
243 //typedef irqreturn_t;
244 identifier IRQ;
245 identifier ARG;
246 @@
247 -irqreturn_t HANDLER(int IRQ, void *ARG
248 +void HANDLER(struct hw_trapframe *hw_tf, void *ARG
249  );
250
251 @@
252 expression VAL;
253 expression UP;
254 @@
255 -roundup(VAL, UP)
256 +ROUNDUP(VAL, UP)
257
258 @@
259 expression VAL;
260 expression DOWN;
261 @@
262 -rounddown(VAL, DOWN)
263 +ROUNDDOWN(VAL, DOWN)
264
265 @@
266 expression STMT;
267 @@
268 -BUG_ON(STMT)
269 +assert(!(STMT))
270
271 @@
272 @@
273 -BUG()
274 +panic("BUG")
275
276 @@
277 @@
278 -WARN
279 +warn
280
281 @@
282 @@
283 -WARN_ONCE
284 +warn_once
285
286 @@
287 @@
288 -WARN_ON
289 +warn_on
290
291 @@
292 @@
293 -WARN_ON_ONCE
294 +warn_on-once