Re: [PATCH v2 1/5] RISC-V: add vector crypto extension validation checks

Conor Dooley
2024-10-25T16:52:34Z

[-- Attachment #1: Type: text/plain, Size: 1776 bytes --]

On Thu, Oct 24, 2024 at 07:08:10PM -0700, Eric Biggers wrote:
>
> On Thu, Oct 24, 2024 at 01:34:29PM +0100, Conor Dooley wrote:
> > @@ -308,12 +354,10 @@ const struct riscv_isa_ext_data riscv_isa_ext[] = {
> > __RISCV_ISA_EXT_DATA(d, RISCV_ISA_EXT_d),
> > __RISCV_ISA_EXT_DATA(q, RISCV_ISA_EXT_q),
> > __RISCV_ISA_EXT_SUPERSET(c, RISCV_ISA_EXT_c, riscv_c_exts),
> > - __RISCV_ISA_EXT_SUPERSET(v, RISCV_ISA_EXT_v, riscv_v_exts),
> > + __RISCV_ISA_EXT_SUPERSET_VALIDATE(v, RISCV_ISA_EXT_v, riscv_v_exts, riscv_ext_vector_float_validate),
>
> This patch adds validation for not just the vector crypto extensions but also v,
> zve32f, zve32x, zve64d, zve64f, and zve64x. I think that should be split into a
> separate patch or at least called out explicitly in the commit message.

Sure. I think I even had it like that originally and must have
waywardly squashed it. I actually checked before sending this to make
sure that I hadn't do so by accident between v1 and v2 and I had not.

> > + __RISCV_ISA_EXT_BUNDLE_VALIDATE(zk, riscv_zk_bundled_exts, riscv_ext_vector_crypto_validate),
> > + __RISCV_ISA_EXT_BUNDLE_VALIDATE(zkn, riscv_zkn_bundled_exts, riscv_ext_vector_crypto_validate),
> > __RISCV_ISA_EXT_DATA(zknd, RISCV_ISA_EXT_ZKND),
> > __RISCV_ISA_EXT_DATA(zkne, RISCV_ISA_EXT_ZKNE),
> > __RISCV_ISA_EXT_DATA(zknh, RISCV_ISA_EXT_ZKNH),
> > __RISCV_ISA_EXT_DATA(zkr, RISCV_ISA_EXT_ZKR),
> > - __RISCV_ISA_EXT_BUNDLE(zks, riscv_zks_bundled_exts),
> > + __RISCV_ISA_EXT_BUNDLE_VALIDATE(zks, riscv_zks_bundled_exts, riscv_ext_vector_crypto_validate),
>
> zk* are the scalar crypto extensions, which don't require vector.

> Thanks for working on this!

Thanks for taking a look. I'm surprised I didn't make more mistakes tbh.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]