diff options
author | Fabian Frederick <fabf@skynet.be> | 2015-02-20 19:12:52 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-02-22 15:24:10 -0500 |
commit | 45cee4f594bcb3083c2d8475462af2f2ddf29aff (patch) | |
tree | 18c6d635c77105420915b2877c2f84ea281250ed | |
parent | 3f34b24a732bab9635c4b32823268c37c01b40f0 (diff) | |
download | op-kernel-dev-45cee4f594bcb3083c2d8475462af2f2ddf29aff.zip op-kernel-dev-45cee4f594bcb3083c2d8475462af2f2ddf29aff.tar.gz |
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 3c92780..ff48da6 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) enable_hwirq(hc); spin_unlock_irqrestore(&hc->lock, flags); /* Timeout 80ms */ - current->state = TASK_UNINTERRUPTIBLE; + set_current_state(TASK_UNINTERRUPTIBLE); schedule_timeout((80 * HZ) / 1000); printk(KERN_INFO "HFC PCI: IRQ %d count %d\n", hc->irq, hc->irqcnt); |