[dm-devel] dm crypt: initialize tasklet in crypt_io_init()

Mike Snitzer snitzer at kernel.org
Mon Mar 6 19:31:47 UTC 2023


On Mon, Mar 06 2023 at  8:49P -0500,
Hou Tao <houtao at huaweicloud.com> wrote:

> From: Hou Tao <houtao1 at huawei.com>
> 
> When neither no_read_workqueue nor no_write_workqueue are enabled,
> tasklet_trylock() in crypt_dec_pending() may still return false due to
> an uninitialized state, and dm-crypt will do io completion in io_queue
> instead of current context unnecessarily.

Have you actually experienced this?

> Fix it by initializing io->tasklet in crypt_io_init().

Really would rather avoid always calling tasklet_init(). But I can
optimize it away with a later patch.

Mike



More information about the dm-devel mailing list