Table of Contents

100% CPU usage on single core after disconnecting from RDP session to Windows 10 Pro 1903

Problem Description

You may be experiencing a critical issue on a remote machine running Windows 10 Pro 1903 when disconnecting from an RDP session. One CPU core may end up using 100% CPU (dwm.exe). If logging in from the console, the CPU load would go back to normal. However, in some cases, a reconnect via RDP might eventually freeze the entire operating system.

The problem is caused by a bug within the new Windows Display Driver Model (WDDM) based Indirect Display Driver (IDD) and it only appears on some systems. Microsoft recommends to update your display drivers for the hardware GPU installed. This doesn't help much because many display drivers are not updated with a fix for this.

To my knowledge, Windows Server 2019 is not affected. This only affects single-session Windows 10 RDP hosts running 1903 and up. It can be reproduced when running a Windows VM on VirtualBox 6.0.12 using latest Guest Additions (Graphics Controller: VBoxVGA).

Fix the problem using Group Policy Editor

Remember to revert this and test if the problem persists when you're updating to a future Windows feature release. Microsoft may be fixing this and XDDM remote display drivers are now deprecated, so you will not want to apply this fix forever.

This fix will only work on Windows 10 Pro and up (Windows 10 Home doesn't have RDP anyway). Run gpedit.msc when logged in to the remote host with Administrator privileges and change the following:

Local Computer Policy
 Computer Configuration
  Administrative Templates
   Windows Components
    Remote Desktop Service
     Remote Desktop Session Host
      Remote Session Environment
       Use WDDM graphics display driver for Remote Desktop Connections -> DISABLED

This will force Remote Desktop to use legacy XDDM remote display drivers. Reboot the affected RDP host and the problem should be gone.