Commit 4b24ea97 authored by Vishnu Suresh's avatar Vishnu Suresh Committed by Herbert Xu

crypto: talitos - Preempt overflow interrupts off-by-one fix

In commit ec6644d6 "crypto: talitos - Preempt
overflow interrupts", the test in atomic_inc_not_zero was interpreted by the
author to be applied after the increment operation (not before). This off-by-one
fix prevents overflow error interrupts from occurring when requests are frequent
and large enough to do so.
Signed-off-by: default avatarVishnu Suresh <Vishnu@freescale.com>
Signed-off-by: default avatarKim Phillips <kim.phillips@freescale.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 32bd78e0
...@@ -1598,7 +1598,7 @@ static int talitos_probe(struct of_device *ofdev, ...@@ -1598,7 +1598,7 @@ static int talitos_probe(struct of_device *ofdev,
goto err_out; goto err_out;
} }
for (i = 0; i < priv->num_channels; i++) for (i = 0; i < priv->num_channels; i++)
atomic_set(&priv->submit_count[i], -priv->chfifo_len); atomic_set(&priv->submit_count[i], -(priv->chfifo_len - 1));
priv->head = kzalloc(sizeof(int) * priv->num_channels, GFP_KERNEL); priv->head = kzalloc(sizeof(int) * priv->num_channels, GFP_KERNEL);
priv->tail = kzalloc(sizeof(int) * priv->num_channels, GFP_KERNEL); priv->tail = kzalloc(sizeof(int) * priv->num_channels, GFP_KERNEL);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment