diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/dahdi/voicebus/voicebus.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/dahdi/voicebus/voicebus.c b/drivers/dahdi/voicebus/voicebus.c index c98b64f..e77d0e1 100644 --- a/drivers/dahdi/voicebus/voicebus.c +++ b/drivers/dahdi/voicebus/voicebus.c @@ -787,6 +787,7 @@ static void setup_descriptors(struct voicebus *vb) struct vbb *vbb; dma_addr_t dma_addr; LIST_HEAD(buffers); + unsigned long flags; might_sleep(); @@ -831,7 +832,9 @@ static void setup_descriptors(struct voicebus *vb) list_add_tail(&vbb->entry, &buffers); } + local_irq_save(flags); handle_transmit(vb, &buffers); + local_irq_restore(flags); vb_disable_deferred(vb); while (!list_empty(&buffers)) { |