From: Duncan Laurie Date: Tue, 23 Oct 2012 18:04:43 +0000 (+0000) Subject: x86: Fix off-by-one error in do_elf_reloc_fixups() X-Git-Tag: v2013.01-rc2~73^2~26 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=0c3929092d13cf12d6b9383f057e663b6334ee04;p=u-boot x86: Fix off-by-one error in do_elf_reloc_fixups() The use of post-increment with a do-while loop results in the loop going one step too far when handling relocation fixups. In about 1/100 cases this would cause it to hang. Signed-off-by: Duncan Laurie Signed-off-by: Simon Glass --- diff --git a/arch/x86/lib/relocate.c b/arch/x86/lib/relocate.c index 200baaba6a..c0b9b2970e 100644 --- a/arch/x86/lib/relocate.c +++ b/arch/x86/lib/relocate.c @@ -85,7 +85,7 @@ int do_elf_reloc_fixups(void) *offset_ptr_ram += gd->reloc_off; } } - } while (re_src++ < re_end); + } while (++re_src < re_end); return 0; }