Lines Matching defs:idCpu

63 RTDECL(int) RTMpCpuIdToSetIndex(RTCPUID idCpu)
65 return idCpu < RTCPUSET_MAX_CPUS && idCpu < NR_CPUS ? (int)idCpu : -1;
84 RTDECL(bool) RTMpIsCpuPossible(RTCPUID idCpu)
87 if (RT_UNLIKELY(idCpu >= NR_CPUS))
91 return cpu_possible(idCpu);
93 return idCpu < (RTCPUID)smp_num_cpus;
96 return idCpu == RTMpCpuId();
104 RTCPUID idCpu;
107 idCpu = RTMpGetMaxCpuId();
110 if (RTMpIsCpuPossible(idCpu))
111 RTCpuSetAdd(pSet, idCpu);
112 } while (idCpu-- > 0);
139 RTDECL(bool) RTMpIsCpuOnline(RTCPUID idCpu)
142 if (RT_UNLIKELY(idCpu >= NR_CPUS))
145 return cpu_online(idCpu);
147 return cpu_online_map & RT_BIT_64(idCpu);
150 return idCpu == RTMpCpuId();
159 RTCPUID idCpu;
162 idCpu = RTMpGetMaxCpuId();
165 if (RTMpIsCpuOnline(idCpu))
166 RTCpuSetAdd(pSet, idCpu);
167 } while (idCpu-- > 0);
238 RTCPUID idCpu = RTMpCpuId();
241 if (RTCpuSetIsMember(pWorkerSet, idCpu))
243 pArgs->pfnWorker(idCpu, pArgs->pvUser1, pArgs->pvUser2);
244 RTCpuSetDel(pWorkerSet, idCpu);
254 RTCPUID idCpu;
262 Args.idCpu = NIL_RTCPUID;
268 idCpu = RTMpCpuId();
282 Args.pfnWorker(idCpu, Args.pvUser1, Args.pvUser2);
283 RTCpuSetDel(Args.pWorkerSet, idCpu);
317 Args.idCpu = NIL_RTCPUID;
344 RTCPUID idCpu = RTMpCpuId();
346 if ( idCpu == pArgs->idCpu
347 || idCpu == pArgs->idCpu2)
349 pArgs->pfnWorker(idCpu, pArgs->pvUser1, pArgs->pvUser2);
386 Args.idCpu = idCpu1;
465 RTCPUID idCpu = RTMpCpuId();
467 if (idCpu == pArgs->idCpu)
469 pArgs->pfnWorker(idCpu, pArgs->pvUser1, pArgs->pvUser2);
476 RTDECL(int) RTMpOnSpecific(RTCPUID idCpu, PFNRTMPWORKER pfnWorker, void *pvUser1, void *pvUser2)
485 Args.idCpu = idCpu;
488 if (!RTMpIsCpuPossible(idCpu))
492 if (idCpu != RTMpCpuId())
494 if (RTMpIsCpuOnline(idCpu))
497 rc = smp_call_function_single(idCpu, rtmpLinuxWrapper, &Args, 1 /* wait */);
499 rc = smp_call_function_single(idCpu, rtmpLinuxWrapper, &Args, 0 /* retry */, 1 /* wait */);
535 RTDECL(int) RTMpPokeCpu(RTCPUID idCpu)
540 if (!RTMpIsCpuPossible(idCpu))
542 if (!RTMpIsCpuOnline(idCpu))
546 rc = smp_call_function_single(idCpu, rtmpLinuxPokeCpuCallback, NULL, 0 /* wait */);
548 rc = smp_call_function_single(idCpu, rtmpLinuxPokeCpuCallback, NULL, 0 /* retry */, 0 /* wait */);