Re: nbd: please don't spawn 16 threads when nbd is not even in use

From: Yu Kuai
Date: Wed Nov 23 2022 - 20:18:05 EST


Hi,

在 2022/11/24 6:01, Pavel Machek 写道:
Hi!

I see this... and it looks like there are 16 workqueues before nbd is
even used. Surely there are better ways to do that?

Yes, it would be nice to create a pool of workers that only spawns up
threads when actual parallel requests are made. Are you willing to
help write the patch?

I was thinking more "only spawn a workqueue when nbd is opened" or so.

I have 16 of them, and I'm not using nbd. Workqueue per open device is
okay, current situation... not so much.

You can take a look at this commit:

e2daec488c57 ("nbd: Fix hungtask when nbd_config_put")

Allocation of recv_workq is moved from start device to alloc device to
fix hungtask. You might need to be careful if you want to move this.

Thanks,
Kuai

Pavel