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

Re: [Xen-devel] [PATCH] xen: arm: correct off-by-one error in consider_modules



On Sun, 2014-12-21 at 11:18 +0000, Ian Campbell wrote:
> By iterating up to <= mi->nr_mods we are running off the end of the boot
> modules, but more importantly it causes us to then skip the first FDT reserved
> region, meaning we might clobber it.
> 
> Signed-off-by: Ian Campbell <ijc@xxxxxxxxxxxxxx>
> ---
> For 4.5: I think this bug fix should go in, it fixes a real issue and is low
> risk.
> 
> I'll also add to my list of things to consider for backport to 4.4.

In 4.4 nr_mods was, confusingly, the index of the highest mod present,
not the nr. This changed in e73b7d6619c8 "xen: arm: store per-boot
module type instead of relying on index", which is how this off by one
came to be.

e73b7d6619c8 is not in 4.4, consequently I don't think it would be
correct to backport this either.

Ian.

> ---
>  xen/arch/arm/setup.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 3991d64..f49569d 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -286,7 +286,7 @@ static paddr_t __init consider_modules(paddr_t s, paddr_t 
> e,
>          return 0;
>  
>      /* First check the boot modules */
> -    for ( i = first_mod; i <= mi->nr_mods; i++ )
> +    for ( i = first_mod; i < mi->nr_mods; i++ )
>      {
>          paddr_t mod_s = mi->module[i].start;
>          paddr_t mod_e = mod_s + mi->module[i].size;



_______________________________________________
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®.