linux-stable/arch/x86/platform
Thomas Gleixner 47512cfd0d x86/platform/goldfish: Prevent unconditional loading
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: ddd70cf93d ("goldfish: platform device for x86")
Reported-by: Gabriel C <nix.or.die@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable@vger.kernel.org
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-02-15 08:49:58 -08:00
..
atom x86/cpu: Rename Merrifield2 to Moorefield 2016-09-08 08:13:08 +02:00
ce4100 x86/init: Remove i8042_detect() from platform ops 2016-12-19 11:34:15 +01:00
efi x86/efi: Always map the first physical page into the EFI pagetables 2017-01-28 09:18:56 +01:00
geode x86/platform: Make platform/geode/net5501.c explicitly non-modular 2016-02-16 09:11:09 +01:00
goldfish x86/platform/goldfish: Prevent unconditional loading 2017-02-15 08:49:58 -08:00
intel x86/platform/iosf_mbi: Add Intel Tangier PCI id 2015-07-16 17:48:48 +02:00
intel-mid x86/platform/intel-mid: Rename 'spidev' to 'mrfld_spidev' 2017-01-05 09:03:29 +01:00
intel-quark x86/platform/intel/quark: Add printf attribute to imr_self_test_result() 2016-12-20 09:37:24 +01:00
iris x86: platform: iris: drop owner assignment from platform_drivers 2014-10-20 16:20:15 +02:00
olpc x86/platform/olpc: Fix resume handler build warning 2016-11-28 07:46:03 +01:00
scx200 X86: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
sfi x86: Cleanup irq_domain ops 2015-04-24 15:36:55 +02:00
ts5500 x86/platform: Delete extraneous MODULE_* tags fromm ts5500 2016-07-16 22:41:00 +02:00
uv clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
Makefile platform/x86: mlx-platform: Move module from arch/x86 2016-12-16 23:30:24 +02:00