You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We're building a .Net 8/WinUI app for ARM64. We've faced an issue with BSOD.
To get to the root cause, we prepared an elementary app that drives to the same issue. We've built a .Net app based on the template from the official website. The app just opens COM port connection and displays a progress ring. BSODs occur nondeterministic. Unfortunately, we haven't got BSODs with other, non-.Net apps. The app works fine on Intel CPUs.
The exact error code retrieved from BSOD memory dumps is:
EXCEPTION_CODE_STR: c0000005
The failing module pointed is:
MODULE_NAME: sdport
IMAGE_NAME: sdport.sys
Our tech stack:
Win10 IoT 21H2 long term suport [BSP 1.5.1]
CPU: i.MX 8M Mini Quad Core 1.8 GHz
ARM architecture
.Net8 (we tested it also with .Net6 and .Net9)
The text was updated successfully, but these errors were encountered:
Have you gone through the process of verifying that this isn't a driver bug?
The fact that sdport.sys, which is the SD/eMMC miniport driver, is named here is quite substantial. With how the driver interfaces handles addresses, it is next to impossible for a user mode address to affect a driver. I hope I don't have to go into details as to how this has major security implications.
This really means that, as unlikely as it feels, the most likely cause of this is the sdport.sys driver, or a driver attached to it, is failing a memory allocation or is corrupting a pointer. Also, yes, driver bugs can be like this, where it requires a specific sequence of actions to potentially cause the bug to manifest.
If you don't quite want to believe me here, at lease start the process of verifying with the driver vendor to figure out if this is a driver bug.
I was doing some additional checks. I don't have any IoT devices, but I have access to an ARM64 Surface device.
Doing some tests with a device running Windows 10 Pro doesn't show any real problems. But this is a different edition of Windows and it uses an NVMe as the main storage device. I can't say that there is no issues with one particular driver in this case, and I can't say that there is no real problems in Windows, but I have not experienced any major stability issues using the ARM64 version of Windows.
Interestingly, I normally used Windows 11 on the device, but I had also recently purchased one of the new Snapdragon Surface devices and I was in the process of resetting the older device (a Surface Pro X from 2019). This meant that I was able to reset it using the Windows 10 recovery media and do some tests on it. There was some interesting timing here.
We're building a .Net 8/WinUI app for ARM64. We've faced an issue with BSOD.
To get to the root cause, we prepared an elementary app that drives to the same issue. We've built a .Net app based on the template from the official website. The app just opens COM port connection and displays a progress ring. BSODs occur nondeterministic. Unfortunately, we haven't got BSODs with other, non-.Net apps. The app works fine on Intel CPUs.
The exact error code retrieved from BSOD memory dumps is:
EXCEPTION_CODE_STR: c0000005
The failing module pointed is:
MODULE_NAME: sdport
IMAGE_NAME: sdport.sys
Our tech stack:
Win10 IoT 21H2 long term suport [BSP 1.5.1]
CPU: i.MX 8M Mini Quad Core 1.8 GHz
ARM architecture
.Net8 (we tested it also with .Net6 and .Net9)
The text was updated successfully, but these errors were encountered: