Re: [PATCH v2] crypto: doc - clarify hash callbacks state machine

From: Kamil Konieczny
Date: Tue Mar 20 2018 - 04:50:33 EST




On 20.03.2018 08:56, Horia GeantÄ wrote:
> Add a note that it is perfectly legal to "abandon" a request object:
> - call .init() and then (as many times) .update()
> - _not_ call any of .final(), .finup() or .export() at any point in
> future
>
> Link: https://lkml.kernel.org/r/20180222114741.GA27631@xxxxxxxxxxxxxxxxxxx
> Signed-off-by: Horia GeantÄ <horia.geanta@xxxxxxx>
> ---
> Documentation/crypto/devel-algos.rst | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/Documentation/crypto/devel-algos.rst b/Documentation/crypto/devel-algos.rst
> index 66f50d32dcec..c45c6f400dbd 100644
> --- a/Documentation/crypto/devel-algos.rst
> +++ b/Documentation/crypto/devel-algos.rst
> @@ -236,6 +236,14 @@ when used from another part of the kernel.
> |
> '---------------> HASH2
>
> +Note that it is perfectly legal to "abandon" a request object:
> +- call .init() and then (as many times) .update()
> +- _not_ call any of .final(), .finup() or .export() at any point in future
> +
> +In other words implementations should mind the resource allocation and clean-up.
> +No resources related to request objects should remain allocated after a call
-- ^^^^^^^^^^^^
> +to .init() or .update(), since there might be no chance to free them.

is it for crypto api users or for drivers ?

the creator of request context is responsible for alloc and destroy,
so why there are no chance of free ?

--
Best regards,
Kamil Konieczny
Samsung R&D Institute Poland