[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/9] xen/arm: address violations of MISRA C:2012 Rule 11.8



On Thu, 14 Dec 2023, Simone Ballarin wrote:
> From: Maria Celeste Cesario <maria.celeste.cesario@xxxxxxxxxxx>
> 
> The xen sources contain violations of MISRA C:2012 Rule 11.8 whose
> headline states:
> "A conversion shall not remove any const, volatile or _Atomic qualification
> from the type pointed to by a pointer".
> 
> Add missing const qualifiers in casts.
> The variables are originally const-qualified.
> There's no reason to drop the qualifiers.
> No functional change.
> 
> Signed-off-by: Maria Celeste Cesario  <maria.celeste.cesario@xxxxxxxxxxx>
> Signed-off-by: Simone Ballarin  <simone.ballarin@xxxxxxxxxxx>
> ---
>  xen/arch/arm/bootfdt.c                 | 6 +++---
>  xen/arch/arm/include/asm/alternative.h | 2 +-
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
> index f496a8cf94..e7948ea3e8 100644
> --- a/xen/arch/arm/bootfdt.c
> +++ b/xen/arch/arm/bootfdt.c
> @@ -377,7 +377,7 @@ static int __init process_chosen_node(const void *fdt, 
> int node,
>          printk("linux,initrd-start property has invalid length %d\n", len);
>          return -EINVAL;
>      }
> -    start = dt_read_paddr((void *)&prop->data, dt_size_to_cells(len));
> +    start = dt_read_paddr((const void *)&prop->data, dt_size_to_cells(len));
>  
>      prop = fdt_get_property(fdt, node, "linux,initrd-end", &len);
>      if ( !prop )
> @@ -390,7 +390,7 @@ static int __init process_chosen_node(const void *fdt, 
> int node,
>          printk("linux,initrd-end property has invalid length %d\n", len);
>          return -EINVAL;
>      }
> -    end = dt_read_paddr((void *)&prop->data, dt_size_to_cells(len));
> +    end = dt_read_paddr((const void *)&prop->data, dt_size_to_cells(len));
>  
>      if ( start >= end )
>      {
> @@ -541,7 +541,7 @@ size_t __init boot_fdt_info(const void *fdt, paddr_t 
> paddr)
>  
>      add_boot_module(BOOTMOD_FDT, paddr, fdt_totalsize(fdt), false);
>  
> -    ret = device_tree_for_each_node((void *)fdt, 0, early_scan_node, NULL);
> +    ret = device_tree_for_each_node((const void *)fdt, 0, early_scan_node, 
> NULL);
>      if ( ret )
>          panic("Early FDT parsing failed (%d)\n", ret);

This cast can be dropped. The rest looks OK.


> diff --git a/xen/arch/arm/include/asm/alternative.h 
> b/xen/arch/arm/include/asm/alternative.h
> index d3210e82f9..c7632668b6 100644
> --- a/xen/arch/arm/include/asm/alternative.h
> +++ b/xen/arch/arm/include/asm/alternative.h
> @@ -20,7 +20,7 @@ struct alt_instr {
>  };
>  
>  /* Xen: helpers used by common code. */
> -#define __ALT_PTR(a,f)               ((void *)&(a)->f + (a)->f)
> +#define __ALT_PTR(a,f)               ((const void *)&(a)->f + (a)->f)
>  #define ALT_ORIG_PTR(a)              __ALT_PTR(a, orig_offset)
>  #define ALT_REPL_PTR(a)              __ALT_PTR(a, repl_offset)
>  
> -- 
> 2.40.0
> 



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.