On Tue 30-11-21 13:46:34, Christoph Hellwig wrote: > Move the code to delay freeing the icqs into a separate helper. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > block/blk-ioc.c | 38 +++++++++++++++++++------------------- > 1 file changed, 19 insertions(+), 19 deletions(-) > > diff --git a/block/blk-ioc.c b/block/blk-ioc.c > index 04f3d2b0ca7db..902bca2b273ba 100644 > --- a/block/blk-ioc.c > +++ b/block/blk-ioc.c > @@ -143,6 +143,24 @@ static void ioc_release_fn(struct work_struct *work) > kmem_cache_free(iocontext_cachep, ioc); > } > > +/* > + * Releasing icqs requires reverse order double locking and we may already be > + ( holding a queue_lock. Do it asynchronously from a workqueue. ^^^ typo here Otherwise looks good. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR