struct list_head *zlib_alloc_workspace(struct btrfs_fs_info *fs_info, unsigned int level)
{
- const u32 blocksize = fs_info->sectorsize;
struct workspace *workspace;
int workspacesize;
workspace->buf_size = ZLIB_DFLTCC_BUF_SIZE;
}
if (!workspace->buf) {
- workspace->buf = kmalloc(blocksize, GFP_KERNEL);
- workspace->buf_size = blocksize;
+ workspace->buf = kmalloc(fs_info->sectorsize, GFP_KERNEL);
+ workspace->buf_size = fs_info->sectorsize;
}
if (!workspace->strm.workspace || !workspace->buf)
goto fail;
char *data_in = NULL;
struct folio *in_folio = NULL;
struct folio *out_folio = NULL;
- const u32 blocksize = fs_info->sectorsize;
const u64 orig_end = start + len;
ret = zlib_deflateInit(&workspace->strm, workspace->level);
}
/* We're making it bigger, give up. */
- if (workspace->strm.total_in > blocksize * 2 &&
+ if (workspace->strm.total_in > fs_info->sectorsize * 2 &&
workspace->strm.total_in < workspace->strm.total_out) {
ret = -E2BIG;
goto out;