C28173
警告 C28173:目前的函式似乎無法正確地適應超過 4 GB 的實體記憶體
其他資訊 |
程序代碼似乎不會從傳回少量地圖緩存器的 IoGetDmaAdapter 呼叫中復原。 如需詳細資訊,請參閱上述文件。 |
在記憶體超過 4 GB 的系統上, IoGetDmaAdapter 函式可能會傳回比要求的對應緩存器少;當要求的值變得很大時,這會更可能 (接近 64) 。這是因為必須將超過 4 GB 的實體記憶體對應到低於 4 GB 的空間。
當程式代碼不符合要求較少的緩存器時,會出現這個警告訊息。 當函式呼叫 IoGetDmaAdapter時,程式代碼分析工具會模擬 IoGetDmaAdapter 函式傳回比要求少的緩存器數目。 呼叫函式必須處理此條件並成功傳回。
請注意,驅動程式在超過 4 GB 的系統上可能會失敗的其他方式。 您應該檢查程式代碼是否有這些可能的失敗模式。 如需有關 4 GB 記憶體問題和地圖緩存器的詳細資訊,請參閱 NdisMAllocateMapRegisters。