diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2009-05-12 15:41:03 -0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2009-05-13 03:46:19 -0400 |
commit | c8a4fb472c5101ec52f94b1e1277b8fde4b823cf (patch) | |
tree | 29bda87e860224dd429799758edbc78d6823f5c2 /drivers/video/mx3fb.c | |
parent | c2e5307b902426247afa48d3f1ed4fa5409dcb49 (diff) |
FB: fix unsafe use of disable_irq() in mx3fb.c
mx3fb.c calls disable_irq() from a DMA callback, i.e., in an IRQ-handler
context, which has always been unsafe, and became deadly after the merge of
threaded interrupt handler support. Use disable_irq_nosync() instead.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/video/mx3fb.c')
-rw-r--r-- | drivers/video/mx3fb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c index 9894de1c9b9f..7a168ba65c64 100644 --- a/drivers/video/mx3fb.c +++ b/drivers/video/mx3fb.c | |||
@@ -706,7 +706,7 @@ static void mx3fb_dma_done(void *arg) | |||
706 | dev_dbg(mx3fb->dev, "irq %d callback\n", ichannel->eof_irq); | 706 | dev_dbg(mx3fb->dev, "irq %d callback\n", ichannel->eof_irq); |
707 | 707 | ||
708 | /* We only need one interrupt, it will be re-enabled as needed */ | 708 | /* We only need one interrupt, it will be re-enabled as needed */ |
709 | disable_irq(ichannel->eof_irq); | 709 | disable_irq_nosync(ichannel->eof_irq); |
710 | 710 | ||
711 | complete(&mx3_fbi->flip_cmpl); | 711 | complete(&mx3_fbi->flip_cmpl); |
712 | } | 712 | } |