Multi-Level Scheduler Legacy CPU and Sync Interfaces

The multi-level scheduler (MLS) C API has been split in TEMU 5.1:

  • temu-c/Scheduler/MultiLevelScheduler.h contains the stable API.

  • temu-c/Scheduler/MultiLevelSchedulerUnstable.h contains API that may change between releases, as well as the deprecated API listed below.

The following parts of the API are deprecated:

  • temu_CpuSchedIface, temu_CpuResult and temu_schedAddCpu(). Register a CPU object with temu_schedAddLeaf() instead.

  • temu_SyncIface and temu_schedSetSyncCallbacks(). Subscribe to the TEMU_NOTIFICATION_SCHED_CORE_SYNC and TEMU_NOTIFICATION_SCHED_OUTER_SYNC notifications instead.

Use of the deprecated declarations produces compiler warnings. Define TEMU_ALLOW_DEPRECATED before including the TEMU headers to silence them.

Sunset Period

The deprecated API will be removed in TEMU 6.

Impact

Code using the deprecated functions and interfaces should migrate to temu_schedAddLeaf() and the scheduler sync notifications.