[U-Boot] [PATCH] memmove_wd: Allow overlapping memory area

Wolfgang Denk wd at denx.de
Mon Aug 9 13:43:32 CEST 2010


Dear Alexander Stein,

In message <201008091310.37634.alexander.stein at systec-electronic.com> you wrote:
> 
> > Even if it would work in your case of uncompressed images, it is bound
> > to fail for compressed ones where the uncompressed code grows faster
> > then compressed data get consumed.
> 
> Well, that's at least one possibility but it is very annoying that something 
> like memmove that works fine so far suddenly stops working when watchdog 
> support is enabled.

Yes, I understand this. It's also annoying when you've been using
compressed images just fine for years and suddenly they stop working
because the kernel grows beyond some magic (and undefined) limit.

Better do not build on undefined behaviour.

> > You are just shifting the problem to another area, but you are not
> > solving it. Without your patch there is a problem when the initial
> > area overlaps, with your problem there is one when the tail overlaps.
> 
> Well, why is this situation then handled by memmove?

memmove() is used in a log of places.


Please note that I'm not against fixing this problem, but if we
address it, it should be fixed correctly, i. e. in sich a way that it
will always work, not only for certain cases.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Free markets select for winning solutions."        - Eric S. Raymond


More information about the U-Boot mailing list