Re: [PATCH] block: bfq: swap puts in bfqg_and_blkg_put

From: Paolo Valente
Date: Thu Sep 06 2018 - 13:30:53 EST




> Il giorno 06 set 2018, alle ore 10:05, Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx> ha scritto:
>
> Fix trivial use-after-free. This could be last reference to bfqg.
>

Acked-by: Paolo Valente <paolo.valente@xxxxxxxxxx>

> Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
> Fixes: 8f9bebc33dd7 ("block, bfq: access and cache blkg data only when safe")
> ---
> block/bfq-cgroup.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/block/bfq-cgroup.c b/block/bfq-cgroup.c
> index 58c6efa9f9a9..9fe5952d117d 100644
> --- a/block/bfq-cgroup.c
> +++ b/block/bfq-cgroup.c
> @@ -275,9 +275,9 @@ static void bfqg_and_blkg_get(struct bfq_group *bfqg)
>
> void bfqg_and_blkg_put(struct bfq_group *bfqg)
> {
> - bfqg_put(bfqg);
> -
> blkg_put(bfqg_to_blkg(bfqg));
> +
> + bfqg_put(bfqg);
> }
>
> /* @stats = 0 */
>