diff options
author | Fabian Frederick <fabf@skynet.be> | 2015-02-20 13:12:52 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-02-22 15:24:10 -0500 |
commit | 45cee4f594bcb3083c2d8475462af2f2ddf29aff (patch) | |
tree | 18c6d635c77105420915b2877c2f84ea281250ed | |
parent | 3f34b24a732bab9635c4b32823268c37c01b40f0 (diff) |
mISDN: replace current->state by set_current_state()
Use helper function to access current->state.
Direct assignments are prone to races and therefore buggy.
Thanks to Peter Zijlstra for the exact definition of the problem.
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/isdn/hardware/mISDN/hfcpci.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/isdn/hardware/mISDN/hfcpci.c b/drivers/isdn/hardware/mISDN/hfcpci.c index 3c92780bda09..ff48da61c94c 100644 --- a/drivers/isdn/hardware/mISDN/hfcpci.c +++ b/drivers/isdn/hardware/mISDN/hfcpci.c | |||
@@ -1755,7 +1755,7 @@ init_card(struct hfc_pci *hc) | |||
1755 | enable_hwirq(hc); | 1755 | enable_hwirq(hc); |
1756 | spin_unlock_irqrestore(&hc->lock, flags); | 1756 | spin_unlock_irqrestore(&hc->lock, flags); |
1757 | /* Timeout 80ms */ | 1757 | /* Timeout 80ms */ |
1758 | current->state = TASK_UNINTERRUPTIBLE; | 1758 | set_current_state(TASK_UNINTERRUPTIBLE); |
1759 | schedule_timeout((80 * HZ) / 1000); | 1759 | schedule_timeout((80 * HZ) / 1000); |
1760 | printk(KERN_INFO "HFC PCI: IRQ %d count %d\n", | 1760 | printk(KERN_INFO "HFC PCI: IRQ %d count %d\n", |
1761 | hc->irq, hc->irqcnt); | 1761 | hc->irq, hc->irqcnt); |