MCPcopy Create free account
hub / github.com/XpuOS/xsched / XQueueSetPreemptLevel

Function XQueueSetPreemptLevel

preempt/src/xqueue/xqueue.cpp:274–287  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

272}
273
274EXPORT_C_FUNC XResult XQueueSetPreemptLevel(XQueueHandle xq, int64_t level)
275{
276 std::shared_ptr<XQueue> xq_shptr = XQueueManager::Get(xq);
277 if (xq_shptr == nullptr) {
278 XWARN("XQueue with handle 0x" FMT_64X " does not exist", xq);
279 return kXSchedErrorNotFound;
280 }
281 if (!xq_shptr->GetFeatures(kQueueFeatureDynamicLevel)) {
282 XWARN("XQueue with handle 0x" FMT_64X " does not support dynamic level", xq);
283 return kXSchedErrorNotSupported;
284 }
285 xq_shptr->SetPreemptLevel((XPreemptLevel)level);
286 return kXSchedSuccess;
287}
288
289EXPORT_C_FUNC XResult XQueueSetLaunchConfig(XQueueHandle xq, int64_t threshold, int64_t batch_size)
290{

Callers 1

Calls 2

GetFeaturesMethod · 0.80
SetPreemptLevelMethod · 0.45

Tested by

no test coverage detected