D826.qxp_May 2018 29/03/2018 14:53 Page 15

Driver Errors, Quick Solutions D 826/1

Quickly Resolve Driver Problems Using the Built-in Verifier.exe Tool

Using the information given in this article you will be able to:  Pinpoint the faulty device drivers on your system,  Solve driver errors to prevent Blue Screen STOP crashes,  Fix problems with Verifier.exe in Safe Mode.

Driver errors are the bane of many Windows users, and if you haven't come up against one yet you should count yourself lucky. Not only do faulty drivers lead to crashes, out-of-date drivers can drag down your performance. But it is not easy to identify the driver that is the cause of an error message or system crash. In this article, I’ll show you how to use the Driver Verifier Manager (Verifier.exe) to check all the installed drivers on your system in order to boost stability and Windows reliability and correct errors when you encounter driver problems.

• Fix Half of All Hardware Errors Caused by Driver Problems ...... D 826/2 • Run the Driver Verifier Manager on Your PC ...... D 826/3 • Analyse the Results of Your First Driver Test ...... D 826/6 • Solve Driver Problems Using the Driver Verifier Manager ...... D 826/9 • The Different Driver Checks Explained in Detail ...... D 826/10 • Solve Driver Errors that Make Windows Constantly Re-boot ...... D 826/12

The Windows Advisor May 2018 15 D826.qxp_May 2018 29/03/2018 14:53 Page 16

D 826/2 Driver Errors, Quick Solutions

Fix Half of All Hardware Errors Caused by Driver Problems How Windows Drivers provide an essential interface between your uses drivers and your PC’s hardware devices. To ensure that hardware developers don’t have to completely develop everything from scratch, provide a Hardware Abstraction Layer (HAL) which acts as a buffer between Windows and your device drivers. This means that Windows only has to load a small amount of driver code in order to function. Every hardware Each hardware device in your PC needs its own driver to device needs a allow Windows to use it. When Windows needs to get data driver from a device such as your mouse, the driver provides it in a suitable form that can be understood by Windows. The driver will also transfer instructions from Windows back to the device. Driver errors If there is an error in the driver subsystem, you will lead to Windows experience Windows crashes. If the error message names a crashes specific driver, you can quickly cure the problem: simply replace the faulty driver with the most up-to-date version available from the hardware manufacturer’s website, or use the built-in to install the latest driver version from Microsoft. Blue Screen STOP errors are amongst the worst problems you can errors are often experience on your PC and are invariably caused by faulty caused by driver drivers. The most common STOP errors are as follows: faults • IRQL_NOT_LESS_OR_EQUAL 0xA • PAGE_FAULT_IN_NONPAGED_AREA 0x50 • ATTEMPTED_WRITE_TO_READONLY_MEMORY 0xBE • SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION 0xC1

16 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 17

Driver Errors, Quick Solutions D 826/3

• DRIVER_VERIFIER_DETECTED_VIOLATION 0xC4 • DRIVER_CAUGHT_MODIFYING_FREED_POOL 0xC6 • TIMER_OR_DPC_INVALID 0xC7 • DRIVER_VERIFIER_IOMANAGER_VIOLATION 0xC9

The causes of mysterious crashes or STOP errors are often Verifier.exe – unclear. If you suspect a driver is the cause but the driver a built-in name isn’t reported in the error message, you can check all Microsoft tool the installed drivers on your system and find any faulty drivers using a tool that is integrated into Windows. The Driver Verifier Manager (filename Verifier.exe) is integrated into Windows, 10/8.1 and 7.

Run the Driver Verifier Manager on Your PC In order to open the Driver Verifier Manager: • On , right-click on Start and select Run , Launch the type verifier into the Open line and then click on OK . Driver Verifier Manager • On Windows 8.1, press + R , type verifier.exe and click on OK . • On Windows 7, click on Start and type the command verifier into the search text field, then click on verifier.exe in the list of search results. Verifier.exe launches a wizard when it starts that gives you The wizard several options you can use to scan your drivers. Once provides various you’ve selected an option, the tool restarts and begins options analysing your system. The analysis process will load all of the drivers on your system in a special mode where they can be analysed. Windows then runs normally, but verifier.exe keeps a record of what the drivers on your system are doing.

The Windows Advisor May 2018 17 D826.qxp_May 2018 29/03/2018 14:53 Page 18

D 826/4 Driver Errors, Quick Solutions

Select the test to perform. We recommend starting with Create standard settings

Next time you run the tool use this option to find information about your drivers

The wizard will help you configure the Driver Verifier Manager

Perform the first In the first step you need to select the drivers that you want test with the to test. The tool provides several options in addition to the standard default Create standard settings , but these are mostly of use settings to software developers. To begin your first test, select Create standard settings and then click on Next .

18 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 19

Driver Errors, Quick Solutions D 826/5

If you suspect a particular type of driver to be causing your problems, choose Select driver names from a list

To complete your check you have to restart your system then rerun the tool

