[Intel-xe] [PATCH] drm/xe: make compound literal initialization const

Rodrigo Vivi rodrigo.vivi at intel.com
Thu Mar 9 22:18:56 UTC 2023


On Thu, Mar 09, 2023 at 02:17:46PM +0200, Jani Nikula wrote:
> Be careful about having const in the compound literal initialization to
> keep the initializers in rodata. Here, the impact is 1.8k of mutable
> data moved to rodata.

is there any static tool/script that we could run along with checkpatch
to prevent these?

> 
> add/remove: 0/1 grow/shrink: 0/0 up/down: 0/-1804 (-1804)
> Data                                         old     new   delta
> __compound_literal                          1804       -   -1804
> Total: Before=42425, After=40621, chg -4.25%
> add/remove: 0/0 grow/shrink: 1/0 up/down: 1804/0 (1804)
> RO Data                                      old     new   delta
> __compound_literal                          7696    9500   +1804
> Total: Before=138535, After=140339, chg +1.30
> 
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>


> ---
>  drivers/gpu/drm/xe/xe_rtp.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_rtp.h b/drivers/gpu/drm/xe/xe_rtp.h
> index bd44fd8bbe05..8fc393ef7358 100644
> --- a/drivers/gpu/drm/xe/xe_rtp.h
> +++ b/drivers/gpu/drm/xe/xe_rtp.h
> @@ -363,7 +363,7 @@ struct xe_reg_sr;
>   */
>  #define XE_RTP_RULES(r1, ...)							\
>  	.n_rules = COUNT_ARGS(r1, ##__VA_ARGS__),				\
> -	.rules = (struct xe_rtp_rule[]) {					\
> +	.rules = (const struct xe_rtp_rule[]) {					\
>  		CALL_FOR_EACH(__ADD_XE_RTP_RULE_PREFIX, r1, ##__VA_ARGS__)	\
>  	}
>  
> @@ -390,7 +390,7 @@ struct xe_reg_sr;
>   */
>  #define XE_RTP_ACTIONS(a1, ...)							\
>  	.n_actions = COUNT_ARGS(a1, ##__VA_ARGS__),				\
> -	.actions = (struct xe_rtp_action[]) {					\
> +	.actions = (const struct xe_rtp_action[]) {				\
>  		CALL_FOR_EACH(__ADD_XE_RTP_ACTION_PREFIX, a1, ##__VA_ARGS__)	\
>  	}
>  
> -- 
> 2.39.1
> 


More information about the Intel-xe mailing list