summaryrefslogtreecommitdiffstats
path: root/scripts/ver_linux
diff options
context:
space:
mode:
authorTejun Heo2015-08-18 23:54:52 +0200
committerJens Axboe2015-08-19 00:49:15 +0200
commit1ed8d48c57bf7400eac7b8dc622ab0413715cafb (patch)
treecca6d4773d4f043cb5b9feb766441c7c26401d25 /scripts/ver_linux
parentMerge branch 'for-4.3-unified-base' of git://git.kernel.org/pub/scm/linux/ker... (diff)
downloadkernel-qcow2-linux-1ed8d48c57bf7400eac7b8dc622ab0413715cafb.tar.gz
kernel-qcow2-linux-1ed8d48c57bf7400eac7b8dc622ab0413715cafb.tar.xz
kernel-qcow2-linux-1ed8d48c57bf7400eac7b8dc622ab0413715cafb.zip
writeback: bdi_for_each_wb() iteration is memcg ID based not blkcg
wb's (bdi_writeback's) are currently keyed by memcg ID; however, in an earlier implementation, wb's were keyed by blkcg ID. bdi_for_each_wb() walks bdi->cgwb_tree in the ascending ID order and allows iterations to start from an arbitrary ID which is used to interrupt and resume iterations. Unfortunately, while changing wb to be keyed by memcg ID instead of blkcg, bdi_for_each_wb() was missed and is still assuming that wb's are keyed by blkcg ID. This doesn't affect iterations which don't get interrupted but bdi_split_work_to_wbs() makes use of iteration resuming on allocation failures and thus may incorrectly skip or repeat wb's. Fix it by changing bdi_for_each_wb() to take memcg IDs instead of blkcg IDs and updating bdi_split_work_to_wbs() accordingly. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'scripts/ver_linux')
0 files changed, 0 insertions, 0 deletions