Re: [PATCH] x86/mm: Fix personality(ADDR_NO_RANDOMIZE)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 14, 2017 at 06:20:02PM +0200, Oleg Nesterov wrote:
> On 08/14, Cyrill Gorcunov wrote:
> >
> > On Mon, Aug 14, 2017 at 06:57:19PM +0300, Kirill A. Shutemov wrote:
> > > In v4.12, during rework of infrastructure around mmap_base, disable-ASLR
> > > personality flag got accidentally broken.
> > >
> > > Let's make it work again.
> > > 
> > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
> > > Fixes: 1b028f784e8c ("x86/mm: Introduce mmap_compat_base() for 32-bit mmap()")
> > > Cc: stable <stable@xxxxxxxxxxxxxxx> [4.12+]
> > > ---
> > >  arch/x86/mm/mmap.c | 2 ++
> > >  1 file changed, 2 insertions(+)
> > >
> > > diff --git a/arch/x86/mm/mmap.c b/arch/x86/mm/mmap.c
> > > index 229d04a83f85..779bdbe5e424 100644
> > > --- a/arch/x86/mm/mmap.c
> > > +++ b/arch/x86/mm/mmap.c
> > > @@ -127,6 +127,8 @@ static unsigned long mmap_legacy_base(unsigned long rnd,
> > >  static void arch_pick_mmap_base(unsigned long *base, unsigned long *legacy_base,
> > >  		unsigned long random_factor, unsigned long task_size)
> > >  {
> > > +	if (!(current->flags & PF_RANDOMIZE))
> > > +		random_factor = 0;
> > >  	*legacy_base = mmap_legacy_base(random_factor, task_size);
> > >  	if (mmap_is_legacy())
> > >  		*base = *legacy_base;
> >
> > Didn't Oleg's patch does the same?
> >
> > https://patchwork.kernel.org/patch/9832697/
> 
> at first glance yes, thanks Cyrill. And note that we do not need another
> PF_RANDOMIZE check.
> 
> > for some reason it's not yet merged.
> 
> because nobody cares ;)

Well, I do. :)

It took me few days to track down where huge variablity in micro benchmark
results comes from. :/

-- 
 Kirill A. Shutemov



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]