summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-09-05 14:35:56 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-09-05 14:35:56 -0700
commit45d866e1a06dba309f79dbb61ad1db964bb8ee8a (patch)
tree4fa600d4d319294fcec5f338a133c0db92436a49
parent6f74b1849bf04432c4a2fe21f594136e5b9d1fad (diff)
parentde24125dd0a452bfd4502fc448e3534c5d2e87aa (diff)
downloadlinux-45d866e1a06dba309f79dbb61ad1db964bb8ee8a.tar.bz2
Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx
* 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: async_tx: fix the bug in async_tx_run_dependencies
-rw-r--r--crypto/async_tx/async_tx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/crypto/async_tx/async_tx.c b/crypto/async_tx/async_tx.c
index 85eaf7b1c531..e8362c1efa30 100644
--- a/crypto/async_tx/async_tx.c
+++ b/crypto/async_tx/async_tx.c
@@ -137,7 +137,8 @@ async_tx_run_dependencies(struct dma_async_tx_descriptor *tx)
spin_lock_bh(&next->lock);
next->parent = NULL;
_next = next->next;
- next->next = NULL;
+ if (_next && _next->chan == chan)
+ next->next = NULL;
spin_unlock_bh(&next->lock);
next->tx_submit(next);