1. 18 Oct, 2017 9 commits
  2. 16 Oct, 2017 1 commit
  3. 05 Oct, 2017 1 commit
  4. 04 Oct, 2017 6 commits
  5. 03 Oct, 2017 17 commits
  6. 01 Oct, 2017 1 commit
  7. 30 Sep, 2017 2 commits
  8. 26 Sep, 2017 3 commits
    • Shaohua Li's avatar
      block: fix a build error · 0b508bc9
      Shaohua Li authored
      The code is only for blkcg not for all cgroups
      
      Fixes: d4478e92 ("block/loop: make loop cgroup aware")
      Reported-by: default avatarkbuild test robot <fengguang.wu@intel.com>
      Signed-off-by: default avatarShaohua Li <shli@fb.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      0b508bc9
    • Corentin Labbe's avatar
      block: cryptoloop - Fix build warning · 9979d545
      Corentin Labbe authored
      This patch fix the following build warning:
      drivers/block/cryptoloop.c:46:8: warning: variable 'cipher' set but not used [-Wunused-but-set-variable]
      Signed-off-by: default avatarCorentin Labbe <clabbe.montjoie@gmail.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      9979d545
    • Shaohua Li's avatar
      block/loop: make loop cgroup aware · d4478e92
      Shaohua Li authored
      loop block device handles IO in a separate thread. The actual IO
      dispatched isn't cloned from the IO loop device received, so the
      dispatched IO loses the cgroup context.
      
      I'm ignoring buffer IO case now, which is quite complicated.  Making the
      loop thread aware cgroup context doesn't really help. The loop device
      only writes to a single file. In current writeback cgroup
      implementation, the file can only belong to one cgroup.
      
      For direct IO case, we could workaround the issue in theory. For
      example, say we assign cgroup1 5M/s BW for loop device and cgroup2
      10M/s. We can create a special cgroup for loop thread and assign at
      least 15M/s for the underlayer disk. In this way, we correctly throttle
      the two cgroups. But this is tricky to setup.
      
      This patch tries to address the issue. We record bio's css in loop
      command. When loop thread is handling the command, we then use the API
      provided in patch 1 to set the css for current task. The bio layer will
      use the css for new IO (from patch 3).
      Acked-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarShaohua Li <shli@fb.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      d4478e92