Re: [PATCHv4 1/5] x86/mm: split arch_mmap_rnd() on compat/native versions

From: Thomas Gleixner
Date: Mon Feb 13 2017 - 06:23:08 EST


On Mon, 13 Feb 2017, Dmitry Safonov wrote:
> On 02/11/2017 11:23 AM, Thomas Gleixner wrote:
> > On Sat, 11 Feb 2017, Dmitry Safonov wrote:
> >
> > > 2017-02-10 23:10 GMT+03:00 Thomas Gleixner <tglx@xxxxxxxxxxxxx>:
> > > > On Thu, 9 Feb 2017, Borislav Petkov wrote:
> > > > > I can't say that I'm thrilled about the ifdeffery this is adding.
> > > > >
> > > > > But I can't think of a cleaner approach at a quick glance, though -
> > > > > that's generic and arch-specific code intertwined muck. Sad face.
> > > >
> > > > It's trivial enough to do ....
> > > >
> > > > Thanks,
> > > >
> > > > tglx
> > > >
> > > > ---
> > > > arch/x86/mm/mmap.c | 22 ++++++++++------------
> > > > 1 file changed, 10 insertions(+), 12 deletions(-)
> > > >
> > > > --- a/arch/x86/mm/mmap.c
> > > > +++ b/arch/x86/mm/mmap.c
> > > > @@ -55,6 +55,10 @@ static unsigned long stack_maxrandom_siz
> > > > #define MIN_GAP (128*1024*1024UL + stack_maxrandom_size())
> > > > #define MAX_GAP (TASK_SIZE/6*5)
> > > >
> > > > +#ifndef CONFIG_COMPAT
> > > > +# define mmap_rnd_compat_bits mmap_rnd_bits
> > > > +#endif
> > > > +
> > >
> > > >From my POV, I can't say that it's clearer to shadow mmap_compat_bits
> > > like that then to have two functions with native/compat names.
> > > But if you insist, I'll resend patches set with your version.
> >
> > You can make that
> >
> > #ifdef CONFIG_64BIT
> > # define mmap32_rnd_bits mmap_compat_rnd_bits
> > # define mmap64_rnd_bits mmap_rnd_bits
> > #else
> > # define mmap32_rnd_bits mmap_rnd_bits
> > # define mmap64_rnd_bits mmap_rnd_bits
> > #endif
> >
> > and use that. That's still way more readable than the unholy ifdef mess.
>
> Ok, will send this version in v5.
> Ping me if you mind me using your SOB for this patch.

Suggested-by is enough