summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeliang Tang <geliangtang@163.com>2015-11-16 22:37:15 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2015-11-23 20:55:51 +0800
commit510efb482ea38ea6df91d2e426c82ee451e390b9 (patch)
tree2a69d373b79ec4b1e86715032030c31ae8090ef5
parente556483473dcb68832f10f980265225233df219b (diff)
downloadlinux-crypto-510efb482ea38ea6df91d2e426c82ee451e390b9.tar.gz
linux-crypto-510efb482ea38ea6df91d2e426c82ee451e390b9.zip
crypto: mcryptd - use list_first_entry_or_null()
Simplify mcryptd_opportunistic_flush() with list_first_entry_or_null(). Signed-off-by: Geliang Tang <geliangtang@163.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/mcryptd.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/crypto/mcryptd.c b/crypto/mcryptd.c
index fe5b495a..f78d4fc4 100644
--- a/crypto/mcryptd.c
+++ b/crypto/mcryptd.c
@@ -128,13 +128,9 @@ static void mcryptd_opportunistic_flush(void)
flist = per_cpu_ptr(mcryptd_flist, smp_processor_id());
while (single_task_running()) {
mutex_lock(&flist->lock);
- if (list_empty(&flist->list)) {
- mutex_unlock(&flist->lock);
- return;
- }
- cstate = list_entry(flist->list.next,
+ cstate = list_first_entry_or_null(&flist->list,
struct mcryptd_alg_cstate, flush_list);
- if (!cstate->flusher_engaged) {
+ if (!cstate || !cstate->flusher_engaged) {
mutex_unlock(&flist->lock);
return;
}