Changes between Windows 10 and 11?

This is a longshot, but it's worth a try asking here.

Just before I retired, in 2022 or so, I delivered a driver to a client based on the generic Xilinx XDMA driver, attestation signed by me. It worked splendidly in Windows 10, client happy, developer happy.

They sent a message this week saying that, when a system upgrades from Windows 10 to 11, it works fine. But on a clean install of Windows 11, it complains "the driver is not found".

I'm now trying to do some due diligence for them. Does anybody know of any significant difference in driver installation between Windows 10 and 11 that might cause this? I know I haven't given a lot of detail, but I'm hoping this description triggers an "oh yeah!" among those in the trenches.

Maybe your driver is not compatible with HVCI?

So the HVCI remains disabled after upgrade, but is active on fresh Windows 11 install.

I’d check the system event log and maybe verifying the INF against the Win11 version. I recall a number of years ago having to re-sign drivers, but the details of why they were failing to install eludes me now.

There shouldn't be any difference in behavior, particularly not between a clean install and an upgrade. The only thing I can think of is some difference in regards to the signing. If you have setupapi logs I would like to see them

Bonjour,

I developed and maintained DrvDMA (mainly used with the XDMA engine) for many years and I did not get any issues on Windows 11.

The question I have for you is: do you connect your device through Thunderbolt?

I ask that because many of my clients use my driver with Thunderbolt connected devices. I had to edit the INF file to disable the DMA protection for it to work this way.

Regards,

Martin Dubois

Long shot but what dirids is your INF trying to install to? I recently rebuilt a really old driver and whoever wrote the INF was trying to install the driver to %11%\drivers or %10%\system32\drivers(can't remember which one) instead of using 12 or 13. When I tried to sign it Microsoft kicked it back saying the dirid wasn't allowed. Possible latest Windows 11 builds are enforcing this too.

We're enforcing this at signing only, there is no behavior change to the OS

These are all good hints. I had already asked the client for the setup log files. I suppose I should contact Xilinx too, and see if they have updated XDMA. I'll let y'all know what happens.

my 5 cents, I had a same error message when DriverEntry returned error.

Hello all,

Since the system says "no driver" well before any attemps to load the driver .SYS itself, so I'm not sure this is about the driver per se. It looks like an .INF or signature issue.

Since the driver is only signed for Windows 10, I'm gessing it is rejected by Windows 11.

So could you do one test :
* Try to install the driver straight from the Hardware Manager : select your device among the "other devices", then "update the driver" , select the driver's .INF. Then you can check the system's logs in the Windows/INF/setupapi.dev.log file. I'm sure you know about this.

If it's a signature issue, you could enable the "Test Mode" of Windows (needs to disable the Secure Boot feature first).

About the directories, our driver's INF file refers to the %12 (Drivers directory) and %11 (System32 directory) without any issue.

I hope this help.

Regards,

Eric.

Thinking more though about Kernel DMA Protection since @MartinDuboisKMS brought it up. Primarily it's for thunderbolt connected devices but really it's defined as any "PCIe hot plug device". If PCIe hot plug is supported by the system, or perhaps Windows simply thinks it is, it could be rejecting the device. And this is a setting that I can definitely see being different between upgrades from Win10 and fresh Win11.

When I recently did a clean install of Windows 11 the drivers for two different sound cards did not load until I turned of some security setting! It was one from sound blaster and one from Intel and the error message was like you said, something about the driver "not found"

"Not found" is exactly the message my client got. They are doing more characterization of the problem. He says if he uninstalls and reinstalls after this happens, it seems to work, so he is not discounting the possibility of user error.