.. | .. |
---|
252 | 252 | |
---|
253 | 253 | /* |
---|
254 | 254 | * Issue the synchronous I/O from a different thread |
---|
255 | | - * to avoid generic_make_request recursion. |
---|
| 255 | + * to avoid submit_bio_noacct recursion. |
---|
256 | 256 | */ |
---|
257 | 257 | INIT_WORK_ONSTACK(&req.work, do_metadata); |
---|
258 | 258 | queue_work(ps->metadata_wq, &req.work); |
---|
.. | .. |
---|
284 | 284 | */ |
---|
285 | 285 | static int area_io(struct pstore *ps, int op, int op_flags) |
---|
286 | 286 | { |
---|
287 | | - int r; |
---|
288 | | - chunk_t chunk; |
---|
| 287 | + chunk_t chunk = area_location(ps, ps->current_area); |
---|
289 | 288 | |
---|
290 | | - chunk = area_location(ps, ps->current_area); |
---|
291 | | - |
---|
292 | | - r = chunk_io(ps, ps->area, chunk, op, op_flags, 0); |
---|
293 | | - if (r) |
---|
294 | | - return r; |
---|
295 | | - |
---|
296 | | - return 0; |
---|
| 289 | + return chunk_io(ps, ps->area, chunk, op, op_flags, 0); |
---|
297 | 290 | } |
---|
298 | 291 | |
---|
299 | 292 | static void zero_memory_area(struct pstore *ps) |
---|
.. | .. |
---|
613 | 606 | chunk_t old, chunk_t new), |
---|
614 | 607 | void *callback_context) |
---|
615 | 608 | { |
---|
616 | | - int r, uninitialized_var(new_snapshot); |
---|
| 609 | + int r, new_snapshot; |
---|
617 | 610 | struct pstore *ps = get_info(store); |
---|
618 | 611 | |
---|
619 | 612 | /* |
---|