Re: [PATCH v9 00/14] crypto: Add Intel Analytics Accelerator (IAA) crypto compression driver
From: Tom Zanussi
Date: Fri Aug 18 2023 - 15:58:36 EST
Hi Herbert,
On Fri, 2023-08-18 at 16:58 +0800, Herbert Xu wrote:
> On Mon, Aug 07, 2023 at 03:37:12PM -0500, Tom Zanussi wrote:
> > Hi, this is v9 of the IAA crypto driver, incorporating feedback from
> > v8.
> >
> > v9 changes:
> >
> > - Renamed drv_enable/disable_wq() to idxd_drv_enable/disable_wq()
> > and exported it, changing all existing callers as well as the
> > iaa_crypto driver.
> >
> > - While testing, ran into a use-after-free bug in the irq support
> > flagged by KASAN so fixed that up in iaa_compress() (added missing
> > disable_async check).
> >
> > - Also, while fixing the use-after-free bug, rearranged the out:
> > part of iaa_desc_complete() to make it cleaner.
> >
> > - Also for the verify cases, reversed the dma mapping by adding and
> > calling a new iaa_remap_for_verify() function, since verify
> > basically does a decompress after reversing the src and dst
> > buffers.
> >
> > - Added new Acked-by and Reviewed-by tags.
>
> This adds a bunch of warnings for me:
>
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:2090:5: warning: no previous prototype for ‘wq_stats_show’ [-Wmissing-prototypes]
> 2090 | int wq_stats_show(struct seq_file *m, void *v)
> | ^~~~~~~~~~~~~
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:2106:5: warning: no previous prototype for ‘iaa_crypto_stats_reset’ [-Wmissing-prototypes]
> 2106 | int iaa_crypto_stats_reset(void *data, u64 value)
> | ^~~~~~~~~~~~~~~~~~~~~~
>
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:38: warning: incorrect type in argument 1 (different base types)
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:38: expected unsigned long [usertype] size
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:38: got restricted gfp_t
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:58: warning: incorrect type in argument 2 (different base types)
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:58: expected restricted gfp_t [usertype] flags
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:827:58: got unsigned long
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:2090:5: warning: symbol 'wq_stats_show' was not declared. Should it be static?
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:2106:5: warning: symbol 'iaa_crypto_stats_reset' was not declared. Should it be static?
> ../drivers/crypto/intel/iaa/iaa_crypto_main.c:2028:13: warning: context imbalance in 'iaa_crypto_remove' - different lock contexts for basic block
>
> ../drivers/crypto/intel/iaa/iaa_crypto_comp_fixed.c:10:11: warning: symbol 'fixed_ll_sym' was not declared. Should it be static?
> ../drivers/crypto/intel/iaa/iaa_crypto_comp_fixed.c:49:11: warning: symbol 'fixed_d_sym' was not declared. Should it be static?
>
> Please fix before resubmitting.
>
> Thanks,
OK, yeah, looks like I needed to do a make W=1 C=1 at least to catch these.
Will resubmit after doing that...
Thanks,
Tom