Hi Corentin, On Wed, Sep 19, 2018 at 10:10:54AM +0000, Corentin Labbe wrote: > +int crypto_dump_reportstat(struct sk_buff *skb, struct netlink_callback *cb) > +{ > + struct crypto_alg *alg; > + struct crypto_dump_info info; > + int err; > + > + if (cb->args[0]) > + goto out; > + > + cb->args[0] = 1; > + > + info.in_skb = cb->skb; > + info.out_skb = skb; > + info.nlmsg_seq = cb->nlh->nlmsg_seq; > + info.nlmsg_flags = NLM_F_MULTI; > + > + list_for_each_entry(alg, &crypto_alg_list, cra_list) { > + err = crypto_reportstat_alg(alg, &info); > + if (err) > + goto out_err; > + } > + > +out: > + return skb->len; > +out_err: > + return err; > +} > + > +int crypto_dump_reportstat_done(struct netlink_callback *cb) > +{ > + return 0; > +} How did you test this part? Hint: these functions are never executed. - Eric