autochk and volume dismount


I have a filter that receives IRP_MN_VOLUME_DISMOUNT requests to the
\Device\HarddiskVolume1 and
\Device\HarddiskVolume3. I pass these down to NTFS which completes the IRP
Now I mark my state information that the volume is dismounted.
However, the VPB mounted flag is still set and does not get cleared by
Also, I never get another mount request. In fact, all I get are
FSCTL_IS_VOLUME_MOUNTED requests which succeed.
Most likely because the volume never really got dismounted.

My questions are:
Is there some check I am missing on the volume dismount to indicate that
the device is not really dismounted?
(Why does the IRP request complete successfully in this case?)
Since it is not removable media, I will not get IRP_MN_VERIFY_VOLUME to
remount, so must I track the FSCTL_IS_VOLUME_MOUNTED
calls and reset my state information accordingly?
Is this expected behaviour for non-removable media?