Select which driver types you want to check You can run the Driver Verifier Manager as often as you like. Choose which Firstly, run a test using the option Automatically select drivers to test unsigned drivers . If this doesn’t find any problems then repeat the steps and select the next option, then run the tool again. This way you can work your way through the options running the Driver Verifier Manager each time until you find the cause of your driver problems. If you’ve never installed any third party drivers on your system and have only used the default drivers supplied by Microsoft, then you can skip the first test, as all of the drivers on your system will be signed.

The Windows Advisor May 2018 19 D826.qxp_May 2018 29/03/2018 14:53 Page 20

D 826/6 Driver Errors, Quick Solutions

In this list you will see the drivers to be checked. The selection depends on which type of driver was chosen

After clicking Finish the tool tells you to re-boot Once you set up the analysis on your system, re-boot your computer Driver files usually have cryptic names set by device manufacturers, so use the information in the Description column to check what each driver actually does. If you find that the Driver Verifier Manager will only check a few drivers, you can use the Back button to return to the previous options and select a different test that will check more drivers. This is also useful if you find a particular driver that you want to check is not included in the test. After running through all of the driver verification options, you will find the drivers that are causing problems on your system. You should uninstall these, or upgrade them to new versions from the relevant device manufacturer.

Analyse the Results of Your First Driver Test Verifier Once you have re-booted your PC and launched Driver Verifier requires a Manager Verifier again, select the option Display information re-boot about the currently verified drivers and then click on Next .

20 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 21

Driver Errors, Quick Solutions D 826/7

The tool will show a split window with settings that are to be checked on the left-hand side and drivers that are to be checked on the right-hand side of the screen. On the left side, select the type of check to perform and on Choose which the right-hand side, the driver. You can add new drivers to drivers you want be checked by clicking the Add button, then selecting the to analyse driver file. Similarly, you can remove drivers from the analysis by selecting the driver and then clicking the Remove button.

Choose the drivers to check and click Next

Make sure the checks you want to run are set to Yes

Use this button to alter the tests performed

Test each individual loaded driver

To the right of the driver name you will see one of three Check the status possible statuses for each driver. The possible statuses are: of your driver

The Windows Advisor May 2018 21 D826.qxp_May 2018 29/03/2018 14:53 Page 22

D 826/8 Driver Errors, Quick Solutions

Status Description Loaded The driver is currently loaded and verified. Unloaded The driver is not currently loaded but it was loaded at least once since you restarted the computer. Never loaded The driver was never loaded. This status can indicate that the driver's image file is corrupted or that you specified a driver name that is missing from the system.

Check on Click on Next and the tool will display a window showing your global global performance indicators that refer to the drivers and performance types of checks that you configured previously.

The data displayed contains a lot of information that is only relevant to software developers their programs, but you should take note of any performance indicators that are flagged with error messages. For example, if you see a Pool allocations failed counter with a value greater than zero, there is a fault with your driver. Driver-specific Click on Next and you will arrive at a window that shows performance performance indicators for each specific driver that has been indicators checked. You can switch the driver displayed using the drop- down menu at the top of the screen.

Set the driver whose performance indicators you want to monitor

The results of the test are shown in real time Performance counters for each driver tested are displayed

22 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 23

Driver Errors, Quick Solutions D 826/9

After you’ve run verifier.exe once, it will run in the Verifier runs background permanently. This takes up a lot of system in the resources and both slow down your PC and affect other background applications. If you've resolved your driver problems and no longer need Driver Verifier Manager, you can turn it off to free up system resources. To do so: In Windows 10/8.1/7, press + R , type in verifier.exe /reset in the Open box, then click on OK .

Solve Driver Problems Using the Driver Verifier Manager Unfortunately, the Driver Verifier Manager does not always Close in Safe work perfectly. When you re-boot your system, you may be Mode presented with a STOP error message caused by verifier.exe. If this happens, you need to boot into Safe Mode and stop verifier.exe from running. Proceed as follows to do so: As soon as the computer starts up, if you have Windows 10/8.1, press [Shift ] + [F8 8] , click See advanced repair options > Troubleshoot > Advanced options > Windows Startup Settings > Restart . If you have Windows 7, simply press the [F8 8] key when the BIOS messages have disappeared from the screen.

Depending on your Windows version, the menu that you How you access access will present several other Safe Mode options. Safe Mode depends on Once in Safe Mode, run verifier.exe using the steps given which version earlier and disable the tool. You will recognise Safe Mode of windows by the words 'Safe Mode' in each corner of the screen, and you have the low screen resolution.

The Windows Advisor May 2018 23 D826.qxp_May 2018 29/03/2018 14:53 Page 24

D 826/10 Driver Errors, Quick Solutions

Boot into Safe Mode

Run Safe Mode with Networking

Run a Safe Mode Command Prompt

Boot into Safe Mode in Windows 7 The Different Driver Checks Explained in Detail Tests in detail When you test your drivers, many different statuses can be reported. The table below lists those statuses and explains what they mean:

