From 23fa18eaa71266feff7ba8d83022d9e1cc83c65a Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Fri, 10 May 2024 07:42:03 +0000
Subject: [PATCH] disable pwm7

---
 kernel/drivers/md/dm-default-key.c |   19 +++++++------------
 1 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/kernel/drivers/md/dm-default-key.c b/kernel/drivers/md/dm-default-key.c
index 0b10ab3..eaa8329 100644
--- a/kernel/drivers/md/dm-default-key.c
+++ b/kernel/drivers/md/dm-default-key.c
@@ -67,16 +67,13 @@
 static void default_key_dtr(struct dm_target *ti)
 {
 	struct default_key_c *dkc = ti->private;
-	int err;
 
 	if (dkc->dev) {
-		err = blk_crypto_evict_key(dkc->dev->bdev->bd_queue, &dkc->key);
-		if (err && err != -ENOKEY)
-			DMWARN("Failed to evict crypto key: %d", err);
+		blk_crypto_evict_key(bdev_get_queue(dkc->dev->bdev), &dkc->key);
 		dm_put_device(ti, dkc->dev);
 	}
-	kzfree(dkc->cipher_string);
-	kzfree(dkc);
+	kfree_sensitive(dkc->cipher_string);
+	kfree_sensitive(dkc);
 }
 
 static int default_key_ctr_optional(struct dm_target *ti,
@@ -245,17 +242,14 @@
 		goto bad;
 	}
 
-	err = blk_crypto_start_using_mode(cipher->mode_num, dun_bytes,
-					  dkc->sector_size, dkc->is_hw_wrapped,
-					  dkc->dev->bdev->bd_queue);
+	err = blk_crypto_start_using_key(&dkc->key,
+					 bdev_get_queue(dkc->dev->bdev));
 	if (err) {
 		ti->error = "Error starting to use blk-crypto";
 		goto bad;
 	}
 
 	ti->num_flush_bios = 1;
-
-	ti->may_passthrough_inline_crypto = true;
 
 	err = 0;
 	goto out;
@@ -388,7 +382,7 @@
 	const unsigned int sector_size = dkc->sector_size;
 
 	limits->logical_block_size =
-		max_t(unsigned short, limits->logical_block_size, sector_size);
+		max_t(unsigned int, limits->logical_block_size, sector_size);
 	limits->physical_block_size =
 		max_t(unsigned int, limits->physical_block_size, sector_size);
 	limits->io_min = max_t(unsigned int, limits->io_min, sector_size);
@@ -397,6 +391,7 @@
 static struct target_type default_key_target = {
 	.name			= "default-key",
 	.version		= {2, 1, 0},
+	.features		= DM_TARGET_PASSES_CRYPTO,
 	.module			= THIS_MODULE,
 	.ctr			= default_key_ctr,
 	.dtr			= default_key_dtr,

--
Gitblit v1.6.2