Re: question about crypto module dependency
flat view
From: Francis Moreau <hidden>
Date: 2012-01-18 07:49:13
On Wed, Jan 18, 2012 at 6:39 AM, Herbert Xu [off-list ref] wrote:
Francis Moreau [off-list ref] wrote:quoted
Hello, I'm wondering how this scenario is supposed to work: let's say a module A uses 'crc32c' function in lib/libcrc32c.c. In its turn this function calls crypto_shash_update() which is exported by crypto/shash.c. But now no module implementing "crc32c" has still been loaded although crc32c.ko is available. Therefore the initial load of module A fails although all required modules by the system are present. If the above is correct, how should it be handled ?We'd need to adjust the init priority of libcrc32c and whatever it depends on.
Could you give me some details beacause I don't see how that would work... Currently we have this : libcrc32c -> shash where '->' means depend on. However I think we should have this: libcrc32c -> shash -> crc32c, to get all modules properly loaded when using libcrc32c. But it seems not possible because of the way shash is doing the load of its backends dynamically: it requires that the backend has already been registered.
What is the user in question?
btrfs Thanks. -- Francis