]> git.proxmox.com Git - pve-kernel-2.6.32.git/blame - dlm-use-single-thread-workqueues.patch
update to vzkernel-2.6.32-042stab045.1.src.rpm
[pve-kernel-2.6.32.git] / dlm-use-single-thread-workqueues.patch
CommitLineData
ed2a6bee
DM
1From 6b155c8fd4d239f7d883d455bbad1be47724bbfc Mon Sep 17 00:00:00 2001
2From: David Teigland <teigland@redhat.com>
3Date: Fri, 11 Feb 2011 16:44:31 -0600
4Subject: [PATCH 1/1] dlm: use single thread workqueues
5
6The recent commit to use cmwq for send and recv threads
7dcce240ead802d42b1e45ad2fcb2ed4a399cb255 introduced problems,
8apparently due to multiple workqueue threads. Single threads
9make the problems go away, so return to that until we fully
10understand the concurrency issues with multiple threads.
11
12Signed-off-by: David Teigland <teigland@redhat.com>
13---
14 fs/dlm/lowcomms.c | 6 ++----
15 1 files changed, 2 insertions(+), 4 deletions(-)
16
17diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
18index 9c64ae9..2d8c87b 100644
19--- a/fs/dlm/lowcomms.c
20+++ b/fs/dlm/lowcomms.c
21@@ -1468,15 +1468,13 @@ static void work_stop(void)
22
23 static int work_start(void)
24 {
25- recv_workqueue = alloc_workqueue("dlm_recv", WQ_MEM_RECLAIM |
26- WQ_HIGHPRI | WQ_FREEZEABLE, 0);
27+ recv_workqueue = create_singlethread_workqueue("dlm_recv");
28 if (!recv_workqueue) {
29 log_print("can't start dlm_recv");
30 return -ENOMEM;
31 }
32
33- send_workqueue = alloc_workqueue("dlm_send", WQ_MEM_RECLAIM |
34- WQ_HIGHPRI | WQ_FREEZEABLE, 0);
35+ send_workqueue = create_singlethread_workqueue("dlm_send");
36 if (!send_workqueue) {
37 log_print("can't start dlm_send");
38 destroy_workqueue(recv_workqueue);
39--
401.7.2.5
41