dm thin: defer whole cells rather than individual bios
authorJoe Thornber <ejt@redhat.com>
Fri, 10 Oct 2014 12:43:14 +0000 (13:43 +0100)
committerMike Snitzer <snitzer@redhat.com>
Mon, 10 Nov 2014 20:25:28 +0000 (15:25 -0500)
This avoids dropping the cell, so increases the probability that other
bios will collect within the cell, rather than being passed individually
to the worker.

Also add required process_cell and process_discard_cell error handling
wrappers and set associated pool-mode function pointers accordingly.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-bio-prison.h
drivers/md/dm-thin.c

index 997a439..c0cddb1 100644 (file)
@@ -35,6 +35,7 @@ struct dm_cell_key {
  * themselves.
  */
 struct dm_bio_prison_cell {
+       struct list_head user_list;     /* for client use */
        struct rb_node node;
 
        struct dm_cell_key key;
Simple merge