mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 05:41:55 +00:00
crypto: algapi - Move stat reporting into algapi
The stats code resurrected the unions from the early days of kernel crypto. This patch starts the process of moving them out to the individual type structures as we do for everything else. In particular, add a report_stat function to cra_type and call that from the stats code if available. This allows us to move the actual code over one-by-one. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
a71b772ba0
commit
ed0733eaa5
@ -204,6 +204,12 @@ static int crypto_reportstat_one(struct crypto_alg *alg,
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (alg->cra_type && alg->cra_type->report_stat) {
|
||||
if (alg->cra_type->report_stat(skb, alg))
|
||||
goto nla_put_failure;
|
||||
goto out;
|
||||
}
|
||||
|
||||
switch (alg->cra_flags & (CRYPTO_ALG_TYPE_MASK | CRYPTO_ALG_LARVAL)) {
|
||||
case CRYPTO_ALG_TYPE_AEAD:
|
||||
if (crypto_report_aead(skb, alg))
|
||||
|
@ -50,6 +50,9 @@ struct crypto_type {
|
||||
void (*show)(struct seq_file *m, struct crypto_alg *alg);
|
||||
int (*report)(struct sk_buff *skb, struct crypto_alg *alg);
|
||||
void (*free)(struct crypto_instance *inst);
|
||||
#ifdef CONFIG_CRYPTO_STATS
|
||||
int (*report_stat)(struct sk_buff *skb, struct crypto_alg *alg);
|
||||
#endif
|
||||
|
||||
unsigned int type;
|
||||
unsigned int maskclear;
|
||||
|
Loading…
Reference in New Issue
Block a user