dm: add cache target
Add a target that allows a fast device such as an SSD to be used as a cache for a slower device such as a disk. A plug-in architecture was chosen so that the decisions about which data to migrate and when are delegated to interchangeable tunable policy modules. The first general purpose module we have developed, called "mq" (multiqueue), follows in the next patch. Other modules are under development. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Heinz Mauelshagen <mauelshagen@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com>
This commit is contained in:
@@ -56,6 +56,17 @@ struct dm_bio_prison_cell *dm_bio_prison_alloc_cell(struct dm_bio_prison *prison
|
||||
void dm_bio_prison_free_cell(struct dm_bio_prison *prison,
|
||||
struct dm_bio_prison_cell *cell);
|
||||
|
||||
/*
|
||||
* Creates, or retrieves a cell for the given key.
|
||||
*
|
||||
* Returns 1 if pre-existing cell returned, zero if new cell created using
|
||||
* @cell_prealloc.
|
||||
*/
|
||||
int dm_get_cell(struct dm_bio_prison *prison,
|
||||
struct dm_cell_key *key,
|
||||
struct dm_bio_prison_cell *cell_prealloc,
|
||||
struct dm_bio_prison_cell **cell_result);
|
||||
|
||||
/*
|
||||
* An atomic op that combines retrieving a cell, and adding a bio to it.
|
||||
*
|
||||
|
Reference in New Issue
Block a user