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