From 13d31894b3c459805303325aa5b91f9cd4ed70bc Mon Sep 17 00:00:00 2001 From: Pavel Emelianov Date: Sun, 15 Jul 2007 23:39:53 -0700 Subject: [PATCH] Make crypto API use seq_list_xxx helpers Simple and stupid - just use the same code from another place in the kernel. Signed-off-by: Pavel Emelianov Acked-by: Herbert Xu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- crypto/proc.c | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/crypto/proc.c b/crypto/proc.c index 102c751a12..3d73323ff7 100644 --- a/crypto/proc.c +++ b/crypto/proc.c @@ -23,24 +23,13 @@ static void *c_start(struct seq_file *m, loff_t *pos) { - struct list_head *v; - loff_t n = *pos; - down_read(&crypto_alg_sem); - list_for_each(v, &crypto_alg_list) - if (!n--) - return list_entry(v, struct crypto_alg, cra_list); - return NULL; + return seq_list_start(&crypto_alg_list, *pos); } static void *c_next(struct seq_file *m, void *p, loff_t *pos) { - struct list_head *v = p; - - (*pos)++; - v = v->next; - return (v == &crypto_alg_list) ? - NULL : list_entry(v, struct crypto_alg, cra_list); + return seq_list_next(p, &crypto_alg_list, pos); } static void c_stop(struct seq_file *m, void *p) @@ -50,7 +39,7 @@ static void c_stop(struct seq_file *m, void *p) static int c_show(struct seq_file *m, void *p) { - struct crypto_alg *alg = (struct crypto_alg *)p; + struct crypto_alg *alg = list_entry(p, struct crypto_alg, cra_list); seq_printf(m, "name : %s\n", alg->cra_name); seq_printf(m, "driver : %s\n", alg->cra_driver_name); -- 2.39.5