Skip to contentSkip to conversation

FAILED: patch "[PATCH] Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt" failed to apply to 4.19-stable tree

PATCH [email protected] 2 participants 4 messages Nov 26, 2019

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From f612b2132db529feac4f965f28a1b9258ea7c22b Mon Sep 17 00:00:00 2001
From: Mike Snitzer <[email protected]>
Date: Wed, 20 Nov 2019 17:27:39 -0500
Subject: [PATCH] Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt
workqueues"

This reverts commit a1b89132dc4f61071bdeaab92ea958e0953380a1.

Revert required hand-patching due to subsequent changes that were applied since commit a1b89132dc4f61071bdeaab92ea958e0953380a1.

Requires: ed0302e83098d ("dm crypt: make workqueue names device-specific")

drivers/md/dm-crypt.c +3 -6
index f87f6495652f..eb9782fc93fe 100644
@@ -2700,21 +2700,18 @@ static int crypt_ctr(struct dm_target *ti, unsigned int argc, char **argv)
 	}
 
 	ret = -ENOMEM;
-	cc->io_queue = alloc_workqueue("kcryptd_io/%s",
-				       WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
-				       1, devname);
+	cc->io_queue = alloc_workqueue("kcryptd_io/%s", WQ_MEM_RECLAIM, 1, devname);
 	if (!cc->io_queue) {
 		ti->error = "Couldn't create kcryptd io queue";
 		goto bad;
 	}
 
 	if (test_bit(DM_CRYPT_SAME_CPU, &cc->flags))
-		cc->crypt_queue = alloc_workqueue("kcryptd/%s",
-						  WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
+		cc->crypt_queue = alloc_workqueue("kcryptd/%s", WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
 						  1, devname);
 	else
 		cc->crypt_queue = alloc_workqueue("kcryptd/%s",
-						  WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM | WQ_UNBOUND,
+						  WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM | WQ_UNBOUND,
 						  num_online_cpus(), devname);
 	if (!cc->crypt_queue) {
 		ti->error = "Couldn't create kcryptd queue";
#1 lore raw
Quoted 10 lines · On Tue, Nov 26 2019 at 5:41am -0500, [email protected]…

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

I assume you didn't first pull in the prereq commit detailed in the commit header with:
Requires: ed0302e83098d ("dm crypt: make workqueue names device-specific")

?

Because this worked for me:
git cherry-pick ed0302e83098d
git cherry-pick f612b2132db529feac4f965f28a1b9258ea7c22b

Quoted 49 lines

------------------ original commit in Linus's tree ------------------

From f612b2132db529feac4f965f28a1b9258ea7c22b Mon Sep 17 00:00:00 2001
From: Mike Snitzer <[email protected]>
Date: Wed, 20 Nov 2019 17:27:39 -0500
Subject: [PATCH] Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt
workqueues"

This reverts commit a1b89132dc4f61071bdeaab92ea958e0953380a1.

Revert required hand-patching due to subsequent changes that were applied since commit a1b89132dc4f61071bdeaab92ea958e0953380a1.

Requires: ed0302e83098d ("dm crypt: make workqueue names device-specific")

drivers/md/dm-crypt.c +3 -6
index f87f6495652f..eb9782fc93fe 100644
@@ -2700,21 +2700,18 @@ static int crypt_ctr(struct dm_target *ti, unsigned int argc, char **argv)
 	}
 
 	ret = -ENOMEM;
-	cc->io_queue = alloc_workqueue("kcryptd_io/%s",
-				       WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
-				       1, devname);
+	cc->io_queue = alloc_workqueue("kcryptd_io/%s", WQ_MEM_RECLAIM, 1, devname);
 	if (!cc->io_queue) {
 		ti->error = "Couldn't create kcryptd io queue";
 		goto bad;
 	}
 
 	if (test_bit(DM_CRYPT_SAME_CPU, &cc->flags))
-		cc->crypt_queue = alloc_workqueue("kcryptd/%s",
-						  WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
+		cc->crypt_queue = alloc_workqueue("kcryptd/%s", WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM,
 						  1, devname);
 	else
 		cc->crypt_queue = alloc_workqueue("kcryptd/%s",
-						  WQ_HIGHPRI | WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM | WQ_UNBOUND,
+						  WQ_CPU_INTENSIVE | WQ_MEM_RECLAIM | WQ_UNBOUND,
 						  num_online_cpus(), devname);
 	if (!cc->crypt_queue) {
 		ti->error = "Couldn't create kcryptd queue";
author maintainer
#2 lore raw
Quoted 18 lines · Mike Snitzer
Quoted 10 lines · On Tue, Nov 26 2019 at 5:41am -0500, [email protected]…

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

I assume you didn't first pull in the prereq commit detailed in the commit header with:
Requires: ed0302e83098d ("dm crypt: make workqueue names device-specific")

Quoted 5 lines

?

Because this worked for me:
git cherry-pick ed0302e83098d
git cherry-pick f612b2132db529feac4f965f28a1b9258ea7c22b

Oops, missed that, will go try that now, sorry for the noise...

greg k-h

author maintainer
#3 lore raw
Quoted 19 lines · Greg KH
Quoted 18 lines · Mike Snitzer
Quoted 10 lines · On Tue, Nov 26 2019 at 5:41am -0500, [email protected]…

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

I assume you didn't first pull in the prereq commit detailed in the commit header with:
Requires: ed0302e83098d ("dm crypt: make workqueue names device-specific")

Quoted 7 lines
Quoted 5 lines

?

Because this worked for me:
git cherry-pick ed0302e83098d
git cherry-pick f612b2132db529feac4f965f28a1b9258ea7c22b

Oops, missed that, will go try that now, sorry for the noise...

Nope, that did not work, the build breaks on both 4.14.y and 4.19.y:

drivers/md/dm-crypt.c: In function ‘crypt_ctr’:
drivers/md/dm-crypt.c:2674:24: error: implicit declaration of function ‘dm_table_device_name’; did you mean ‘dm_device_name’? [-Werror=implicit-function-declaration]

 2674 |  const char *devname = dm_table_device_name(ti->table);
      |                        ^~~~~~~~~~~~~~~~~~~~
      |                        dm_device_name

So we need working backports for 4.14.y and 4.19.y please. I'm going to go drop these patches from those queues now.

thanks,

greg k-h