Status Description Special Pool When this option is active, Driver Verifier Manager allocates most of the driver's memory requests from a special pool. This special pool is monitored for memory overruns, memory underruns, and memory that is accessed after it is freed. Pool Tracking When this option is active, Driver Verifier Manager checks to see if the driver has freed all its memory allocations when it is unloaded. This reveals memory leaks. Force IRQL When this option is active, Driver Verifier Manager Checking places extreme memory pressure on the driver by invalidating code in memory that can be copied to the paging file. If the driver attempts to access paged memory at the wrong IRQL or while holding a spin lock, Driver Verifier Manager detects this behaviour.

24 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 25

Driver Errors, Quick Solutions D 826/11

Status Description I/O Verification When this option is active, Driver Verifier Manager checks to see if the driver has freed all its memory allocations when it is unloaded. This reveals memory leaks that lead to STOP errors. Deadlock When this option is active, Driver Verifier Manager Detection monitors the driver's use of memory locking features of Windows to avoid conflicts. This detects if the driver's code has the potential for causing a deadlock at some point. DMA DMA stands for Direct Memory Access, which allows Verification hardware to directly interface with the memory. When this option is active, Driver Verifier Manager monitors the driver's use of DMA routines. This detects improper use of DMA buffers, adapters, and map registers. Security Checks When this option is active, Driver Verifier Manager looks for common errors that can result in security vulnerabilities, such as a reference to user-mode addresses by kernel-mode routines. Miscellaneous When this option is active, Driver Verifier Manager Checks looks for common causes of driver crashes, such as the mishandling of freed memory and other common programming mistakes that can lead to crashes. DDI Compliance When this option is active, Driver Verifier Manager Checking applies a set of interface (DDI) rules that check for the proper interaction between a driver and the kernel interface of the operating system. This feature is only available from Windows 8 onwards.

Automatic These are the basic checks performed on a driver that is Checks being verified, regardless of which other options have been selected.

The Windows Advisor May 2018 25 D826.qxp_May 2018 29/03/2018 14:53 Page 26

D 826/12 Driver Errors, Quick Solutions

Solve Driver Errors that Make Windows Constantly Re-boot Serious errors After installing new hardware or device drivers you may find often go that when you switch your PC on it seems to be booting unreported normally but suddenly flashes up a black screen, re-boots without warning and then ends up in a constant cycle of automatic re-boots. Because you cannot access Windows, it is impossible to analyse the error that is causing the fault, and nothing is displayed on screen to give you a clue. This problem happens because a STOP error interrupts the boot process, but Windows is configured to automatically re-boot when a crash occurs.

Test by booting To solve the problem, you need to start in Safe Mode . Switch into Safe Mode on your PC and press [SShhiifft] + [F8 ] , click See advanced repair options > Troubleshoot > Advanced options > Windows Startup Settings > Restart if you have Windows 10/8.1. If you have Windows 7, simply press the [F8] key when the BIOS messages have disappeared from the screen. Once in Safe Mode, press + R , type control and click OK . Click > System then click the Advanced system settings link. Next, click on the Settings button under Startup and Recovery . Untick the ‘Automatically restart’ option, then click on OK to close the window. When Windows encounters a problem now, the error will be displayed on screen.

Deactivate the ‘Automatically restart’ option and click OK

26 The Windows Advisor May 2018 D826.qxp_May 2018 29/03/2018 14:53 Page 27

Driver Errors, Quick Solutions D 826/13

Make Your System Faster and More Stable with New Drivers If you have discovered a faulty driver using the Driver Update your Verifier Manager then you need to update it. A newer driver drivers will usually be more stable and can make the device in question perform faster. At first glance it therefore makes sense to update all of your system drivers regularly. However, in practice, new drivers sometimes cause errors or compatibility problems so the general rule here is:

First, check what changes have been made in the new Yes No Test    version of the driver that you plan to install. The docum-   entation from the driver manufacturer will tell you this.  If the new driver corrects an error in a previous version or leads to better performance for your device, then you should install it.  If the new functions introduced with the updated driver do not bring any extra value, then don’t install the driver.

How to Find the Driver Version being Used by a Hardware Component In order to find out which driver and which version of the driver is installed on your PC, you need to use the Device Manager. To open the Device Manager, press + R , type DEVMGMT.MSC and click OK . The Device Manager controls your whole PC’s hardware Using Device configuration. All of your hardware devices are shown in a Manager tree structure, with devices grouped into categories. The main window shows you a list of all the devices that are installed on your PC. If there are no problems, none of the tree nodes will be expanded and every item will have a display symbol. ►

The Windows Advisor May 2018 27 D826.qxp_May 2018 29/03/2018 14:53 Page 28

D 826/14 Driver Errors, Quick Solutions

Use the View menu to sort your devices

Components are grouped into categories The Device Manager view on Windows 10 With a double-click isn’t much on a device you can open the different from properties the Windows 8.1/7 version Find your driver In order to find the version of a driver on your system, right-click version on the device entry and choose Properties from the pop-up menu. Click on the Driver tab, then click on the Driver Details button.

Information about the driver file and its hard drive location are shown here Under Driver The developer and Details you will version is shown here find information about the driver version Once you have the version number of a driver, check on the relevant device manufacturer's website for an updated version. Updated drivers can usually be found in the Support section of a hardware manufacturer's website, where you will normally need to search for the device in question to find its driver.

28 The Windows Advisor May 2018