Hi all, the current code to offload bio submission into a cgroup-specific helper thread when sent from the btrfs internal helper threads is a bit ugly. This series moves it into btrfs with minimal interference in the core code. I also wonder if the better way to handle this in the long would be to to allow multiple writeback threads per device and cgroup, which should remove the need for both the btrfs submission helper workqueue and the per-cgroup threads. Diffstat: block/Kconfig | 3 + block/blk-cgroup.c | 78 +++++++++++++++++++++++++--------------------- block/blk-cgroup.h | 15 +------- block/blk-core.c | 3 - fs/btrfs/Kconfig | 1 fs/btrfs/bio.c | 12 ++++--- fs/btrfs/bio.h | 3 + fs/btrfs/compression.c | 8 ---- fs/btrfs/compression.h | 1 fs/btrfs/extent_io.c | 6 +-- fs/btrfs/inode.c | 37 +++++++++++---------- include/linux/bio.h | 5 ++ include/linux/blk_types.h | 18 ++-------- include/linux/writeback.h | 5 -- 14 files changed, 94 insertions(+), 101 deletions(-)