]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.9.49/workqueue-fix-flag-collision.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.9.49 / workqueue-fix-flag-collision.patch
1 From fbf1c41fc0f4d3574ac2377245efd666c1fa3075 Mon Sep 17 00:00:00 2001
2 From: Ben Hutchings <ben@decadent.org.uk>
3 Date: Sun, 3 Sep 2017 01:18:41 +0100
4 Subject: workqueue: Fix flag collision
5
6 From: Ben Hutchings <ben@decadent.org.uk>
7
8 commit fbf1c41fc0f4d3574ac2377245efd666c1fa3075 upstream.
9
10 Commit 0a94efb5acbb ("workqueue: implicit ordered attribute should be
11 overridable") introduced a __WQ_ORDERED_EXPLICIT flag but gave it the
12 same value as __WQ_LEGACY. I don't believe these were intended to
13 mean the same thing, so renumber __WQ_ORDERED_EXPLICIT.
14
15 Fixes: 0a94efb5acbb ("workqueue: implicit ordered attribute should be ...")
16 Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
17 Signed-off-by: Tejun Heo <tj@kernel.org>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
19
20 ---
21 include/linux/workqueue.h | 2 +-
22 1 file changed, 1 insertion(+), 1 deletion(-)
23
24 --- a/include/linux/workqueue.h
25 +++ b/include/linux/workqueue.h
26 @@ -311,8 +311,8 @@ enum {
27
28 __WQ_DRAINING = 1 << 16, /* internal: workqueue is draining */
29 __WQ_ORDERED = 1 << 17, /* internal: workqueue is ordered */
30 - __WQ_ORDERED_EXPLICIT = 1 << 18, /* internal: alloc_ordered_workqueue() */
31 __WQ_LEGACY = 1 << 18, /* internal: create*_workqueue() */
32 + __WQ_ORDERED_EXPLICIT = 1 << 19, /* internal: alloc_ordered_workqueue() */
33
34 WQ_MAX_ACTIVE = 512, /* I like 512, better ideas? */
35 WQ_MAX_UNBOUND_PER_CPU = 4, /* 4 * #cpus for unbound wq */