Skip to content
  • Fam Zheng's avatar
    bfq: Add per-device weight · 795fe54c
    Fam Zheng authored
    
    
    This adds to BFQ the missing per-device weight interfaces:
    blkio.bfq.weight_device on legacy and io.bfq.weight on unified. The
    implementation pretty closely resembles what we had in CFQ and the parsing code
    is basically reused.
    
    Tests
    =====
    
    Using two cgroups and three block devices, having weights setup as:
    
    Cgroup          test1           test2
    ============================================
    default         100             500
    sda             500             100
    sdb             default         default
    sdc             200             200
    
    cgroup v1 runs
    --------------
    
        sda.test1.out:   READ: bw=913MiB/s
        sda.test2.out:   READ: bw=183MiB/s
    
        sdb.test1.out:   READ: bw=213MiB/s
        sdb.test2.out:   READ: bw=1054MiB/s
    
        sdc.test1.out:   READ: bw=650MiB/s
        sdc.test2.out:   READ: bw=650MiB/s
    
    cgroup v2 runs
    --------------
    
        sda.test1.out:   READ: bw=915MiB/s
        sda.test2.out:   READ: bw=184MiB/s
    
        sdb.test1.out:   READ: bw=216MiB/s
        sdb.test2.out:   READ: bw=1069MiB/s
    
        sdc.test1.out:   READ: bw=621MiB/s
        sdc.test2.out:   READ: bw=622MiB/s
    
    Signed-off-by: default avatarFam Zheng <zhengfeiran@bytedance.com>
    Acked-by: default avatarTejun Heo <tj@kernel.org>
    Reviewed-by: default avatarPaolo Valente <paolo.valente@linaro.org>
    
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    795fe54c