Trace("====>\n");
- //
- // Affinitize this thread to the same CPU as the event channel
- // and DPC.
- //
- status = KeGetProcessorNumberFromIndex(Ring->Index, &ProcNumber);
- ASSERT(NT_SUCCESS(status));
-
- Affinity.Group = ProcNumber.Group;
- Affinity.Mask = (KAFFINITY)1 << ProcNumber.Number;
- KeSetSystemGroupAffinityThread(&Affinity, NULL);
+ if (RtlIsNtDdiVersionAvailable(NTDDI_WIN7) ) {
+ //
+ // Affinitize this thread to the same CPU as the event channel
+ // and DPC.
+ //
+ // The following functions don't work before Windows 7
+ //
+ status = KeGetProcessorNumberFromIndex(Ring->Index, &ProcNumber);
+ ASSERT(NT_SUCCESS(status));
+
+ Affinity.Group = ProcNumber.Group;
+ Affinity.Mask = (KAFFINITY)1 << ProcNumber.Number;
+ KeSetSystemGroupAffinityThread(&Affinity, NULL);
+ }
Timeout.QuadPart = TIME_RELATIVE(TIME_S(XENVIF_RECEIVER_WATCHDOG_PERIOD));
Trace("====>\n");
- //
- // Affinitize this thread to the same CPU as the event channel
- // and DPC.
- //
- status = KeGetProcessorNumberFromIndex(Ring->Index, &ProcNumber);
- ASSERT(NT_SUCCESS(status));
+ if (RtlIsNtDdiVersionAvailable(NTDDI_WIN7) ) {
+ //
+ // Affinitize this thread to the same CPU as the event channel
+ // and DPC.
+ //
+ // The following functions don't work before Windows 7
+ //
+ status = KeGetProcessorNumberFromIndex(Ring->Index, &ProcNumber);
+ ASSERT(NT_SUCCESS(status));
- Affinity.Group = ProcNumber.Group;
- Affinity.Mask = (KAFFINITY)1 << ProcNumber.Number;
- KeSetSystemGroupAffinityThread(&Affinity, NULL);
+ Affinity.Group = ProcNumber.Group;
+ Affinity.Mask = (KAFFINITY)1 << ProcNumber.Number;
+ KeSetSystemGroupAffinityThread(&Affinity, NULL);
+ }
Timeout.QuadPart = TIME_RELATIVE(TIME_S(XENVIF_TRANSMITTER_WATCHDOG_PERIOD));
PacketsQueued = 0;
</ClCompile>
<Link>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
- <AdditionalDependencies>$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>$(DDK_LIB_PATH)/Rtlver.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<EnableCOMDATFolding>false</EnableCOMDATFolding>
</Link>
<Inf>
</ResourceCompile>
<Link>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
- <AdditionalDependencies>$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>$(DDK_LIB_PATH)/Rtlver.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<EnableCOMDATFolding>false</EnableCOMDATFolding>
</Link>
<Inf>
<None Include="..\package\package.vcxproj" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
\ No newline at end of file
+</Project>