Commit efcf0898 authored by David Sterba's avatar David Sterba
Browse files

btrfs: zlib: don't cache sectorsize in a local variable



The sectorsize is used once or at most twice in the callbacks, no need
to cache it on stack.

Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 4d083672
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -71,7 +71,6 @@ static bool need_special_buffer(struct btrfs_fs_info *fs_info)

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;

@@ -91,8 +90,8 @@ struct list_head *zlib_alloc_workspace(struct btrfs_fs_info *fs_info, unsigned i
		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;
@@ -159,7 +158,6 @@ int zlib_compress_bio(struct list_head *ws, struct compressed_bio *cb)
	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);
@@ -240,7 +238,7 @@ int zlib_compress_bio(struct list_head *ws, struct compressed_bio *cb)
		}

		/* 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;