C28166
警告 C28166: この関数は、IRQLを関数開始時の現在の値に復元しませんが、そうする必要があります。
この警告は、関数に _IRQL_requires_same_ アノテーションがあり、関数終了時に関数の開始時にドライバーが実行されていた IRQL に IRQL を復元しない、関数を経由するパスが少なくとも 1 つあることを示します。
通常、_IRQL_requires_same_ アノテーションはコールバック関数で使用されます。
この警告を回避するには、ドライバーは初期 IRQL 値を適切に保存し、関数終了時に同じ IRQL 値を復元する必要があります。これは、_IRQL_requires_same_ アノテーションがアサートするものです。