Rename dm_compress.lblk_alloc to lblk_alloc_elem
This commit is contained in:
parent
08b94b6363
commit
f87e897207
|
@ -75,7 +75,7 @@ struct dm_compress
|
|||
/* Currently cached lblk data (if any) */
|
||||
u64 lblk_num;
|
||||
bool lblk_dirty;
|
||||
struct lblk_alloc_elem* lblk_alloc;
|
||||
struct lblk_alloc_elem* lblk_alloc_elem;
|
||||
|
||||
void* lblk;
|
||||
|
||||
|
@ -445,7 +445,7 @@ lblk_write(struct dm_compress* dc)
|
|||
zone_lblk = dc->lblk_num - (zone * dc->params.lblk_per_zone);
|
||||
|
||||
/*
|
||||
* We must have dc->zone_lblk_alloc and dc->lblk_alloc cached by
|
||||
* We must have dc->zone_lblk_alloc and dc->lblk_alloc_elem cached by
|
||||
* the previous lblk_read().
|
||||
*/
|
||||
if (dc->zone_lblk_alloc_idx != zone) {
|
||||
|
@ -462,39 +462,39 @@ lblk_write(struct dm_compress* dc)
|
|||
#endif
|
||||
c_len = 0;
|
||||
c_buf = NULL;
|
||||
dc->lblk_alloc->len = 0;
|
||||
dc->lblk_alloc_elem->len = 0;
|
||||
}
|
||||
else {
|
||||
c_len = lblk_compress(dc);
|
||||
if (c_len > 0) {
|
||||
c_buf = dc->lz4_cbuf;
|
||||
dc->lblk_alloc->len = c_len;
|
||||
dc->lblk_alloc_elem->len = c_len;
|
||||
}
|
||||
else {
|
||||
c_len = d_len;
|
||||
c_buf = dc->lblk;
|
||||
dc->lblk_alloc->len = CBD_UNCOMPRESSED;
|
||||
dc->lblk_alloc_elem->len = CBD_UNCOMPRESSED;
|
||||
}
|
||||
}
|
||||
|
||||
for (n = 0; n < lblk_per_pblk(&dc->params); ++n) {
|
||||
if (c_len > PBLK_SIZE * n) {
|
||||
pblk = dc->lblk_alloc->pblk[n];
|
||||
pblk = dc->lblk_alloc_elem->pblk[n];
|
||||
if (!pblk) {
|
||||
pblk = zone_pblk_alloc_get(dc, zone);
|
||||
if (pblk == 0) {
|
||||
printk(KERN_ERR " zone_pblk_alloc_get failed\n");
|
||||
return -ENOSPC;
|
||||
}
|
||||
dc->lblk_alloc->pblk[n] = pblk;
|
||||
dc->lblk_alloc_elem->pblk[n] = pblk;
|
||||
}
|
||||
blkdev_pblk_write(dc->dev->bdev, pblk, 1, c_buf);
|
||||
c_buf += PBLK_SIZE;
|
||||
}
|
||||
else {
|
||||
pblk = dc->lblk_alloc->pblk[n];
|
||||
pblk = dc->lblk_alloc_elem->pblk[n];
|
||||
if (pblk) {
|
||||
dc->lblk_alloc->pblk[n] = 0;
|
||||
dc->lblk_alloc_elem->pblk[n] = 0;
|
||||
ret = zone_pblk_alloc_put(dc, pblk);
|
||||
if (ret != 0) {
|
||||
printk(KERN_ERR " zone_pblk_alloc_put failed\n");
|
||||
|
@ -505,7 +505,7 @@ lblk_write(struct dm_compress* dc)
|
|||
}
|
||||
|
||||
lblk_alloc_elem_put(&dc->params,
|
||||
dc->zone_lblk_alloc, zone_lblk, dc->lblk_alloc);
|
||||
dc->zone_lblk_alloc, zone_lblk, dc->lblk_alloc_elem);
|
||||
ret = zone_lblk_alloc_write(dc);
|
||||
if (ret != 0) {
|
||||
printk(KERN_ERR " zone_lblk_alloc_write failed\n");
|
||||
|
@ -563,9 +563,9 @@ lblk_read(struct dm_compress* dc, u64 idx)
|
|||
return ret;
|
||||
}
|
||||
lblk_alloc_elem_get(&dc->params,
|
||||
dc->zone_lblk_alloc, zone_lblk, dc->lblk_alloc);
|
||||
dc->zone_lblk_alloc, zone_lblk, dc->lblk_alloc_elem);
|
||||
|
||||
c_len = dc->lblk_alloc->len;
|
||||
c_len = dc->lblk_alloc_elem->len;
|
||||
if (c_len == 0) {
|
||||
memset(dc->lblk, 0, PBLK_SIZE * lblk_per_pblk(&dc->params));
|
||||
}
|
||||
|
@ -581,7 +581,7 @@ lblk_read(struct dm_compress* dc, u64 idx)
|
|||
}
|
||||
p = dc->lz4_cbuf;
|
||||
for (n = 0; n * PBLK_SIZE < c_len; ++n, p += PBLK_SIZE) {
|
||||
pblk = dc->lblk_alloc->pblk[n];
|
||||
pblk = dc->lblk_alloc_elem->pblk[n];
|
||||
BUG_ON(pblk == 0);
|
||||
ret = blkdev_pblk_read(dc->dev->bdev, pblk, 1, p);
|
||||
if (ret != 0) {
|
||||
|
@ -660,8 +660,8 @@ compress_free_buffers(struct dm_compress* dc)
|
|||
compress_free_pages(dc->lblk, PBLK_SIZE * lblk_per_pblk(&dc->params));
|
||||
dc->lblk = NULL;
|
||||
|
||||
kfree(dc->lblk_alloc);
|
||||
dc->lblk_alloc = NULL;
|
||||
kfree(dc->lblk_alloc_elem);
|
||||
dc->lblk_alloc_elem = NULL;
|
||||
|
||||
compress_free_pages(dc->zone_lblk_alloc, PBLK_SIZE * lblk_alloc_len(&dc->params));
|
||||
dc->zone_lblk_alloc = NULL;
|
||||
|
@ -709,9 +709,9 @@ compress_alloc_buffers(struct dm_compress* dc)
|
|||
}
|
||||
dc->lblk_num = LBLK_NONE;
|
||||
dc->lblk_dirty = false;
|
||||
dc->lblk_alloc = kmalloc(offsetof(struct lblk_alloc_elem, pblk[lblk_per_pblk(&dc->params)]), GFP_KERNEL);
|
||||
if (!dc->lblk_alloc) {
|
||||
printk(KERN_ERR "%s: Failed to alloc lblk_alloc\n", __func__);
|
||||
dc->lblk_alloc_elem = kmalloc(offsetof(struct lblk_alloc_elem, pblk[lblk_per_pblk(&dc->params)]), GFP_KERNEL);
|
||||
if (!dc->lblk_alloc_elem) {
|
||||
printk(KERN_ERR "%s: Failed to alloc lblk_alloc_elem\n", __func__);
|
||||
goto out_nomem;
|
||||
}
|
||||
dc->lblk = compress_alloc_pages(PBLK_SIZE * lblk_per_pblk(&dc->params));
|
||||
|
|
Loading…
Reference in New Issue