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]

Reply via email to