Re: [PATCH 4/5] x86, boot: Make memcpy handle overlaps
From: Ingo Molnar
Date: Fri Apr 22 2016 - 03:56:20 EST
* Kees Cook <keescook@xxxxxxxxxxxx> wrote:
> Two uses of memcpy (screen scrolling and ELF parsing) were handling
> overlapping memory areas. While there were no explicitly noticed bugs
> here (yet), it is best to fix this so that the copying will always be
> safe.
>
> Instead of making a new memmove function that might collide with other
> memmove definitions in the decompressors, this just makes the compressed
> boot's copy of memcpy overlap safe.
Btw., I changed all mentions of function calls to include a '()', i.e.:
Subject: x86/boot: Make memcpy() handle overlaps
From: Kees Cook <keescook@xxxxxxxxxxxx>
Date: Wed, 20 Apr 2016 13:55:45 -0700
Two uses of memcpy() (screen scrolling and ELF parsing) were handling
overlapping memory areas. While there were no explicitly noticed bugs
here (yet), it is best to fix this so that the copying will always be
safe.
Instead of making a new memmove() function that might collide with other
memmove() definitions in the decompressors, this just makes the compressed
boot code's copy of memcpy() overlap-safe.
Please try to do this in future changelogs and patch titles, all references to
function calls should use parentheses, and all references to variables or
parameters should be escaped with '...' when it's not abundantly clear what they
are - this makes for much easier reading.
So just to mention an extreme (made up) example, which of these two commit titles
is less confusing to read:
Change out parameter of function to buffer to avoid confusion
or:
Change 'out' parameter of function() to 'buffer' to avoid confusion
?
I know which one I'd pick! ;-)
Thanks,
Ingo