Driver Protection List for Windows XP and Windows Server 2003
Updated: August 2, 2004
This document provides a basic overview of Driver Protection in Microsoft Windows XP and documents the drivers that are on the Driver Protection List as of Windows XP RTM. It also explains the steps necessary to update drivers that are on the list. This document is for Windows driver producers and distributors, such as driver developers, hardware vendors, software vendors, and system manufacturers. This document is not intended for system administrators or end users.
On This Page
Introduction
How Drivers are Added to the Driver Protection List
How Driver Protection Works
How Driver Protection Affects Applications
User Experience
Windows XP Upgrade Advisor Notifications
Windows XP Setup Notifications
Windows XP Runtime Notifications
Matching Criteria
How to Update a Driver on the Driver Protection List
Driver Protection List for Windows XP
Driver Protection List for Windows XP SP1 and Windows Server 2003
Driver Protection List for Windows XP SP2
Call to Action
Introduction
The Driver Protection feature in the Windows XP Professional and Windows XP Home Edition operating systems protects operating system stability by preventing the operating system from loading drivers that are known to cause stability problems. Driver Protection is built upon application compatibility technology present in Windows XP. Driver Protection is active at all times—during operating system upgrades from prior versions of Windows and at runtime after the operating system is installed. Driver Protection is not intended to be disabled by end users.
Drivers known to cause stability problems are listed in a database included with Windows XP. Driver Protection checks this database, the Driver Protection List, to determine whether to load a driver under Windows XP.
Decisions to add drivers to this list are made in consultation with the vendors who produce and distribute these drivers. We engage and inform these vendors before adding a driver to the Driver Protection List.
The Driver Protection List database is designed to be updated through Dynamic Update and Windows Update, so that drivers that cause stability problems can be added to the Driver Protection List after Windows XP is released to manufacturing.
This document contains the contents of this list as of Windows XP Professional and Windows XP Home Edition RTM. An updated version of the Driver Protection List will be available in the future at http://www.microsoft.com/whdc/default.mspx.
How Drivers are Added to the Driver Protection List
Drivers are added to the Driver Protection List based upon feedback from end users about problems that can be reproduced and confirmed at Microsoft. The top three reasons why a driver is added to this list are:
-
Windows XP cannot boot with this driver loaded.
-
Windows XP Setup cannot complete with this driver loaded.
-
End users experience data corruption when this driver is loaded under Windows XP.
Decisions to add drivers to this list are made in consultation with the vendors who produce and distribute these drivers. We engage and inform these vendors before adding a driver to the Driver Protection List.
How Driver Protection Works
Driver Protection compares each driver that attempts to load under Windows XP against the Driver Protection List before loading that driver. The comparison and matching happens during boot, setup, and runtime using the criteria described in the "Matching Criteria" later in this document. If Driver Protection finds a match for a driver in the Driver Protection List, the following occurs:
-
The driver is not loaded under Windows XP.
-
The operating system logs an event in the Event Log.
-
A notification is displayed to the end user.
The end-user notification differs according to when the driver load request occurs:
-
A driver on the Driver Protection List is matched during boot. When the user logs in, the operating system displays a balloon help pop-up titled "Devices or Applications disabled." Clicking on that pop-up displays the Help and Support Center, which provides further information about the driver and tells the user where to go to for a solution to the problem.
-
A driver on the Driver Protection List is matched during Windows XP Setup. If the user upgrades to Windows XP from Windows NT 4.0 or Windows 2000, a message will appear in the Report System Compatibility window before the operating system upgrade.
The user can cancel Windows XP Setup at this point and find a solution before installing the new operating system. If the user installs the solution, Windows XP Setup will continue normally. If the user does not install a solution before upgrading, Setup may disable the driver in order to complete. When the user logs in, the operating system protects itself from drivers that were not disabled during Setup and displays the balloon help pop-up described in the previous case.
-
A driver on the Driver Protection List is matched during installation of a new application or device. If a user installs a new application or device that has a driver on the Driver Protection List and if that driver is installed using system installation services (SetupAPI), the operating system displays a notification during installation and blocks the installation of that driver.
If a driver is not installed using system installation services, Windows XP cannot block the installation of that driver. However, it can block the driver from loading. Such a driver will cause a notification to appear each time the operating system attempts to load that driver under Windows XP. For example, the "Devices or Applications disabled" balloon help pop-up appears after completing the setup program of a CD writing product that does not use system installation services and that installs a driver revision included on the Driver Protection List. In addition to the balloon help pop-up, this is also logged in the Event Log.
How Driver Protection Affects Applications
Windows Driver Protection is a low-level kernel feature that was designed to be the last resort for protecting a Windows XP system from errant drivers. Driver Protection will block known problem drivers from loading, but it does not block any associated applications that might depend on those drivers. Therefore, the behavior of applications that depend on blocked drivers will vary depending on the implementation of the application. Some applications install drivers in order to provide their core functionality, such as anti-virus programs. Others use drivers for portions of their feature set, such as CD-burning applications. The former category of application might not work at all, while the latter might work for features that do not depend on the driver. Because Microsoft works closely with the driver and application vendors to implement fixes, in most cases the application vendor will have an updated Windows XP-compatible version available on their web site for download.
Most applications that ship drivers on the Driver Protection List will already be in the Windows XP application compatibility database. Users will get warnings whenever these applications are installed or run. However, because many drivers are sublicensed to multiple application vendors, Microsoft may not have information on every application that includes the driver. Therefore, for some applications, only the Driver Protection warning will appear.
User Experience
This section describes the notifications that end users receive when a driver is blocked by Driver Protection. There are three scenarios in which a user can be notified:
-
Windows XP Upgrade Advisor (before installing Windows XP)
-
Windows XP Setup (during installation of Windows XP)
-
Windows XP runtime (after installation of Windows XP)
Windows XP Upgrade Advisor Notifications
Before installing Windows XP, a user can run the Upgrade Advisor to learn about known compatibility problems on their system. If the user elects to use Dynamic Update when prompted to do so by the Upgrade Advisor, the Driver Protection list will be updated before any detection is started.
Figure 1 shows an example Upgrade Advisor compatibility report.
Figure 1. Upgrade Advisor Compatibility Report
Figure 2 shows compatibility details for an item detected by the Upgrade Advisor.
Figure 2. Upgrade Advisor Details
Windows XP Setup Notifications
During Windows XP Setup, the user will be notified of compatibility problems, including any detected Driver Protection problems. If the user elects to use Dynamic Update during Windows XP Setup, the Driver Protection List will be updated before any detection is started.
Figure 3 shows an example of a compatibility warning during Windows XP Setup.
Figure 3. Windows XP Setup Compatibility Warning
The user can select an item and click "Details" to see more information about each problem. This information will include instructions for obtaining a fix, if available.
Figure 4 shows compatibility details for an item detected during Windows XP Setup.
Figure 4. Windows XP Setup Compatibility Details
Windows XP Runtime Notifications
If a driver on the Driver Protection List is installed using Windows XP system installation services, Driver Protection will prevent the installation from completing and warn the user. Figure 5 shows compatibility details for incompatible software found when installing a driver using system installation services.
Figure 5. Compatibility Notification during Installation of Drivers
If a driver on the Driver Protection List attempts to load while Windows XP is running, Driver Protection will warn the user. A balloon help notification will appear in the taskbar at login or whenever the driver attempts to load.
Figure 6 shows a balloon help notification for a virus protection program implemented as a filter driver.
Figure 6. Balloon Help Notification for a Driver
Clicking on the balloon will open the Help and Support Center which will present detailed information about the problem and instructions on how to fix it.
Figure 7 shows the Help and Support Center information for the balloon help notification shown in Figure 6.
Figure 7. Help and Support Center Information for a Driver
Matching Criteria
Matching is done on a given SYS file and the associated file attributes listed in the following table. Matching criteria do not include any additional files or an associated Hardware ID. Before loading a driver, Driver Protection uses three primary keys to match that driver against the Driver Protection List.
Table 1. File Attributes Matched by Driver Protection
|
Key
|
Meaning
|
| SYS NAME |
Represents the filename of the SYS driver file. |
| BIN_PRODUCT_VERSION |
Represents the exact product version of the SYS file. |
| UPTO_BIN_PRODUCT_VERSION |
Superset of BIN_PRODUCT_VERSION. Represents all product versions of the SYS file that are less than or equal to the version specified. |
| LINK_DATE |
Represents the exact link date of the SYS file. LINK_DATE appears to the operating system as a more accurate and consistent value than BIN_PRODUCT_VERSION, primarily due to the various ways third parties store their versioning information. LINK_DATE is consistently set by the linker. |
| UPTO_LINK_DATE |
Superset of LINK_DATE. Represents all link dates of the SYS file that are less than or equal to the date specified. |
It is possible to form combinations of matching criteria for Driver Protection to accurately define the list of drivers that are known to cause stability problems under Windows XP. The Windows XP Driver Protection List contains several entries that are combinations of matching criteria. Matching works by the logical AND of any combination of the matching keys.
How to Update a Driver on the Driver Protection List
After a vendor produces an updated version that fixes the known incompatibilities of a driver on the Driver Protection List, it is necessary to change only one of the file attributes used for matching. Because matching is done as a logical AND of all matching attributes, changing one attribute prevents Driver Protection from finding a match in the database for the updated driver so the operating system can load the updated driver.
To update a driver that is on the Driver Protection List, vendors should follow these steps:
-
Produce an updated version of the driver that fixes known incompatibilities.
-
Change one or more of the following attributes of the SYS file to ensure that the updated driver will not be matched by Driver Protection so the operating system will be able to load the driver:
SYS NAME. The SYS NAME represents the filename of the driver file used to match against. Change the driver filename to a different name.
LINK_DATE. The LINK_DATE is automatically set by the linker used to compile the driver. Set the system date and time on the system used to build the updated driver to a date and time greater than the LINK_DATE of the driver on the Driver Protection List.
BIN_PRODUCT_VERSION. The BIN_PRODUCT_VERSION field is defined in the PRODUCTVERSION field within the RC file in the source code used to build a driver. Increment the value of the PRODUCTVERSION field in the RC file and rebuild the driver.
Driver Protection List for Windows XP
This section lists all drivers in the Driver Protection List that are known to cause stability problems in Windows XP Professional and Windows XP Home Edition, as of Windows XP RTM. An updated version of the Driver Protection List will be available in the future at http://www.microsoft.com/whdc/default.mspx.
If the operating system attempts to load one of these drivers, Driver Protection will find a match in the Driver Protection List and prevent the operating system from loading the driver.
Table 2 contains the following information for each entry:
-
Application/Driver. Name of application or driver displayed to users
-
Vendor. Name of vendor displayed to users
-
Driver Binary. File name of the driver binary (SYS_NAME) that Driver Protection uses to match
-
Match Criteria. Criteria that Driver Protection uses to match:
| LINK_DATE |
"Link Date =" under Match Criteria column |
| UPTO_LINK_DATE |
"Link Date <=" under Match Criteria column |
| BIN_PRODUCT_VERSION |
"Link Date <=" under Match Criteria column |
| UPTO_BIN_PRODUCT_VERSION |
"Product Version <=" under Match Criteria column |
-
Message. Hyperlink to actual message displayed to users
Note: Driver Binaries and Matching Criteria listed in italics represent combinations of matching information for the associated driver files.
Table 2. Driver Protection List for Windows XP Home Edition and Windows XP Professional
|
Application/Driver
|
Vendor
|
Driver Binary
|
Match Criteria
|
Message
|
|
Alps Touchpad
|
Alps |
apfiltr.sys
|
Product Version <= 5.2.1.74 |
50009 |
|
Backup Utility Driver
|
Backup Software Vendors |
otman5.sys
|
Product Version <= 1.11.00.151 |
50028 |
|
BlackIce Defender
|
Network Ice Corporation |
blackdrv.sys
|
Product Version <= 2.5.0.0 |
50045 |
|
CD Recording Software
|
Roxio, Inc. |
Cdr4vsd.sys
|
Product Version <= 2.5.0.86 |
50038 |
| |
|
cdralw2k.sys
|
Product Version <= 1.0.0.1036 |
50038 |
| |
|
cdr4_2k.sys
|
Product Version <= 2.5.0.93 |
50038 |
|
Cisco VPN
|
Cisco |
step.sys
|
Link Date <= 12/05/2000 23:54:01 |
50019 |
|
Conexant WINACHSF Softmodem
|
Conexant |
WINACHSF.SYS
|
Link Date <= 01/01/2002 |
50007 |
|
Conexant USB
|
Conexant |
WINACUSB.SYS |
Product Version = 1.0.0.0 Link Date <= 07/01/2001 |
50008 |
|
Deterministic Networks VPN
|
Deterministic Networks |
dne2000.sys
|
Product Version <= 2.0.5 |
50020 |
| |
|
dne.sys
|
Product Version <= 2.0.5 |
50020 |
|
DirectCD
|
Roxio, Inc. |
UdfReadr.sys
|
Product Version <= 1.0.3.116 |
50033 |
| |
|
cdudf.sys
|
Product Version <= 4.3.5.209 |
50033 |
| |
|
UdfReadr.sys
|
Product Version = 5.0.0 |
50033 |
| |
|
cdudf.sys
|
Product Version = 5.0.0 |
50033 |
| |
|
UdfReadr.sys
|
Product Version = 5.0.1 |
50033 |
| |
|
cdudf.sys
|
Product Version = 5.0.1 |
50033 |
|
Epson Stylus Photo 875DC PCMCIA Card Reader
|
Epson |
epusbdsk.sys
|
Product Version = 0.5.0.0 |
50046 |
|
HP PhotoSmart Scanner
|
Hewlett-Packard |
hpi_usb2.sys
|
Product Version = 1.5.2.0 |
50042 |
|
Inoculan / InoculateIT
|
Computer Associates |
ino_fltr.sys
|
Link Date <= 05/01/2001 18:38 |
50022 |
|
Liquid Audio
|
Liquid Audio |
ainctl2k.sys
|
Product Version <= 2.638.0.0 |
50003 |
|
NEC IEEE-1394
|
NEC |
nip1394.sys
|
Product Version <= 2.90.2745.0 |
50029 |
|
NEC OneTouchStartButton Keyboard
|
NEC |
necmfhid.sys
|
Product Version <= 5.0.2195.7 |
50012 |
|
Norton Speed Disk Driver
|
Symantec |
SdDriver.SYS
|
Product Version <= 5.0.0.1 |
50047 |
|
Panda Antivirus Driver
|
Panda Software |
pavdrv.sys
|
Product Version <= 5.0.2195.0 |
50048 |
|
PCGA-CDRW51/A
|
Sony |
VA32W2.SYS
|
Product Version = 1.10.6.0 |
50043 |
|
Promise Filter Driver
|
Promise Technology |
EVIAN.SYS
|
Product Version <= 5.0.2195.175 |
50010 |
|
Sony 1394
|
Sony |
SONY1394.SYS
|
Link Date <= 11/11/1999 08:42:00 |
50006 |
|
Symantec Utility Driver
|
Symantec |
symevent.sys
|
Product Version <= 10.3.1.13 |
50002 |
|
UMAX VistaScan Scanner
|
UMAX |
pv8630.sys
|
Product Version = 4.10.0.1998 |
50041 |
|
USB MultiMediaCard/SD Memory Card
|
Panasonic |
SDCA2KL.sys
|
Product Version <= 1.1 |
50017 |
| |
|
SDCA2KU.sys
|
Product Version <= 1.1 |
50017 |
|
USB MultiMediaCard/SD Memory Card
|
Sanyo Music |
MUSBP2L1.sys
|
Product Version <= 1.1 |
50017 |
| |
|
MUSBP2U1.sys
|
Product Version <= 1.1 |
50017 |
|
USB MultiMediaCard/SD Memory Card
|
Tokyo Electron Device |
Alenk2L.sys
|
Product Version <= 1.1 |
50015 |
| |
|
Alenk2u.sys
|
Product Version <= 1.1 |
50015 |
|
USB MultiMediaCard/SD Memory Card
|
Toshiba |
SDDEVSTL2.sys
|
Product Version <= 1.1 |
50018 |
| |
|
SDDEVSTU2.sys
|
Product Version <= 1.1 |
50018 |
|
Xircom/Entrega USB to Serial Converter
|
XIRCOM |
etiseren.sys
|
Product Version <= 2.5 |
50037 |
| |
|
etiserpd.sys
|
Product Version <= 2.5 |
50037 |
| |
|
etisera.sys
|
Product Version <= 2.5 |
50037 |
Driver Protection List for Windows XP SP1 and Windows Server 2003
In addition to the drivers listed in Table 2, the drivers listed in Tables 3 and 4 are also known to cause instability in Windows XP Service Pack 1 (SP1) and Windows Server 2003.
Table 3. Driver Protection List for Windows XP Service Pack 1 (SP1)
|
Application/Driver
|
Vendor
|
Driver Binary
|
Match Criteria
|
Message
|
|
Yamaha AC-XC WDM Audio Deviced
|
Yamaha Corporation |
yacxg.sys |
Product Version <= 6.13.10.2149 |
50049 |
| |
|
yacxgc.sys |
Product Version <= 6.13.10.2149 |
|
Table 4. Driver Protection List for Windows Server 2003
|
Application/Driver
|
Vendor
|
Driver Binary
|
Match Criteria
|
Message
|
|
Exchange 2000 IFS Driver
|
Microsoft Corporation |
exifs.sys |
Link Date = 08/02/2000 06:12:19 |
50100 |
|
File and Print Services for NetWare Driver
|
Microsoft Corporation |
fpnwsrv.sys |
Product Version <= 5.0.2195.56 |
50104 |
|
Iomega Software
|
Iomega Corporation |
iomdisk.sys |
Link Date <= 09/20/2001 14:33:06 |
50103 |
|
ISA Server 2000
|
Microsoft Corporation |
mspfltex.sys |
Product Version <= 3.0.1200.94 |
50102 |
|
Backup Exec
|
VERITAS Software |
scsiopt.sys |
Product Version <= 4 |
50105 |
| |
|
04mmdat.sys |
Product Version <= 4 |
|
| |
|
0archqic.sys |
Product Version <= 4 |
|
| |
|
0dlttape.sys |
Product Version <= 4 |
|
| |
|
0exabmqic.sys |
Product Version <= 4 |
|
| |
|
0exabyte1.sys |
Product Version <= 4 |
|
| |
|
0exabyte2.sys |
Product Version <= 4 |
|
| |
|
0tandmqic.sys |
Product Version <= 4 |
|
| |
|
0tandqic.sys |
Product Version <= 4 |
|
| |
|
0wangqic.sys |
Product Version <= 4 |
|
| |
|
0wangqic2.sys |
Product Version <= 4 |
|
| |
|
halfinch.sys |
Product Version <= 4 |
|
| |
|
sonysdx.sys |
Product Version <= 4 |
|
| |
|
tratapi.sys |
Product Version <= 4 |
|
| |
|
trscsi.sys |
Product Version <= 4 |
|
|
CD Recording Software
|
Roxio, Inc. |
Cdr4vsd.sys
cdralw2k.sys
cdr4_2k.sys
|
Product Version <= ALL
Product Version <= 1.0.0.1036
Product Version = ALL
|
50108 |
|
Take Two
|
Roxio, Inc. |
prtseqrd.sys
|
Product Version = ALL |
50109 |
|
Compaq Fibre Channel Filter Driver
|
Compaq Computer Corporation |
cpqfcftr.sys
|
Product Version <= 5.0.0.0 |
50106 |
|
Yamaha AC-XC WDM Audio Device
|
Yamaha Corporation |
yacxg.sys
yacxgc.sys
|
Product Version <= 6.13.10.2149
Product Version <= 6.13.10.2149
|
50049 |
|
vsdatant
|
Zone Labs, Inc. |
vsdatant.sys
|
Product Version <= 3.7.98.0 |
50112 |
Driver Protection List for Windows XP SP2
In addition to the drivers listed in Tables 1, 2, and 3, the drivers listed in Table 5 are also known to cause instability in Windows XP Service Pack 2 (SP2).
With Windows XP Service Pack 2, Driver Protection messages are displayed using a local help file. The messages are not hosted on the Internet, and therefore are not referenced in this table.
Table 5. Driver Protection List for Windows XP Service Pack 2 (SP2)
|
Application/Driver
|
Vendor
|
Driver Binary
|
Match Criteria
|
| Security Services & AV Driver |
Command Software |
CSS-DVP.SYS |
Product Version <= 4.90.4.40123 AND Link Date <= 01/23/2004 16:08:00 |
| SMSC LPC Memory Stick Host Controller |
Sony |
smscms.sys |
Link Date <= 09/02/2003 19:07:48 |
| Virtual PC/Windows CE Emulator |
Microsoft |
VPCAppSv.sys |
Product Version <= 6.13.10.2149 AND system is running in PAE or NX mode |
Call to Action
Hardware vendors and driver developers should prepare for Driver Protection in Windows XP as follows:
-
If one of your drivers is on the Driver Protection List, understand the root causes of stability problems caused by the driver under Windows XP and update the driver to fix those problems.
-
When updating a driver, be sure to change at least one matching attribute of the driver file so that it can load properly under Windows XP, as described in this document.
-
Make the updated driver available to customers on your web site.
-
As applicable, vendors should do the following:
System manufacturers and driver distributors should prepare for Driver Protection in Windows XP in the following ways:
-
Ensure that the drivers you are distributing to Windows XP users are not on the Driver Protection List.
-
Obtain updated versions of any drivers on the Driver Protection List from the driver vendor, and distribute those drivers to customers.