Re: [PATCH 7/8] Btrfs: use REQ_CGROUP_PUNT for worker thread submitted bios

From: Josef Bacik
Date: Fri Jun 14 2019 - 09:54:59 EST


On Thu, Jun 13, 2019 at 05:33:49PM -0700, Tejun Heo wrote:
> From: Chris Mason <clm@xxxxxx>
>
> Async CRCs and compression submit IO through helper threads, which
> means they have IO priority inversions when cgroup IO controllers are
> in use.
>
> This flags all of the writes submitted by btrfs helper threads as
> REQ_CGROUP_PUNT. submit_bio() will punt these to dedicated per-blkcg
> work items to avoid the priority inversion.
>
> For the compression code, we take a reference on the wbc's blkg css and
> pass it down to the async workers.
>
> For the async crcs, the bio already has the correct css, we just need to
> tell the block layer to use REQ_CGROUP_PUNT.
>
> Signed-off-by: Chris Mason <clm@xxxxxx>
> Modified-and-reviewed-by: Tejun Heo <tj@xxxxxxxxxx>
> ---

Reviewed-by: Josef Bacik <josef@xxxxxxxxxxxxxx>

Thanks,

Josef