blob: 6bdc5ad2291fb5ea8f4360c713072b2bfbb6015b [file] [log] [blame]
From 522ecd1cf18899a6c436421d8c5eb4684fdcc2f1 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur@redhat.com>
Date: Thu, 15 Oct 2009 21:09:32 +0200
Subject: [PATCH] ipc: fix rt/non_rt imbalance
commit 1920d618c37ee53bb424a32f26076af2fa5b2a8b in tip.
commit 3c96a2 (ipc: Make the ipc code -rt aware) introduced a
imbalance of preempt_disable_rt vs. preempt_enable_nort. That results
in preempt count leak.
Make it symetric.
Reported-by: Joerg Abraham <Joerg.Abraham@alcatel-lucent.de>
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index 02ee4ff..5bcb571 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -828,7 +828,7 @@ static inline void pipelined_send(struct mqueue_inode_info *info,
wake_up_process(receiver->task);
smp_wmb();
receiver->state = STATE_READY;
- preempt_enable_nort();
+ preempt_enable_rt();
}
/* pipelined_receive() - if there is task waiting in sys_mq_timedsend()
--
1.7.1.1