User Details
- User Since
- Jul 22 2022, 12:24 AM (194 w, 7 h)
Fri, Apr 3
Thu, Mar 26
Mon, Mar 23
This is great. Way clearer logic IMO
Fri, Mar 20
Saturate next expiration sbintime
Remove atf-c-leakcheck.h and ALLOW_TIMER_SLACK ifndefs
So then the question becomes: what is the minimum amount of time, in the future, that a callout can be scheduled for without missing its activation time?
Say the next expiration is scheduled to happen in 1ns. Instead of actually scheduling that callout to active in 1ns, should I instead schedule the callout for 2ns in the future and when that activates increment the timerfd count +2?
I think this is especially tricky because it depends on system load, as you mentioned in D55790.
Our mitigation for this in other timer systems is to avoid making such estimates, and instead try to ensure that the system automatically stops the callout if the owning process is killed. See the P_SHOULDSTOP(p) || P_KILLED(p) checks in kern_time.c and kern_event.c.
Mon, Mar 16
Hmm, this sounds like another bug. Even if the callout handler is lightweight, I'm sure it plus the overhead of scheduling and running a callout costs more than 1ns. The livelock issue relates to the problem where it becomes impossible to schedule a thread on a looping core, because the softclock thread which runs the callout handler has high priority.
Mar 11 2026
Mar 10 2026
Rewrite timerfd__missed_events test to remove excessive errno
checking.
Feb 2 2026
Like eugen suggested, it might be better to skip the line and log a warning on syntax parse failure instead of terminating. It looks like this would require some more surgery to handle other parse errors though.
Jan 12 2026
Tests added. I forgot to add the review link into the commit message... oops. Closing this.
Dec 23 2025
Sep 10 2025
Sep 4 2025
Aug 31 2025
Aug 21 2025
Use memcpy(3) to copy pci_conf data into compat structures instead of assigning
members one by one.
Aug 18 2025
Aug 12 2025
Good to see more Capsicumization efforts going on. I just had a few pedantic suggestions. Otherwise, this generally looks good.
Aug 11 2025
Apr 3 2025
Jan 19 2025
Jan 5 2025
Jan 3 2025
I do not like how complicated this is getting, but the code all looks good.
Jan 2 2025
Thanks for finding and fixing all of these.
Dec 28 2024
Nov 30 2024
Nov 27 2024
Nov 25 2024
Nov 24 2024
Add missing error checking on memory allocation
