[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 01/17] crypto: Move QCryptoCipher typedef to qemu/typedefs.h
From: |
Richard Henderson |
Subject: |
Re: [PATCH 01/17] crypto: Move QCryptoCipher typedef to qemu/typedefs.h |
Date: |
Mon, 17 Aug 2020 13:42:13 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
On 8/17/20 1:38 PM, Richard Henderson wrote:
> On 8/17/20 9:48 AM, Daniel P. Berrangé wrote:
>> On Wed, Aug 12, 2020 at 08:25:21PM -0700, Richard Henderson wrote:
>>> This allows header files to declare pointers without pulling
>>> in the entire crypto subsystem.
>>>
>>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>>> ---
>>> include/crypto/cipher.h | 2 --
>>> include/qemu/typedefs.h | 1 +
>>> 2 files changed, 1 insertion(+), 2 deletions(-)
>>
>> I'm not in favour of this change or the next. Using #include "cipher.h"
>> is not a burden on the users of the crypto code. Moving typedefs away
>> from the associated struct is a step backwards IMHO.
>
> Consider if you put a pointer to QCryptoCipher in a relatively generic header
> file (e.g. "target/foo/cpu.h"), restricting "cipher.h" to a portion of the
> implementation (e.g. target/foo/helper_crypto.c).
>
> This sort of thing is exactly why "qemu/typedefs.h" exists.
As for the next patch for QCryptoCipherDriver, I could easily see not moving
the typedef to typedefs.h, but instaed to "crypto.h", where we do in fact want
to declare an incomplete structure. I think it's a real mistake to be using
void* there at present.
r~
[PATCH 02/17] crypto: Move QCryptoCipherDriver typedef to qemu/typedefs.h, Richard Henderson, 2020/08/12
[PATCH 03/17] crypto: Assume blocksize is a power of 2, Richard Henderson, 2020/08/12
[PATCH 04/17] crypto: Rename cipher include files to .inc.c, Richard Henderson, 2020/08/12
[PATCH 05/17] crypto: Remove redundant includes, Richard Henderson, 2020/08/12