Thread (13 messages) 13 messages, 4 authors, 2017-12-22

Re: [PATCH RFC 1/3] crypto: Prevent to register duplicate cra_driver_name

From: LABBE Corentin <clabbe@baylibre.com>
Date: 2017-12-21 12:35:40
Also in: lkml

On Thu, Dec 21, 2017 at 05:35:22PM +1100, Herbert Xu wrote:
On Wed, Dec 20, 2017 at 08:09:25PM +0000, Corentin Labbe wrote:
quoted
Each crypto algorithm "cra_name" can have multiple implementation called
"cra_driver_name".
If two different implementation have the same cra_driver_name, nothing
can easily differentiate them.
Furthermore the mechanism for getting a crypto algorithm with its
implementation name (crypto_alg_match() in crypto/crypto_user.c) will
get only the first one found.

So this patch prevent the registration of two implementation with the
same cra_driver_name.

Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
No this is intentional.  The idea is that you can hot-replace
an implementation by registering a new version of it while the
old one is still in use.  The new one will be used for all new
allocations.
But the new implementation is different from the first so should have a new name.
The only case I found is ctr-aes-ce, and both are different (use/dontuse simd) so qualifying for different name.

Anyway, any advice on how to populate properly /sys/crypto with unique name ?
I have two idea:
- A number which increment after each register
- cra_driver_name-priority

Or does I use /sys/crypto/cra_driver_name/priority ? (which need to use some usage count on cra_driver_name node)

Regards
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help