mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
[PCI] Filter out devices with null vendor and device ID
Some virtual machines errorneously expose null PCI device function on PIIX4 chipset where an USB controller should normally reside. Windows pci.sys driver does not enumerate these devices. Affected virtual machines: - Connectix Virtual PC 5.1.370 - Connectix Virtual PC 5.2.418 - Microsoft Virtual PC 2004 SP1 (5.3.582.27) - Microsoft Virtual PC 2007 SP1 (6.0.156.0) Non-affected virtual machines: - Connectix Virtual PC 4.0 - Microsoft Hyper-V Fixes CORE-17636.
This commit is contained in:
parent
c7954134d0
commit
a4405f9610
1 changed files with 6 additions and 0 deletions
|
@ -151,6 +151,12 @@ FdoEnumerateDevices(
|
||||||
PciConfig.VendorID,
|
PciConfig.VendorID,
|
||||||
PciConfig.DeviceID);
|
PciConfig.DeviceID);
|
||||||
|
|
||||||
|
if (PciConfig.VendorID == 0 && PciConfig.DeviceID == 0)
|
||||||
|
{
|
||||||
|
DPRINT("Filter out devices with null vendor and device ID\n");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
Status = FdoLocateChildDevice(&Device, DeviceExtension, SlotNumber, &PciConfig);
|
Status = FdoLocateChildDevice(&Device, DeviceExtension, SlotNumber, &PciConfig);
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue