Re: Erratum 383 fix for 32 bit x86 kernels

Greg KH
2010-10-22T17:00:08Z

On Fri, Oct 22, 2010 at 09:18:10AM -0700, Greg KH wrote:
> On Fri, Sep 24, 2010 at 06:24:34PM +0200, Borislav Petkov wrote:
> > From: Greg KH <greg@kroah.com>
> > Date: Fri, Sep 24, 2010 at 12:02:06PM -0400
> >
> > > > extern unsigned long setup_trampoline(void);
> > > > +extern void __init setup_trampoline_page_table(void);
> > > > extern void __init reserve_trampoline_memory(void);
> > > > #else
> > > > static inline void reserve_trampoline_memory(void) {};
> > > > +extern void __init setup_trampoline_page_table(void) {};
> > > > #endif /* CONFIG_X86_TRAMPOLINE */
> > >
> > > I don't think that last setup_trampoline_page_table() line is correct
> > > here.
> > >
> > > Shouldn't it be:
> > > static inline void setup_trampoline_page_table(void) {};
> > > instead?
> > >
> > > Otherwise I get the following error building the .32 code with this
> > > patch:
> > > CC arch/x86/kernel/setup.o
> > > arch/x86/kernel/setup.c: In function ‘setup_arch’:
> > > arch/x86/kernel/setup.c:1001:2: error: implicit declaration of function ‘setup_trampoline_page_table’
> > >
> > > Is this really how the code looks upstream?
> > >
> > > Hm, even with changing the function prototype, I still get an error
> > > building on the .32-stable tree on x86-64, so I'm dropping this patch
> > > from there.
> >
> > Yeah, Joerg forgot 8848a91068c018bc91f597038a0f41462a0f88a4.
> >
> > > Also, it didn't apply cleanly to .32-stable, I had to apply this chunk
> > > by hand, no big deal.
> > >
> > > So, why not I just take the original git commits that are in Linus's
> > > tree? That should work, right? If so, do I just need to use those two
> > > above-mentioned commits? Or something else? I prefer taking the
> > > original commits as it makes spelunking over time much easier.
> >
> > Sure, you need
> >
> > 1. fd89a137924e0710078c3ae855e7cec1c43cb845 <-- erratum fix
> > 2. 8848a91068c018bc91f597038a0f41462a0f88a4 <-- build fix
> > 3. b7d460897739e02f186425b7276e3fdb1595cea7 <-- VMSPLIT_* fix
> >
> > in that order and they should cherry-pick fine.
> >
> > Let me know if you need something tested on our end.
>
> Nope, that worked out well, thanks for letting me know exactly which
> ones to apply in which order.

Oops, nope, that didn't work for the .32 kernel tree. If you want these
patches there, please backport them and test them to verify that they
build and work properly.

thanks,

greg k-h