Bug 52821

Summary: ata_piix ATA_HOST_IGNORE_ATA for Hyper-V also affects Virtual PC 7
Product: IO/Storage Reporter: Andreas (andreas.thalhammer)
Component: IDEAssignee: io_ide (io_ide)
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: high    
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.4+ Subsystem:
Regression: No Bisected commit-id:

Description Andreas 2013-01-19 00:11:27 UTC
[PATCH 2/2] ata_piix: defer disks to the Hyper-V drivers by default
Sat, 14 Apr 2012 16:53:16 +0100

https://lkml.org/lkml/2012/4/14/136

This patch apparently also affects Virtual PC 7.0.3 for Mac, with the result that only the emulated CD/DVD drive is visible to the system due to a missing paravirtualised
driver for the ATA device. An installation of Linux (with a kernel 3.4 and newer) in the emulated environment of VPC7 is therefor impossible.

The problem seems to be that VPC7 also provides DMI 2.3, which also contains the strings "Microsoft Corporation" and "Virtual Machine" -- just like Hyper-V.

VPC6 (Connectix Virtual PC 6.0) is not affected. (UNCONFIRMED, but 99% sure: there cannot be "Microsoft Corporation" in it, because it was from Connectix!)

I don’t know how, but piix_ignore_devices_quirk should either be more thorough in identifying Hyper-V or it should confirm that it is not running inside Virtual PC.

I would be happy to help with inside data, like a DMI dump or anything, but you’d have to tell me exactly what to do.
Comment 1 Andreas 2013-01-19 00:35:41 UTC
I’ve just found that the kernel parameter ata_piix.prefer_ms_hyperv=0 works, but it is a very inconvenient way to work around this problem.

On the other hand, who is still using PowerPC-based Macs with Microsoft Virtual PC 7.0 and with modern Linux distributions?

As long as this parameter to disable the Hyper-V patch is there, at least it does work with a little extra work.

Still, if there is a way to cleanly identify Hyper-V but not Virtual PC 7, this would be great!
Comment 2 Andreas 2013-01-30 22:19:21 UTC
First appearance:
https://bugzilla.novell.com/show_bug.cgi?id=737532
Patch:
https://lkml.org/lkml/2012/9/18/306

Since I discovered the bug in a recent version of a bootable ISO, I assume a lot of recent distros are still affected.
Anyway, future releases should be fixed. Thanks.