diff options
author | Michael Buesch <mb@bu3sch.de> | 2008-06-02 16:15:23 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-06-04 15:57:10 -0400 |
commit | a3bafeedfff2ac5fa0a316bea4570e27900b6fcc (patch) | |
tree | 2aba8fc4ccbaecff6cb9adaa632bb0922e517489 | |
parent | a75eda43dc4a64d0bd0502da546871c01f70e899 (diff) | |
download | linux-3.10-a3bafeedfff2ac5fa0a316bea4570e27900b6fcc.tar.gz linux-3.10-a3bafeedfff2ac5fa0a316bea4570e27900b6fcc.tar.bz2 linux-3.10-a3bafeedfff2ac5fa0a316bea4570e27900b6fcc.zip |
ssb: Fix context assertion in ssb_pcicore_dev_irqvecs_enable
This fixes a context assertion in ssb that makes b44 print
out warnings on resume.
This fixes the following kernel oops:
http://www.kerneloops.org/oops.php?number=12732
http://www.kerneloops.org/oops.php?number=11410
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/ssb/driver_pcicore.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ssb/driver_pcicore.c b/drivers/ssb/driver_pcicore.c index 75def13e797..d28c5386809 100644 --- a/drivers/ssb/driver_pcicore.c +++ b/drivers/ssb/driver_pcicore.c @@ -537,12 +537,12 @@ int ssb_pcicore_dev_irqvecs_enable(struct ssb_pcicore *pc, int err = 0; u32 tmp; - might_sleep(); - if (!pdev) goto out; bus = pdev->bus; + might_sleep_if(pdev->id.coreid != SSB_DEV_PCI); + /* Enable interrupts for this device. */ if (bus->host_pci && ((pdev->id.revision >= 6) || (pdev->id.coreid == SSB_DEV_PCIE))) { |