On 27/06/16 08:00, Herbert Xu wrote:
On Mon, Jun 27, 2016 at 07:58:43AM +0300, Tero Kristo wrote:
Ok, I think I need to allocate the storage space locally then within
the driver. Would it be ok to call kmalloc / free in the export /
import implementation of the driver? The size of the unhashed buffer
in omap-sham is unfortunately rather large.
The allocation should usually be done from the request_alloc
function, i.e., you set the reqsize and the user does the allocation
for you.
I need some clarification on this, afaik request_alloc related
functionality only works per-request basis. The export / import
functionality however is supposed to work across multiple requests. The
test code for example does this:
ret = crypto_ahash_export(req, state);
...
ahash_request_free(req);
req = ahash_request_alloc(tfm, GFP_KERNEL);
...
ret = crypto_ahash_import(req, state);
... which means if I attempt to allocate extra space for the export
buffer within the first request, it is not available at the import time
anymore.
Is there any limitation how many simultaneous exports can be done from a
driver? I was wondering if I can allocate a single export buffer for the
whole driver.
-Tero
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html