Unverified Commit f40e2e86 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!11290 Add exception protection processing for vd in axi_chan_handle_err function

parents 81002131 89cee4b1
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -551,6 +551,11 @@ static noinline void axi_chan_handle_err(struct axi_dma_chan *chan, u32 status)

	/* The bad descriptor currently is in the head of vc list */
	vd = vchan_next_desc(&chan->vc);
	if (!vd) {
		dev_err(chan2dev(chan), "BUG: %s, IRQ with no descriptors\n",
			axi_chan_name(chan));
		goto out;
	}
	/* Remove the completed descriptor from issued list */
	list_del(&vd->node);

@@ -565,6 +570,7 @@ static noinline void axi_chan_handle_err(struct axi_dma_chan *chan, u32 status)
	/* Try to restart the controller */
	axi_chan_start_first_queued(chan);

out:
	spin_unlock_irqrestore(&chan->vc.lock, flags);
}