Re: [patch 1/2] x86/platform/goldfish: Prevent unconditional loading

From: Thomas Gleixner
Date: Wed Feb 15 2017 - 05:58:46 EST


On Wed, 15 Feb 2017, Peter Zijlstra wrote:
> On Wed, Feb 15, 2017 at 11:11:50AM +0100, Thomas Gleixner wrote:
> > The goldfish platform code registers the platform device unconditionally
> > which causes havoc in several ways if the goldfish_pdev_bus driver is
> > enabled:
> >
> > - Access to the hardcoded physical memory region, which is either not
> > available or contains stuff which is completely unrelated.
> >
> > - Prevents that the interrupt of the serial port can be requested
> >
> > - In case of a spurious interrupt it goes into a infinite loop in the
> > interrupt handler of the pdev_bus driver (which needs to be fixed
> > seperately).
> >
> > Add a 'goldfish' command line option to make the registration opt-in when
> > the platform is compiled in.
> >
> > I'm seriously grumpy about this engineering trainwreck, which has seven
> > SOBs from Intel developers for 50 lines of code. And none of them figured
> > out that this is broken. Impressive fail!
> >
> > Fixes: ddd70cf93d78 ("goldfish: platform device for x86")
> > Reported-by: Gabriel C <nix.or.die@xxxxxxxxx>
> > Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > Cc: stable@xxxxxxxxxxxxxxx
>
> Just thinking, could we not simply delete this entire driver and use
> x86-DT support to setup this platform?

That would be the proper solution and that's what ARM probably does already.

Thanks,

tglx