Re: [PATCH] AMD Microcode: Prefer vzalloc() over calls tovmalloc()+memset()

From: Borislav Petkov
Date: Sun Oct 31 2010 - 06:08:45 EST


On Sat, Oct 30, 2010 at 09:23:14PM +0200, Jesper Juhl wrote:
> We don't have to do memset() ourselves after vmalloc() when we have
> vzalloc(), so change that in
> arch/x86/kernel/microcode_amd.c::get_next_ucode().
>
> Please CC me on replies.
>
>
> Signed-off-by: Jesper Juhl <jj@xxxxxxxxxxxxx>
> ---
> compile tested only.
>
> microcode_amd.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c
> index e1af7c0..d46e805 100644
> --- a/arch/x86/kernel/microcode_amd.c
> +++ b/arch/x86/kernel/microcode_amd.c
> @@ -183,9 +183,8 @@ get_next_ucode(const u8 *buf, unsigned int size, unsigned int *mc_size)
> return NULL;
> }
>
> - mc = vmalloc(UCODE_MAX_SIZE);
> + mc = vzalloc(UCODE_MAX_SIZE);
> if (mc) {
> - memset(mc, 0, UCODE_MAX_SIZE);
> if (get_ucode_data(mc, buf + UCODE_CONTAINER_SECTION_HDR,
> total_size)) {
> vfree(mc);

Good.

Better yet, you can go a step further and remove one indentation block:

--
mc = vzalloc(UCODE_MAX_SIZE);
if (!mc)
goto out;

if (get_ucode_data(mc, ...
...

out:
return mc;

}
--
making the code even fit in 80 chars width and thus more readable.

Thanks.

--
Regards/Gruss,
Boris.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/