Lines Matching refs:store
8 #include "dm-exception-store.h"
64 * 'dm-exception-store-<type_name>' is too long of a name in my
66 * containing exception store implementations be 'dm-exstore-<type_name>'.
142 static int set_chunk_size(struct dm_exception_store *store,
153 store->chunk_size = store->chunk_mask = store->chunk_shift = 0;
157 return dm_exception_store_set_chunk_size(store, chunk_size, error);
160 int dm_exception_store_set_chunk_size(struct dm_exception_store *store,
172 (bdev_logical_block_size(dm_snap_cow(store->snap)->bdev) >> 9) ||
174 (bdev_logical_block_size(dm_snap_origin(store->snap)->bdev) >> 9)) {
184 store->chunk_size = chunk_size;
185 store->chunk_mask = chunk_size - 1;
186 store->chunk_shift = __ffs(chunk_size);
194 struct dm_exception_store **store)
202 ti->error = "Insufficient exception store arguments";
208 ti->error = "Exception store allocation failed";
218 ti->error = "Exception store type is not P or N";
224 ti->error = "Exception store type not recognised";
238 ti->error = "Exception store type constructor failed";
243 *store = tmp_store;
254 void dm_exception_store_destroy(struct dm_exception_store *store)
256 store->type->dtr(store);
257 put_type(store->type);
258 kfree(store);
268 DMERR("Unable to register transient exception store type.");
274 DMERR("Unable to register persistent exception store type");