對於要求從卸除式媒體進行 I/O 作業的每個 IRP,卸除式媒體設備驅動器必須判斷是否已在其 DeviceObject-Flags> 中設定DO_VERIFY_VOLUME。 如果已設定此值,驅動程式必須執行下列動作:
如需 IRP_MJ_READ、IRP_MJ_WRITE 和 IRP_MJ_DEVICE_CONTROL 要求,請檢查是否已在驅動程式的 IO_STACK_LOCATION 結構中的 Flags 成員中設定 SL_OVERRIDE_VERIFY_VOLUME。 如果是,請繼續所要求的作業。
每當 IFS 掛載或重新掛載可移除媒體卷時,裝置控制要求中回傳基礎媒體的邏輯結構相關資訊時,需要在 I/O 堆疊位置的 Flags 成員中設置 SL_OVERRIDE_VERIFY_VOLUME。
否則,驅動程式必須在其 DeviceObject-Flags> 中設定DO_VERIFY_VOLUME時,拒絕對對應的磁碟驅動器、裝置或分割區執行 I/O 要求。 可移除媒體驅動程式必須拒絕傳送到對應裝置的 IRP,直到 FSD 清除可移除媒體驅動程式的 DeviceObject-Flags> 中的 DO_VERIFY_VOLUME 為止。
如果卸除式媒體設備驅動程式在設置DO_VERIFY_VOLUME且針對先前的傳輸請求未設置SL_OVERRIDE_VERIFY_VOLUME的情況下不失效IRPs,則文件系統既無法維持快取檔案數據的完整性,也無法提示使用者重新掛載持有已開啟檔案的媒體。