[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <beb95a8af767ab38d694f59847d2f2f6692e115a.camel@perches.com>
Date: Fri, 22 May 2020 19:57:59 -0700
From: Joe Perches <joe@...ches.com>
To: Arvind Sankar <nivedita@...m.mit.edu>
Cc: "Tobin C . Harding" <me@...in.cc>, Tycho Andersen <tycho@...ho.ws>,
kernel-hardening@...ts.openwall.com,
Kees Cook <keescook@...omium.org>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Andy Lutomirski <luto@...nel.org>,
Peter Zijlstra <peterz@...radead.org>, x86@...nel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86/mm/init: Stop printing pgt_buf addresses
On Fri, 2020-05-22 at 21:51 -0400, Arvind Sankar wrote:
> On Sat, Feb 29, 2020 at 06:11:20PM -0500, Arvind Sankar wrote:
> > This currently leaks kernel physical addresses into userspace.
> >
> > Signed-off-by: Arvind Sankar <nivedita@...m.mit.edu>
> > ---
> > arch/x86/mm/init.c | 2 --
> > 1 file changed, 2 deletions(-)
> >
> > diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c
> > index e7bb483557c9..dc4711f09cdc 100644
> > --- a/arch/x86/mm/init.c
> > +++ b/arch/x86/mm/init.c
> > @@ -121,8 +121,6 @@ __ref void *alloc_low_pages(unsigned int num)
> > } else {
> > pfn = pgt_buf_end;
> > pgt_buf_end += num;
> > - printk(KERN_DEBUG "BRK [%#010lx, %#010lx] PGTABLE\n",
> > - pfn << PAGE_SHIFT, (pgt_buf_end << PAGE_SHIFT) - 1);
> > }
> >
> > for (i = 0; i < num; i++) {
> > --
> > 2.24.1
> >
>
> Ping.
>
> https://lore.kernel.org/lkml/20200229231120.1147527-1-nivedita@alum.mit.edu/
If this output is at all valuable,
perhaps emit them as hashed pointers?
Maybe:
---
arch/x86/mm/init.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c
index 1bba16c5742b..44f0d6592c7e 100644
--- a/arch/x86/mm/init.c
+++ b/arch/x86/mm/init.c
@@ -121,8 +121,9 @@ __ref void *alloc_low_pages(unsigned int num)
} else {
pfn = pgt_buf_end;
pgt_buf_end += num;
- printk(KERN_DEBUG "BRK [%#010lx, %#010lx] PGTABLE\n",
- pfn << PAGE_SHIFT, (pgt_buf_end << PAGE_SHIFT) - 1);
+ printk(KERN_DEBUG "BRK [0x%8p, 0x%8p] PGTABLE\n",
+ (void *)(pfn << PAGE_SHIFT),
+ (void *)((pgt_buf_end << PAGE_SHIFT) - 1));
}
for (i = 0; i < num; i++) {
Powered by blists - more mailing lists