]> git.baikalelectronics.ru Git - kernel.git/commit
btrfs: add compression interface in (get/put)_workspace
authorDennis Zhou <dennis@kernel.org>
Mon, 4 Feb 2019 20:20:02 +0000 (15:20 -0500)
committerDavid Sterba <dsterba@suse.com>
Mon, 25 Feb 2019 13:13:31 +0000 (14:13 +0100)
commita61311eff514eacee3c459dc2bf453aa230cafc1
tree28d0eac1d6c20a6dfed8e0c360ca643c648e4777
parent16e058b5bee907e2ce3759a48450d58bff054d08
btrfs: add compression interface in (get/put)_workspace

There are two levels of workspace management. First, alloc()/free()
which are responsible for actually creating and destroy workspaces.
Second, at a higher level, get()/put() which is the compression code
asking for a workspace from a workspace_manager.

The compression code shouldn't really care how it gets a workspace, but
that it got a workspace. This adds get_workspace() and put_workspace()
to be the higher level interface which is responsible for indexing into
the appropriate compression type. It also introduces
btrfs_put_workspace() and btrfs_get_workspace() to be the generic
implementations of the higher interface.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Dennis Zhou <dennis@kernel.org>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/compression.c