On Wed, Dec 05, 2018 at 04:04:59PM -0800, Eric Biggers wrote: > 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. > Right, it is not used, only crypto_reportstat is used by the getstat.c example tool. And for using it, I need to do changes in crypto_user_rcv_msg(). But I am not sure if it is interesting to do so. So I will send a patch for removing it. Regards