struct videobuf_dmabuf *dma=videobuf_to_dma(&buf->vb);
        DEB_EE("dev:%p, buf:%p\n", dev, buf);
 
-       BUG_ON(in_interrupt());
-
        videobuf_waiton(q, &buf->vb, 0, 0);
        videobuf_dma_unmap(q->dev, dma);
        videobuf_dma_free(dma);
 
 {
        struct videobuf_dmabuf *dma=videobuf_to_dma(&buf->vb);
 
-       BUG_ON(in_interrupt());
        videobuf_waiton(q, &buf->vb, 0, 0);
        videobuf_dma_unmap(q->dev, dma);
        videobuf_dma_free(dma);
 
 {
        struct cx23885_riscmem *risc = &buf->risc;
 
-       BUG_ON(in_interrupt());
        pci_free_consistent(dev->pci, risc->size, risc->cpu, risc->dma);
 }
 
 
 
 void cx25821_free_buffer(struct cx25821_dev *dev, struct cx25821_buffer *buf)
 {
-       BUG_ON(in_interrupt());
        if (WARN_ON(buf->risc.size == 0))
                return;
        pci_free_consistent(dev->pci,
 
        struct videobuf_buffer *vb = &buf->vb;
        void *vaddr = NULL;
 
-       BUG_ON(in_interrupt());
-
        videobuf_waiton(vq, &buf->vb, 0, 0);
 
        if (vq->int_ops && vq->int_ops->vaddr)
 
        struct tm6000_core   *dev = fh->dev;
        unsigned long flags;
 
-       BUG_ON(in_interrupt());
-
        /* We used to wait for the buffer to finish here, but this didn't work
           because, as we were keeping the state as VIDEOBUF_QUEUED,
           videobuf_queue_cancel marked it as finished for us.
 
 {
        _DBG("%s\n", __func__);
 
-       BUG_ON(in_interrupt());
-
        videobuf_vmalloc_free(&buf->vb);
        buf->vb.state = VIDEOBUF_NEEDS_INIT;
 }