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

Re: [Xen-devel] [PATCH] x86/shadow: convert non-const statics



At 15:25 +0000 on 28 Jan (1422455118), Jan Beulich wrote:
> To make obvious that such statics are safe to use, they should be
> const. In some of the cases, they don't even need to be static.
> 
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Happy to have the consts, but please keep the statics, to make it
clear that they are compile-time constants.

Cheers,

Tim.

> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -2164,7 +2164,7 @@ int sh_remove_write_access(struct vcpu *
>          NULL  /* unused  */
>      };
>  
> -    static unsigned int callback_mask = 
> +    const unsigned int callback_mask =
>            1 << SH_type_l1_32_shadow
>          | 1 << SH_type_fl1_32_shadow
>          | 1 << SH_type_l1_pae_shadow
> @@ -2414,7 +2414,7 @@ int sh_remove_all_mappings(struct vcpu *
>          NULL  /* unused  */
>      };
>  
> -    static unsigned int callback_mask = 
> +    const unsigned int callback_mask =
>            1 << SH_type_l1_32_shadow
>          | 1 << SH_type_fl1_32_shadow
>          | 1 << SH_type_l1_pae_shadow
> @@ -2558,7 +2558,7 @@ void sh_remove_shadows(struct vcpu *v, m
>      };
>  
>      /* Another lookup table, for choosing which mask to use */
> -    static unsigned int masks[SH_type_unused] = {
> +    static const unsigned int masks[SH_type_unused] = {
>          0, /* none    */
>          1 << SH_type_l2_32_shadow, /* l1_32   */
>          0, /* fl1_32  */
> @@ -2685,7 +2685,7 @@ static int sh_clear_up_pointer(struct vc
>  
>  void sh_reset_l3_up_pointers(struct vcpu *v)
>  {
> -    static hash_callback_t callbacks[SH_type_unused] = {
> +    static const hash_callback_t callbacks[SH_type_unused] = {
>          NULL, /* none    */
>          NULL, /* l1_32   */
>          NULL, /* fl1_32  */
> @@ -2703,7 +2703,7 @@ void sh_reset_l3_up_pointers(struct vcpu
>          NULL, /* p2m     */
>          NULL  /* unused  */
>      };
> -    static unsigned int callback_mask = 1 << SH_type_l3_64_shadow;    
> +    const unsigned int callback_mask = 1 << SH_type_l3_64_shadow;
>  
>      hash_foreach(v, callback_mask, callbacks, _mfn(INVALID_MFN));
>  }
> 
> 
> 

> x86/shadow: convert non-const statics
> 
> To make obvious that such statics are safe to use, they should be
> const. In some of the cases, they don't even need to be static.
> 
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
> 
> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -2164,7 +2164,7 @@ int sh_remove_write_access(struct vcpu *
>          NULL  /* unused  */
>      };
>  
> -    static unsigned int callback_mask = 
> +    const unsigned int callback_mask =
>            1 << SH_type_l1_32_shadow
>          | 1 << SH_type_fl1_32_shadow
>          | 1 << SH_type_l1_pae_shadow
> @@ -2414,7 +2414,7 @@ int sh_remove_all_mappings(struct vcpu *
>          NULL  /* unused  */
>      };
>  
> -    static unsigned int callback_mask = 
> +    const unsigned int callback_mask =
>            1 << SH_type_l1_32_shadow
>          | 1 << SH_type_fl1_32_shadow
>          | 1 << SH_type_l1_pae_shadow
> @@ -2558,7 +2558,7 @@ void sh_remove_shadows(struct vcpu *v, m
>      };
>  
>      /* Another lookup table, for choosing which mask to use */
> -    static unsigned int masks[SH_type_unused] = {
> +    static const unsigned int masks[SH_type_unused] = {
>          0, /* none    */
>          1 << SH_type_l2_32_shadow, /* l1_32   */
>          0, /* fl1_32  */
> @@ -2685,7 +2685,7 @@ static int sh_clear_up_pointer(struct vc
>  
>  void sh_reset_l3_up_pointers(struct vcpu *v)
>  {
> -    static hash_callback_t callbacks[SH_type_unused] = {
> +    static const hash_callback_t callbacks[SH_type_unused] = {
>          NULL, /* none    */
>          NULL, /* l1_32   */
>          NULL, /* fl1_32  */
> @@ -2703,7 +2703,7 @@ void sh_reset_l3_up_pointers(struct vcpu
>          NULL, /* p2m     */
>          NULL  /* unused  */
>      };
> -    static unsigned int callback_mask = 1 << SH_type_l3_64_shadow;    
> +    const unsigned int callback_mask = 1 << SH_type_l3_64_shadow;
>  
>      hash_foreach(v, callback_mask, callbacks, _mfn(INVALID_MFN));
>  }


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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