Re: [PATCH] iocost: don't nest spin_lock_irq in ioc_weight_write()

From: Tejun Heo
Date: Thu Oct 31 2019 - 12:50:27 EST


On Thu, Oct 31, 2019 at 01:53:41PM +0300, Dan Carpenter wrote:
> This code causes a static analysis warning:
>
> block/blk-iocost.c:2113 ioc_weight_write() error: double lock 'irq'
>
> We disable IRQs in blkg_conf_prep() and re-enable them in
> blkg_conf_finish(). IRQ disable/enable should not be nested because
> that means the IRQs will be enabled at the first unlock instead of the
> second one.
>
> Fixes: 7caa47151ab2 ("blkcg: implement blk-iocost")
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

Acked-by: Tejun Heo <tj@xxxxxxxxxx>

Thanks.

--
tejun