
25 Jan
2016
25 Jan
'16
10:28 p.m.
On Wed, Jan 20, 2016 at 02:07:39PM +0530, Purna Chandra Mandal wrote:
Variable _load_end_ points to end address of uncompressed buffer (*not* uncomress_buffer_end / sizeof(ulong)), so multipling uncompressed size with sizeof(ulong) is grossly incorrect in flush_cache(). It might lead to access of address beyond valid memory range and hang the CPU.
Tested on MIPS architecture by using compressed(gzip, lzma) and uncompressed uImage.
Signed-off-by: Purna Chandra Mandal purna.mandal@microchip.com Reviewed-by: Simon Glass sjg@chromium.org Reviewed-by: Daniel Schwierzeck daniel.schwierzeck@gmail.com
Applied to u-boot/master, thanks!
--
Tom