Commit 320bdbd8 authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Herbert Xu

crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist is fully iterated

When a list is completely iterated with 'list_for_each_entry(x, ...)', x is
not NULL at the end.

While at it, remove a useless initialization of the ndev variable. It
is overridden by 'list_for_each_entry'.

Fixes: f2663872 ("crypto: cavium - Register the CNN55XX supported crypto algorithms.")
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 281c3778
...@@ -278,7 +278,7 @@ static void nitrox_remove_from_devlist(struct nitrox_device *ndev) ...@@ -278,7 +278,7 @@ static void nitrox_remove_from_devlist(struct nitrox_device *ndev)
struct nitrox_device *nitrox_get_first_device(void) struct nitrox_device *nitrox_get_first_device(void)
{ {
struct nitrox_device *ndev = NULL; struct nitrox_device *ndev;
mutex_lock(&devlist_lock); mutex_lock(&devlist_lock);
list_for_each_entry(ndev, &ndevlist, list) { list_for_each_entry(ndev, &ndevlist, list) {
...@@ -286,7 +286,7 @@ struct nitrox_device *nitrox_get_first_device(void) ...@@ -286,7 +286,7 @@ struct nitrox_device *nitrox_get_first_device(void)
break; break;
} }
mutex_unlock(&devlist_lock); mutex_unlock(&devlist_lock);
if (!ndev) if (&ndev->list == &ndevlist)
return NULL; return NULL;
refcount_inc(&ndev->refcnt); refcount_inc(&ndev->refcnt);
......
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