On Wed, Apr 14, 2021 at 08:12:46PM +0300, Alexander Shishkin wrote:
> From: Andy Shevchenko <andriy.shevche...@linux.intel.com>
> 
> It appears that uuid_t use in STM code abuses UUID API.

How is it being abused?

Moreover,
> this type is only useful when we parse user input. Due to above
> replace uuid_t with u8 uuid[16] and use uuid_t only when parse
> user input.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
> Signed-off-by: Alexander Shishkin <alexander.shish...@linux.intel.com>
> ---
>  drivers/hwtracing/stm/p_sys-t.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/hwtracing/stm/p_sys-t.c b/drivers/hwtracing/stm/p_sys-t.c
> index 360b5c03df95..04d13b3785d3 100644
> --- a/drivers/hwtracing/stm/p_sys-t.c
> +++ b/drivers/hwtracing/stm/p_sys-t.c
> @@ -76,7 +76,7 @@ enum sys_t_message_string_subtype {
>                                MIPI_SYST_SEVERITY(MAX))
>  
>  struct sys_t_policy_node {
> -     uuid_t          uuid;
> +     u8              uuid[UUID_SIZE];

This feels wrong, what is wrong with the uuid_t type usage here?

>       bool            do_len;
>       unsigned long   ts_interval;
>       unsigned long   clocksync_interval;
> @@ -92,7 +92,7 @@ static void sys_t_policy_node_init(void *priv)
>  {
>       struct sys_t_policy_node *pn = priv;
>  
> -     generate_random_uuid(pn->uuid.b);

Ok, that's not good, but that looks to be a flaw in the
generate_random_uuid() api, not this driver implementation.

I don't understand why this change is needed?

thanks,

greg k-h

Reply via email to