Disk IOMedia filter driver fails to detect formatted disk (HFS+ Filesystem)

I have implmented the IOMedia Filter driver without content hint for MAC OS Mojave. The driver gets loaded successfully for the IOMedia objects with IOPropertyMatch as "Whole". I could filter the IO requests at the disk layer successfully. This works very well for RAW and formatted disk. The disk I am using here is external SSD device attached to MAC laptop using Thunderbolt-3 interface.

I see the driver is getting loaded when I plug-in the TB3 cable. In this case the driver is able to filter the IO requests. If the disk is formatted with the HFS+ Filesystem then I see the filesystem content too.

I am facing an issue when I keep plug-in the TB3 cable and reboot the laptop. I have kept the kext files in "/System/Library/Extensions" directory. There are two scenarios to consider, either disk is RAW or Formatted with the HFS+ Filesystem. The scenario 1 is working as expected, but in second scenario the driver is not able to detect the disk.

Scenario 1: RAW Disk (Working well)
  1. Attached RAW disk through TB3 cable to laptop

  2. Reboot the laptop

  3. I see the driver is loaded and filter the IO requests successfully.

Scenario 2: Disk formatted with HFS+ Filesystem (Failed to load driver)
  1. Attached HFS+ Filesystem disk through TB3 cable to laptop

  2. Reboot the laptop

  3. I see the driver failed to detect the disk <<<=== FAILED

  4. But MAC OS detected the HFS+ filesystem on the disk

In Scenario 2, after reboot the filter driver seems to be getting loaded, but not able to detect the disk. It seems the MAC OS FS driver is detecting formatted disk before the filter driver. But if I plug-out the disk and plug-in again, I see the filter driver detects disk and start filtering IO requests.

I think this could be because of driver loading order during boot time, but I am not sure. The filter driver should detect the disk before MAC OS FS driver detect the formatted disk. Thats the reason may be the filter driver failed to detect the disk after reboot. I am out of ideas what can be done to resolve this issue.

Do you think it is driver load order issue? How can we manage the driver load order in MAC OS?

Can anybody please help me to resolve this issue?

Thanks in advance.

Did you set the correct "IOProbeScore" value. Did you resolve your problem?

Disk IOMedia filter driver fails to detect formatted disk (HFS+ Filesystem)
 
 
Q