dm crypt: use in_hardirq() instead of deprecated in_irq()
authorChangbin Du <changbin.du@gmail.com>
Sat, 14 Aug 2021 01:09:09 +0000 (09:09 +0800)
committerMike Snitzer <snitzer@redhat.com>
Fri, 20 Aug 2021 20:25:07 +0000 (16:25 -0400)
Signed-off-by: Changbin Du <changbin.du@gmail.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-crypt.c

index 9d15872..916b7da 100644 (file)
@@ -2223,11 +2223,11 @@ static void kcryptd_queue_crypt(struct dm_crypt_io *io)
        if ((bio_data_dir(io->base_bio) == READ && test_bit(DM_CRYPT_NO_READ_WORKQUEUE, &cc->flags)) ||
            (bio_data_dir(io->base_bio) == WRITE && test_bit(DM_CRYPT_NO_WRITE_WORKQUEUE, &cc->flags))) {
                /*
-                * in_irq(): Crypto API's skcipher_walk_first() refuses to work in hard IRQ context.
+                * in_hardirq(): Crypto API's skcipher_walk_first() refuses to work in hard IRQ context.
                 * irqs_disabled(): the kernel may run some IO completion from the idle thread, but
                 * it is being executed with irqs disabled.
                 */
-               if (in_irq() || irqs_disabled()) {
+               if (in_hardirq() || irqs_disabled()) {
                        tasklet_init(&io->tasklet, kcryptd_crypt_tasklet, (unsigned long)&io->work);
                        tasklet_schedule(&io->tasklet);
                        return;