Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
block, bfq: move forward the getting of an extra ref in bfq_bfqq_move
Commit ecedd3d ("block, bfq: get extra ref to prevent a queue from being freed during a group move") gets an extra reference to a bfq_queue before possibly deactivating it (temporarily), in bfq_bfqq_move(). This prevents the bfq_queue from disappearing before being reactivated in its new group. Yet, the bfq_queue may also be expired (i.e., its service may be stopped) before the bfq_queue is deactivated. And also an expiration may lead to a premature freeing. This commit fixes this issue by simply moving forward the getting of the extra reference already introduced by commit ecedd3d ("block, bfq: get extra ref to prevent a queue from being freed during a group move"). Reported-by: [email protected] Tested-by: [email protected] Signed-off-by: Paolo Valente <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
- Loading branch information