Re: [PATCH v2] x86/realmode: don't leak kernel addresses

From: Matteo Croce
Date: Tue Mar 26 2019 - 16:37:28 EST


On Tue, Mar 26, 2019 at 5:15 PM Borislav Petkov <bp@xxxxxxxxx> wrote:
>
> On Sun, Mar 24, 2019 at 08:05:04PM +0100, Matteo Croce wrote:
> > Since commit ad67b74d2469d9b8 ("printk: hash addresses printed with %p"),
> > at boot "____ptrval____" is printed instead of the trampoline addresses:
> >
> > Base memory trampoline at [(____ptrval____)] 99000 size 24576
> >
> > Remove the address from the print as we don't want to leak kernel
> > addresses.
> >
> > Fixes: ad67b74d2469d9b8 ("printk: hash addresses printed with %p")
> > Signed-off-by: Matteo Croce <mcroce@xxxxxxxxxx>
> > ---
> > arch/x86/realmode/init.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/x86/realmode/init.c b/arch/x86/realmode/init.c
> > index d10105825d57..d76a1380ec37 100644
> > --- a/arch/x86/realmode/init.c
> > +++ b/arch/x86/realmode/init.c
> > @@ -20,8 +20,8 @@ void __init set_real_mode_mem(phys_addr_t mem, size_t size)
> > void *base = __va(mem);
> >
> > real_mode_header = (struct real_mode_header *) base;
> > - printk(KERN_DEBUG "Base memory trampoline at [%p] %llx size %zu\n",
> > - base, (unsigned long long)mem, size);
> > + printk(KERN_DEBUG "Base memory trampoline at %llx size %zu\n",
> > + (unsigned long long)mem, size);
>
> In case this wasn't clear, please remove the whole printk. And don't
> forget to CC lkml on your submissions. CCed now.
>
> --
> Regards/Gruss,
> Boris.
>
> Good mailing practices for 400: avoid top-posting and trim the reply.

Got it, sent a v3 with the printk removed.
Anyway, I wonder if we can remove the 'size' argument and/or moving
set_real_mode_mem() into realmode.h to have it inlined.
Or maybe it's not worth it.

Regards,
--
Matteo Croce
per aspera ad upstream