Message ID | 20220401102752.8599-1-jack@suse.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | bfq: Avoid use-after-free when moving processes between cgroups | expand |
On Fri, 1 Apr 2022 12:27:42 +0200, Jan Kara wrote: > bfq_setup_cooperator() can mark bic as stably merged even though it > decides to not merge its bfqqs (when bfq_setup_merge() returns NULL). > Make sure to mark bic as stably merged only if we are really going to > merge bfqqs. > > Applied, thanks! [1/9] bfq: Avoid false marking of bic as stably merged commit: 70456e5210f40ffdb8f6d905acfdcec5bd5fad9e [2/9] bfq: Avoid merging queues with different parents commit: c1cee4ab36acef271be9101590756ed0c0c374d9 [3/9] bfq: Split shared queues on move between cgroups commit: 3bc5e683c67d94bd839a1da2e796c15847b51b69 [4/9] bfq: Update cgroup information before merging bio commit: ea591cd4eb270393810e7be01feb8fde6a34fbbe [5/9] bfq: Drop pointless unlock-lock pair commit: fc84e1f941b91221092da5b3102ec82da24c5673 [6/9] bfq: Remove pointless bfq_init_rq() calls commit: 5f550ede5edf846ecc0067be1ba80514e6fe7f8e [7/9] bfq: Track whether bfq_group is still online commit: 09f871868080c33992cd6a9b72a5ca49582578fa [8/9] bfq: Get rid of __bio_blkcg() usage commit: 4e54a2493e582361adc3bfbf06c7d50d19d18837 [9/9] bfq: Make sure bfqg for which we are queueing requests is online commit: 075a53b78b815301f8d3dd1ee2cd99554e34f0dd Best regards,
diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index 2e0dd68a3cbe..6d122c28086e 100644 --- a/block/bfq-iosched.c +++ b/block/bfq-iosched.c @@ -2895,9 +2895,12 @@ bfq_setup_cooperator(struct bfq_data *bfqd, struct bfq_queue *bfqq, struct bfq_queue *new_bfqq = bfq_setup_merge(bfqq, stable_merge_bfqq); - bic->stably_merged = true; - if (new_bfqq && new_bfqq->bic) - new_bfqq->bic->stably_merged = true; + if (new_bfqq) { + bic->stably_merged = true; + if (new_bfqq->bic) + new_bfqq->bic->stably_merged = + true; + } return new_bfqq; } else return NULL;