cfq-iosched: Remove the check for same cfq group from allow_merge
authorVivek Goyal <vgoyal@redhat.com>
Wed, 16 Dec 2009 22:52:57 +0000 (17:52 -0500)
committerJens Axboe <jens.axboe@oracle.com>
Fri, 18 Dec 2009 11:40:21 +0000 (12:40 +0100)
commit1db32c40600437c5e049796bd32f49f61244c6ef
tree09f72cf149d7d9034bc3cbcf9597e413c081c5d3
parent4a63b030d75a063b910b2bab014d84837cb33eb7
cfq-iosched: Remove the check for same cfq group from allow_merge

o allow_merge() already checks if submitting task is pointing to same cfqq
  as rq has been queued in. If everything is fine, we should not be having
  a task in one cgroup and having a pointer to cfqq in other cgroup.

  Well I guess in some situations it can happen and that is, when a random
  IO queue has been moved into root cgroup for group_isolation=0. In
  this case, tasks's cgroup/group is different from where actually cfqq is,
  but this is intentional and in this case merging should be allowed.

  The second situation is where due to close cooperator patches, multiple
  processes can be sharing a cfqq. If everything implemented right, we should
  not end up in a situation where tasks from different processes in different
  groups are sharing the same cfqq as we allow merging of cooperating queues
  only if they are in same group.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Reviewed-by: Gui Jianfeng <guijianfeng@cn.fujitsu.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
block/cfq-iosched.c