User Details
- User Since
- Jul 22 2022, 12:24 AM (197 w, 1 d)
Tue, Apr 14
This #ifndef __i386__ is bound to be removed once support for i386 is left behind, so I'm ok with this, even if its a little ugly for the time being.
Mon, Apr 13
Fri, Apr 3
Mar 26 2026
Mar 23 2026
This is great. Way clearer logic IMO
Mar 20 2026
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.
Mar 16 2026
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.
