[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1ef277bb-8591-6029-2e9b-319820b3460c@kernel.dk>
Date: Wed, 6 Nov 2019 17:08:59 -0700
From: Jens Axboe <axboe@...nel.dk>
To: Tejun Heo <tj@...nel.org>
Cc: Roman Gushchin <guro@...com>, linux-block@...r.kernel.org,
cgroups@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel-team@...com, Josef Bacik <jbacik@...com>
Subject: Re: [PATCH block/for-5.4-fixes] blkcg: make blkcg_print_stat() print
stats only for online blkgs
On 11/5/19 9:09 AM, Tejun Heo wrote:
> blkcg_print_stat() iterates blkgs under RCU and doesn't test whether
> the blkg is online. This can call into pd_stat_fn() on a pd which is
> still being initialized leading to an oops.
>
> The heaviest operation - recursively summing up rwstat counters - is
> already done while holding the queue_lock. Expand queue_lock to cover
> the other operations and skip the blkg if it isn't online yet. The
> online state is protected by both blkcg and queue locks, so this
> guarantees that only online blkgs are processed.
Applied, thanks Tejun.
--
Jens Axboe
Powered by blists - more mailing lists