Hi, On 10/28/25 3:39 AM, yebin wrote: > > > On 2025/10/24 16:10, Ahmad Fatoum wrote: >> Hello, >> >> On 10/24/25 9:02 AM, yebin wrote: >>> Ignore this patch as 275a9a3f9b6a(“KEYS: trusted: Pass argument by >>> pointer in dump_options”)already fix this issue. >> >> What tree are you looking at? I can't find this commit in my git and the >> code you are purportedly patching never existed upstream. >> >> If you run into issues exclusive to a vendor fork, you need to submit >> your patches to the vendor. The upstream mailing lists are for upstream. >> > This patch was submitted by Herbert Xu and is on linux-next. > > https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git > commit 275a9a3f9b6a2158bfb7826074b72d5bdfb2ac35 > Author: Herbert Xu <[email protected]> > Date: Tue Oct 21 12:07:56 2025 +0800 > > KEYS: trusted: Pass argument by pointer in dump_options > > Instead of passing pkey_info into dump_options by value, using a > pointer instead. > > Reported-by: Stephen Rothwell <[email protected]> > Signed-off-by: Herbert Xu <[email protected]>
Thanks for the clarification. The maintainers for trusted keys were unfortunately not Cc'd on that submission, so it flew at least under my radar. :/ Cheers, Ahmad > > >> Thanks, >> Ahmad >> >>> >>> On 2025/10/24 14:11, Ye Bin wrote: >>>> From: Ye Bin <[email protected]> >>>> >>>> There's issue as follows: >>>> security/keys/trusted-keys/trusted_caam.c: In function ‘dump_options’: >>>> security/keys/trusted-keys/trusted_caam.c:37:20: note: the ABI of >>>> passing struct with a flexible array member has changed in GCC 4.4 >>>> 37 | static inline void dump_options(struct caam_pkey_info >>>> pkey_info) >>>> | ^~~~~~~~~~~~ >>>> >>>> To solve the above problem, pass 'struct caam_pkey_info*' type >>>> parameter >>>> to the dump_options() function. >>>> >>>> Fixes: 9eb25ca6c973 ("KEYS: trusted: caam based protected key") >>>> Signed-off-by: Ye Bin <[email protected]> >>>> --- >>>> security/keys/trusted-keys/trusted_caam.c | 10 +++++----- >>>> 1 file changed, 5 insertions(+), 5 deletions(-) >>>> >>>> diff --git a/security/keys/trusted-keys/trusted_caam.c b/security/ >>>> keys/trusted-keys/trusted_caam.c >>>> index 090099d1b04d..dd7a69bcf6a3 100644 >>>> --- a/security/keys/trusted-keys/trusted_caam.c >>>> +++ b/security/keys/trusted-keys/trusted_caam.c >>>> @@ -29,12 +29,12 @@ static const match_table_t key_tokens = { >>>> }; >>>> >>>> #ifdef CAAM_DEBUG >>>> -static inline void dump_options(struct caam_pkey_info pkey_info) >>>> +static inline void dump_options(struct caam_pkey_info *pkey_info) >>>> { >>>> - pr_info("key encryption algo %d\n", pkey_info.key_enc_algo); >>>> + pr_info("key encryption algo %d\n", pkey_info->key_enc_algo); >>>> } >>>> #else >>>> -static inline void dump_options(struct caam_pkey_info pkey_info) >>>> +static inline void dump_options(struct caam_pkey_info *pkey_info) >>>> { >>>> } >>>> #endif >>>> @@ -108,7 +108,7 @@ static int trusted_caam_seal(struct >>>> trusted_key_payload *p, char *datablob) >>>> ret = get_pkey_options(datablob, &info.pkey_info); >>>> if (ret < 0) >>>> return 0; >>>> - dump_options(info.pkey_info); >>>> + dump_options(&info.pkey_info); >>>> } >>>> >>>> ret = caam_encap_blob(blobifier, &info); >>>> @@ -140,7 +140,7 @@ static int trusted_caam_unseal(struct >>>> trusted_key_payload *p, char *datablob) >>>> ret = get_pkey_options(datablob, &info.pkey_info); >>>> if (ret < 0) >>>> return 0; >>>> - dump_options(info.pkey_info); >>>> + dump_options(&info.pkey_info); >>>> >>>> p->key_len = p->blob_len + sizeof(struct caam_pkey_info); >>>> memcpy(p->key, &info.pkey_info, sizeof(struct >>>> caam_pkey_info)); >>>> >>> >>> >> > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
