Re: [PATCH] crypto: clear htmldocs build warnings for crypto/hash

From: Kamil Konieczny
Date: Mon Jan 08 2018 - 11:43:31 EST




On 08.01.2018 16:56, Herbert Xu wrote:
> On Mon, Jan 08, 2018 at 02:11:21PM +0100, Kamil Konieczny wrote:
>>
>>
>> On 07.01.2018 00:01, Tobin C. Harding wrote:
>>> SPHINX build emits multiple warnings of kind:
>>>
>>> warning: duplicate section name 'Note'
>>>
>>> (when building kernel via make target 'htmldocs')
>>>
>>> This is caused by repeated use of comments of form:
>>>
>>> * Note: soau soaeusoa uoe
>>>
>>> We can change the format without loss of clarity and clear the build
>>> warnings.
>>>
>>> Add '**[mandatory]**' or '**[optional]**' as kernel-doc field element
>>> description prefix
>>>
>>> This renders in HTML as (prefixes in bold)
>>>
>>> final
>>> [mandatory] Retrieve result from the driver. This function finalizes the
>>> transformation and retrieves the resulting hash from the driver and
>>> pushes it back to upper layers. No data processing happens at this
>>> point unless hardware requires it to finish the transformation (then
>>> the data buffered by the device driver is processed).
>>>
>>> Signed-off-by: Tobin C. Harding <me@xxxxxxxx>
>>> ---
>>>
>>> This patch begs the question why the other members of struct ahash_alg
>>> are not marked? Some are marked 'optional' some 'mandatory'. It would
>>> seem that if the marking were necessary for some members it is necessary
>>> for all to eliminate ambiguity?
>>>
>>> thanks
>>
>> import, export are optional
>
> No import/export must be implemented for all hashes.

Is it mandatory for both async hash and shash ?

in crypto/ahash.c in function

static int crypto_ahash_init_tfm(struct crypto_tfm *tfm)

there is:

hash->export = ahash_no_export;
hash->import = ahash_no_import;

and later in the same function:

if (alg->export)
hash->export = alg->export;
if (alg->import)
hash->import = alg->import;

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