Index: /trunk/src/VBox/Runtime/r3/win/mp-win.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/win/mp-win.cpp	(revision 64292)
+++ /trunk/src/VBox/Runtime/r3/win/mp-win.cpp	(revision 64293)
@@ -57,11 +57,11 @@
 *   Defined Constants And Macros                                                                                                 *
 *********************************************************************************************************************************/
-/** @def RTMPWIN_UPDATE_GIP_GLOBAL
+/** @def RTMPWIN_UPDATE_GIP_GLOBALS
  * Does lazy (re-)initialization using information provieded by GIP. */
 #ifdef IPRT_WITH_GIP_MP_INFO
-# define RTMPWIN_UPDATE_GIP_GLOBAL() \
+# define RTMPWIN_UPDATE_GIP_GLOBALS() \
     do { RTMPWIN_UPDATE_GIP_GLOBALS_AND_GET_PGIP(); } while (0)
 #else
-# define RTMPWIN_UPDATE_GIP_GLOBAL() do { } while (0)
+# define RTMPWIN_UPDATE_GIP_GLOBALS() do { } while (0)
 #endif
 
@@ -523,5 +523,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
-    RTMPWIN_UPDATE_GIP_GLOBAL();
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
 #ifdef IPRT_WITH_RTCPUID_AS_GROUP_AND_NUMBER
@@ -540,5 +540,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
-    RTMPWIN_UPDATE_GIP_GLOBAL();
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
     if ((unsigned)iCpu < RT_ELEMENTS(g_aidRtMpWinByCpuSetIdx))
@@ -568,4 +568,7 @@
 RTDECL(int) RTMpSetIndexFromCpuGroupMember(uint32_t idxGroup, uint32_t idxMember)
 {
+    RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
+
     if (idxGroup < g_cRtMpWinMaxCpuGroups)
         if (idxMember < g_aRtMpWinCpuGroups[idxGroup].cMaxCpus)
@@ -577,4 +580,7 @@
 RTDECL(uint32_t) RTMpGetCpuGroupCounts(uint32_t idxGroup, uint32_t *pcActive)
 {
+    RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
+
     if (idxGroup < g_cRtMpWinMaxCpuGroups)
     {
@@ -591,4 +597,7 @@
 RTDECL(uint32_t) RTMpGetMaxCpuGroupCount(void)
 {
+    RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
+
     return g_cRtMpWinMaxCpuGroups;
 }
@@ -603,7 +612,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
-#ifdef IPRT_WITH_RTCPUID_AS_GROUP_AND_NUMBER
-    RTMPWIN_UPDATE_GIP_GLOBAL();
-#endif
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
     PROCESSOR_NUMBER ProcNum;
@@ -643,4 +650,6 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
+
 #ifdef IPRT_WITH_RTCPUID_AS_GROUP_AND_NUMBER
     return RTMPCPUID_FROM_GROUP_AND_NUMBER(g_cRtMpWinMaxCpuGroups - 1,
@@ -655,5 +664,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
-    RTMPWIN_UPDATE_GIP_GLOBAL();
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
     /* Any CPU between 0 and g_cRtMpWinMaxCpus are possible. */
@@ -675,4 +684,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
     return g_cRtMpWinMaxCpus;
@@ -683,4 +693,5 @@
 {
     RTOnce(&g_MpInitOnce, rtMpWinInitOnce, NULL);
+    RTMPWIN_UPDATE_GIP_GLOBALS();
 
     return g_cRtMpWinMaxCpuCores;
