From: "Youquan,Song" <youquan.song@linux.intel.com>
To: herbert@gondor.apana.org.au
Cc: linux-kernel@vger.kernel.org, ying.huang@intel.com,
kent.liu@intel.com, youquan.song@intel.com
Subject: [PATCH]crypto: Fix complain about lack test for internal used algorithm
Date: Fri, 11 Dec 2009 08:23:21 -0500 [thread overview]
Message-ID: <20091211132321.GA17228@youquan-linux.bj.intel.com> (raw)
In-Reply-To: <1260509771.12346.138.camel@localhost>
When load aesni-intel and ghash_clmulni-intel driver,kernel will complain no
test for some internal used algorithm.
The strange information as following:
alg: No test for __aes-aesni (__driver-aes-aesni)
alg: No test for __ecb-aes-aesni (__driver-ecb-aes-aesni)
alg: No test for __cbc-aes-aesni (__driver-cbc-aes-aesni)
alg: No test for __ecb-aes-aesni (cryptd(__driver-ecb-aes-aesni)
alg: No test for __ghash (__ghash-pclmulqdqni)
alg: No test for __ghash (cryptd(__ghash-pclmulqdqni))
After summarize, the internal used algorithm driver with priority equal 0 or
equal 50 when cryptd is used.
This patch add function to check driver is internal used and will shut up when
internal driver is not tested.
Signed-off-by: Youquan, Song <youquan.song@intel.com>
Signed-off-by: Ying, Huang <ying.huang@intel.com>
---
diff --git a/crypto/algapi.c b/crypto/algapi.c
index a03ebcb..a602223 100644
--- a/crypto/algapi.c
+++ b/crypto/algapi.c
@@ -18,6 +18,7 @@
#include <linux/module.h>
#include <linux/rtnetlink.h>
#include <linux/string.h>
+#include <crypto/cryptd.h>
#include "internal.h"
@@ -243,6 +244,32 @@ err:
goto out;
}
+int crypto_is_internal(const char *driver)
+{
+ struct crypto_alg *q;
+ int found = 0;
+
+ list_for_each_entry(q, &crypto_alg_list, cra_list) {
+ if (!strcmp(q->cra_driver_name, driver)) {
+ found = 1;
+ break;
+ }
+ }
+
+ if (found) {
+
+ if (q->cra_priority == 0)
+ return 1;
+ if (q->cra_priority == CRYPTD_PRIORITY_ADDITION &&
+ strstr(q->cra_driver_name, "cryptd"))
+ return 1;
+ }
+
+ return 0;
+
+}
+EXPORT_SYMBOL_GPL(crypto_is_internal);
+
void crypto_alg_tested(const char *name, int err)
{
struct crypto_larval *test;
diff --git a/crypto/cryptd.c b/crypto/cryptd.c
index f8ae0d9..79785b7 100644
--- a/crypto/cryptd.c
+++ b/crypto/cryptd.c
@@ -275,7 +275,7 @@ static void *cryptd_alloc_instance(struct crypto_alg *alg, unsigned int head,
memcpy(inst->alg.cra_name, alg->cra_name, CRYPTO_MAX_ALG_NAME);
- inst->alg.cra_priority = alg->cra_priority + 50;
+ inst->alg.cra_priority = alg->cra_priority + CRYPTD_PRIORITY_ADDITION;
inst->alg.cra_blocksize = alg->cra_blocksize;
inst->alg.cra_alignmask = alg->cra_alignmask;
diff --git a/crypto/internal.h b/crypto/internal.h
index 2d22636..23b6498 100644
--- a/crypto/internal.h
+++ b/crypto/internal.h
@@ -101,6 +101,8 @@ int crypto_register_notifier(struct notifier_block *nb);
int crypto_unregister_notifier(struct notifier_block *nb);
int crypto_probing_notify(unsigned long val, void *v);
+int crypto_is_internal(const char *driver);
+
static inline void crypto_alg_put(struct crypto_alg *alg)
{
if (atomic_dec_and_test(&alg->cra_refcnt) && alg->cra_destroy)
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index fe68115..542941c 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -2413,7 +2413,8 @@ test_done:
return rc;
notest:
- printk(KERN_INFO "alg: No test for %s (%s)\n", alg, driver);
+ if (!crypto_is_internal(driver))
+ printk(KERN_INFO "alg: No test for %s (%s)\n", alg, driver);
return 0;
non_fips_alg:
return -EINVAL;
diff --git a/include/crypto/cryptd.h b/include/crypto/cryptd.h
index 1c96b25..50cd473 100644
--- a/include/crypto/cryptd.h
+++ b/include/crypto/cryptd.h
@@ -9,6 +9,8 @@
#include <linux/kernel.h>
#include <crypto/hash.h>
+#define CRYPTD_PRIORITY_ADDITION 50
+
struct cryptd_ablkcipher {
struct crypto_ablkcipher base;
};
next prev parent reply other threads:[~2009-12-11 5:47 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-09 13:49 [PATCH 0/3] gpiolib: gpio naming in sysfs Jani Nikula
2009-12-09 13:49 ` [PATCH 1/3] device class: add symlink creation helpers Jani Nikula
2009-12-09 13:49 ` [PATCH 2/3] gpiolib: add support for having symlinks under gpio class directory Jani Nikula
2009-12-09 13:49 ` [PATCH 3/3] gpiolib: use chip->names for symlinks, always use gpioN for device names Jani Nikula
2009-12-11 3:39 ` David Brownell
2009-12-11 3:47 ` Greg KH
2009-12-11 4:13 ` David Brownell
2009-12-11 4:38 ` Greg KH
2009-12-11 5:13 ` David Brownell
2009-12-11 5:18 ` Greg KH
2009-12-11 5:36 ` Artem Bityutskiy
2009-12-11 5:46 ` Greg KH
2009-12-11 7:51 ` Artem Bityutskiy
2009-12-11 15:36 ` Greg KH
2009-12-11 13:23 ` Youquan,Song [this message]
2009-12-11 6:04 ` [PATCH]crypto: Fix complain about lack test for internal used algorithm Herbert Xu
2009-12-19 9:40 ` Youquan,Song
2009-12-19 2:29 ` Herbert Xu
2009-12-19 15:07 ` Youquan,Song
2009-12-19 9:42 ` Herbert Xu
2009-12-21 10:38 ` [Resend PATCH]crypto: " Youquan,Song
2009-12-23 11:59 ` Herbert Xu
2009-12-11 5:22 ` [PATCH 3/3] gpiolib: use chip->names for symlinks, always use gpioN for device names Ben Nizette
2009-12-11 5:12 ` Ben Nizette
2009-12-14 11:16 ` Jani Nikula
2009-12-14 22:27 ` Ben Nizette
2009-12-10 2:48 ` [PATCH 2/3] gpiolib: add support for having symlinks under gpio class directory Greg KH
2009-12-10 14:32 ` Jani Nikula
2009-12-10 14:49 ` Greg KH
2009-12-10 15:17 ` Kay Sievers
2009-12-10 15:24 ` Greg KH
2009-12-11 8:41 ` Jani Nikula
2009-12-11 15:38 ` Greg KH
2009-12-11 3:35 ` David Brownell
2009-12-10 2:49 ` [PATCH 1/3] device class: add symlink creation helpers Greg KH
2009-12-10 0:02 ` [PATCH 0/3] gpiolib: gpio naming in sysfs Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091211132321.GA17228@youquan-linux.bj.intel.com \
--to=youquan.song@linux.intel.com \
--cc=herbert@gondor.apana.org.au \
--cc=kent.liu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=ying.huang@intel.com \
--cc=youquan.song@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome