[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aac78812-18dc-5e78-ab48-61e15eeb9315@linux.alibaba.com>
Date: Tue, 19 Oct 2021 17:39:49 +0800
From: Tianjia Zhang <tianjia.zhang@...ux.alibaba.com>
To: Jarkko Sakkinen <jarkko@...nel.org>, jejb@...ux.ibm.com,
Mimi Zohar <zohar@...ux.ibm.com>,
Jonathan Corbet <corbet@....net>,
Herbert Xu <herbert@...dor.apana.org.au>,
"David S. Miller" <davem@...emloft.net>,
Peter Huewe <peterhuewe@....de>,
Jason Gunthorpe <jgg@...pe.ca>,
David Howells <dhowells@...hat.com>,
James Morris <jmorris@...ei.org>,
"Serge E. Hallyn" <serge@...lyn.com>,
Jerry Snitselaar <jsnitsel@...hat.com>,
linux-integrity@...r.kernel.org, keyrings@...r.kernel.org,
linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-crypto@...r.kernel.org, linux-security-module@...r.kernel.org
Subject: Re: [PATCH 1/2] crypto: use SM3 instead of SM3_256
Hi Jarkko,
On 10/18/21 9:41 PM, Jarkko Sakkinen wrote:
> On Mon, 2021-10-18 at 09:32 -0400, James Bottomley wrote:
>> On Mon, 2021-10-18 at 16:27 +0300, Jarkko Sakkinen wrote:
>>> On Mon, 2021-10-18 at 09:05 -0400, James Bottomley wrote:
>>>> On Sat, 2021-10-09 at 21:08 +0800, Tianjia Zhang wrote:
>>>> [...]
>>>>> diff --git a/include/uapi/linux/hash_info.h
>>>>> b/include/uapi/linux/hash_info.h
>>>>> index 74a8609fcb4d..1355525dd4aa 100644
>>>>> --- a/include/uapi/linux/hash_info.h
>>>>> +++ b/include/uapi/linux/hash_info.h
>>>>> @@ -32,7 +32,7 @@ enum hash_algo {
>>>>> HASH_ALGO_TGR_128,
>>>>> HASH_ALGO_TGR_160,
>>>>> HASH_ALGO_TGR_192,
>>>>> - HASH_ALGO_SM3_256,
>>>>> + HASH_ALGO_SM3,
>>>>> HASH_ALGO_STREEBOG_256,
>>>>> HASH_ALGO_STREEBOG_512,
>>>>> HASH_ALGO__LAST
>>>>
>>>> This is another one you can't do: all headers in UAPI are exports
>>>> to userspace and the definitions constitute an ABI. If you simply
>>>> do a rename, every userspace program that uses the current
>>>> definition will immediately break on compile. You could add
>>>> HASH_ALGO_SM3, but you can't remove HASH_ALGO_SM3_256
>>>>
>>>> James
>>>
>>> So: shouldn't then also the old symbol continue to work also
>>> semantically?
>>
>> Yes, that's the point: you can add a new definition ... in this case an
>> alias for the old one, but you can't remove a definition that's been
>> previously exported.
>
> Thanks, this of course obvious :-) I forgot temporarily that crypto
> has uapi interface. Tianjia, this patch set break production systems,
> so no chance we would ever merge it in this form.
>
> Why not just do this:
>
> ...
> HASH_ALGO_SM3_256,
> HASH_ALOG_SM3 = HASH_ALOG_SM_256,
> ...
>
> There is not good reason to mod the implementation because both symbols
> are kept.
>
> /Jarkko
>
Very good suggestion, I will do this in the next version patch. Maybe
this is more appropriate:
HASH_ALGO_SM3,
HASH_ALGO_SM3_256 = HASH_ALGO_SM3,
Best regards,
Tianjia
Powered by blists - more mailing lists