summaryrefslogtreecommitdiffstats
path: root/patches/0053-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
blob: 4f1111d04fb87fc13f3f132a059cbf46d49b132a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From db0ea1693dee833faabe5a09d1c14a6eaa7e3205 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx@linutronix.de>
Date: Thu, 1 Dec 2011 00:07:16 +0100
Subject: [PATCH 053/274] pci: Use __wake_up_all_locked
 pci_unblock_user_cfg_access()

The waitqueue is protected by the pci_lock, so we can just avoid to
lock the waitqueue lock itself. That prevents the
might_sleep()/scheduling while atomic problem on RT

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable-rt@vger.kernel.org
---
 drivers/pci/access.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/access.c b/drivers/pci/access.c
index 2a58164..8e6a88e 100644
--- a/drivers/pci/access.c
+++ b/drivers/pci/access.c
@@ -463,7 +463,7 @@ void pci_cfg_access_unlock(struct pci_dev *dev)
 	WARN_ON(!dev->block_cfg_access);
 
 	dev->block_cfg_access = 0;
-	wake_up_all(&pci_cfg_wait);
+	wake_up_all_locked(&pci_cfg_wait);
 	raw_spin_unlock_irqrestore(&pci_lock, flags);
 }
 EXPORT_SYMBOL_GPL(pci_cfg_access_unlock);
-- 
1.7.10.4