[PATCH] ARM: make arrays containing machine compatible strings const

Olof Johansson olof at lixom.net
Tue Sep 23 22:01:04 PDT 2014


On Thu, Sep 11, 2014 at 11:19:13PM +0200, Uwe Kleine-K??nig wrote:
> The definition
> 
> 	static const char *axxia_dt_match[] __initconst = {
> 		...
> 
> defines a changable array of constant strings. That is you must not do:
> 
> 	*axxia_dt_match[0] = 'k';
> 
> but
> 
> 	axxia_dt_match[0] = "different string";
> 
> is fine. So the annotation __initconst is wrong and yields a compiler
> error when other really const variables are added with __initconst.
> 
> As the struct machine_desc member dt_compat is declared as
> 
> 	const char *const *dt_compat;
> 
> making the arrays const is the better alternative over changing all
> annotations to __initdata.
> 
> Signed-off-by: Uwe Kleine-K??nig <u.kleine-koenig at pengutronix.de>
> ---
> Hello,
> 
> this is similar to the fix I sent earlier today which only fixed omap2.
> Does it make sense to split this patch per platform?


We should be fine applying it as-is. Applied to next/cleanup.


-Olof



More information about the linux-arm-kernel mailing list