--- a/src/PmcTimerConfig.c 2025-09-04 12:17:16.771707049 +0200 +++ b/src/PmcTimerConfig.c 2025-09-04 12:17:04.878515468 +0200 @@ -99,7 +99,7 @@ static void PmcInitTimer(void* pInfo) DRVPRINT("pTimerConfig(%p)", pTimerConfig); - hrtimer_init(&pTimerConfig->m_hrTimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED); + hrtimer_setup(&pTimerConfig->m_hrTimer, PmcTimerCallback, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED); } int PmcSetupTimer(ClientContext* pClientCtx) @@ -157,7 +157,6 @@ int PmcSetupTimer(ClientContext* pClient { /* Interval in ms */ pTimerConfig->m_time = ktime_set(interval / 1000, interval * 1000000); - pTimerConfig->m_hrTimer.function = PmcTimerCallback; DRVPRINT("retVal(%d) m_time(%lld)", retVal, (long long int) pTimerConfig->m_time); } --- a/src/PwrProfTimer.c 2025-09-04 12:18:08.750544327 +0200 +++ b/src/PwrProfTimer.c 2025-09-04 12:18:28.557863382 +0200 @@ -573,8 +573,7 @@ void InitHrTimer(uint32 cpu) pCoreClientData = &per_cpu(g_coreClientData, cpu); // initialize HR timer - hrtimer_init(&pCoreClientData->m_hrTimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED); - pCoreClientData->m_hrTimer.function = &HrTimerCallback; + hrtimer_setup(&pCoreClientData->m_hrTimer, &HrTimerCallback, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED); return; } // InitHrTimer