dma: fix vchan_cookie_complete() debug print
authorJonas Jensen <jonas.jensen@gmail.com>
Fri, 6 Dec 2013 15:42:09 +0000 (16:42 +0100)
committerVinod Koul <vinod.koul@intel.com>
Sun, 26 Jan 2014 12:03:45 +0000 (17:33 +0530)
vd->tx.cookie is set zero on dma_cookie_complete(),
save to local before printing it.

Signed-off-by: Jonas Jensen <jonas.jensen@gmail.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/virt-dma.h

index 85c19d6..181b952 100644 (file)
@@ -84,10 +84,12 @@ static inline bool vchan_issue_pending(struct virt_dma_chan *vc)
 static inline void vchan_cookie_complete(struct virt_dma_desc *vd)
 {
        struct virt_dma_chan *vc = to_virt_chan(vd->tx.chan);
 static inline void vchan_cookie_complete(struct virt_dma_desc *vd)
 {
        struct virt_dma_chan *vc = to_virt_chan(vd->tx.chan);
+       dma_cookie_t cookie;
 
 
+       cookie = vd->tx.cookie;
        dma_cookie_complete(&vd->tx);
        dev_vdbg(vc->chan.device->dev, "txd %p[%x]: marked complete\n",
        dma_cookie_complete(&vd->tx);
        dev_vdbg(vc->chan.device->dev, "txd %p[%x]: marked complete\n",
-               vd, vd->tx.cookie);
+                vd, cookie);
        list_add_tail(&vd->node, &vc->desc_completed);
 
        tasklet_schedule(&vc->task);
        list_add_tail(&vd->node, &vc->desc_completed);
 
        tasklet_schedule(&vc->task);