Fix-Point opened a new pull request, #17584: URL: https://github.com/apache/nuttx/pull/17584
## Summary This PR brings four main improvements to `sched_timerexpiration`: - Simplifies the handling of `sched_timerexpiration`. - Modifies the encoding of the scheduler event return delay. In the previous implementation, even events that needed immediate triggering would return a `delay=1`, **causing at least one tick of unnecessary delay in tickless mode**. This change adjusts the return value encoding so that immediately triggered events return `delay=0`, while returning `delay=CLOCK_MAX` if no events require a response. - Removes the unnecessary `nxsched_alarm_tick_expiration` and `nxsched_alarm_expiration` interfaces, simplifying the kernel interfaces and kernel drivers. - Renames and relocates `g_wdtimernested` into `sched_timerexpiration`, reducing coupling with the wdog module. ## Impact This change affects the critical kernel module `sched_timerexpiration`, with its main impacts being on performance and code size: - Removal of `nxsched_alarm_tick_expiration` and `nxsched_alarm_expiration` reduces code size. - Modification of the scheduler event return value reduces system response time with `CONFIG_SCHED_TICKLESS=y` . ## Testing Tested on `rv-virt:smp` with `CONFIG_SCHED_TICKLESS=y` and `CONFIG_RR_INTERVAL=0`, `ostest` passed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
