Microsoft KB Archive/222824

{|
 * width="100%"|

FIX: Windows 98: Reenumerating PCI Device Can Cause Reboot

 * }

Q222824

Windows 98: Reenumerating PCI Device May Cause Reboot

-

The information in this article applies to:


 * Microsoft Windows 98 Driver Development Kit (DDK)

-

SYMPTOMS
On a Windows 98 ACPI system, reenumerating a Peripheral Component Interconnect (PCI) device may cause the system to crash. For example, if a user employs Device Manager to remove a PCI device and then refreshes, the system can unexpectedly reboot. This problem is evident on systems using the Intel PIIX4 chipset.

CAUSE
If a PCI device does not share its interrupt with any other devices, removing it will cause Windows 98 to call the BIOS _DIS method for the PCI .lnk extension, which will disable the PIRQ. The problem is that Windows 98 leaves the ELCR (EISA Level Control Register) bit for the interrupt set to level mode, instead of edge mode. After the PCI device is subsequently reenumerated, spurious interrupts occur when the interrupt is unmasked, causing the system to crash.

STATUS
This problem has been fixed for future versions of Windows 98.

Additional query words:

Keywords : kbDDK kbOSWin98bug

Issue type : kbbug

Technology : kbAudDeveloper kbWin98search kbWinDDKSearch kbWin98DDKSearch kbWin98DDK