Re: [PATCH v7u1 20/31] x86, kexec: replace ident_mapping_init andinit_level4_page

From: Borislav Petkov
Date: Sat Jan 05 2013 - 08:24:19 EST


On Fri, Jan 04, 2013 at 02:04:05PM -0800, Yinghai Lu wrote:
> On Fri, Jan 4, 2013 at 1:01 PM, Borislav Petkov <bp@xxxxxxxxx> wrote:
> > On Thu, Jan 03, 2013 at 04:48:40PM -0800, Yinghai Lu wrote:
> >> static int init_pgtable(struct kimage *image, unsigned long start_pgtable)
> >> {
> >> + struct x86_mapping_info info = {
> >> + .alloc_pgt_page = alloc_pgt_page,
> >> + .context = image,
> >> + .pmd_flag = __PAGE_KERNEL_LARGE_EXEC,
> >> + };
> >
> > This is leaving ->kernel_mapping uninitialized to contain a random,
> > previous stack value. I don't think we want that.
>
> that should be initialized to false by default.

So make it explicit. You can't possibly rely on what the stack contains
when you allocate that struct there.

--
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/