• T
    blkcg: implement REQ_CGROUP_PUNT · d3f77dfd
    Tejun Heo 提交于
    When a shared kthread needs to issue a bio for a cgroup, doing so
    synchronously can lead to priority inversions as the kthread can be
    trapped waiting for that cgroup.  This patch implements
    REQ_CGROUP_PUNT flag which makes submit_bio() punt the actual issuing
    to a dedicated per-blkcg work item to avoid such priority inversions.
    
    This will be used to fix priority inversions in btrfs compression and
    should be generally useful as we grow filesystem support for
    comprehensive IO control.
    
    Cc: Chris Mason <clm@fb.com>
    Reviewed-by: NJosef Bacik <josef@toxicpanda.com>
    Reviewed-by: NJan Kara <jack@suse.cz>
    Signed-off-by: NTejun Heo <tj@kernel.org>
    Signed-off-by: NJens Axboe <axboe@kernel.dk>
    d3f77dfd
blk-cgroup.h 24.9 KB