DRM leases may not be deactivated correctly (owner termination?)
I've been seeing problems with SteamVR losing its lease (on vrcompositor exiting, I believe) and being unable to get a new lease on restarting (in the same X session). It seems that active leases aren't being cleaned up on client exit (it's easy to tell that the lease remains active from how xrandr lists the display modes for leased devices). I've done some debugging of this and have a partial workaround which I'm currently testing – it tries to free up leases before tearing down the lease objects and writes some extra log text to help with debugging.
To reproduce the problem – I've found that it's sufficient merely to exit and restart SteamVR. Causing it to fall over in some way or forcibly killing the lessee will also work.
When the failure has occurred, the next invocation of SteamVR will result in the compositor opening a window on the desktop, showing what should be shown in the HMD, and SteamVR will complain about not being in direct mode.
(Currently testing with 1.20.6, sourced via Devuan.)