Page MenuHomeFreeBSD

Use the physical timer when able
ClosedPublic

Authored by andrew on Mar 15 2023, 2:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Mar 31, 12:25 PM
Unknown Object (File)
Tue, Mar 31, 5:04 AM
Unknown Object (File)
Wed, Mar 18, 3:40 PM
Unknown Object (File)
Wed, Mar 18, 2:28 AM
Unknown Object (File)
Mon, Mar 16, 6:38 PM
Unknown Object (File)
Feb 8 2026, 2:38 PM
Unknown Object (File)
Feb 7 2026, 10:10 PM
Unknown Object (File)
Feb 7 2026, 4:16 PM
Subscribers

Details

Summary

To allow bhyve manage the virtual timer while in a guest have FreeBSD
use the virtual timer only when bhyve will be unavailable due to not
starting at EL2 where the hypervisor switcher will run.

Sponsored by: Arm Ltd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Assuming we know the res is always non-null in these cases, I think we're good. I kinda think they should be, but that's just from a quick read.

sys/arm/arm/generic_timer.c
664

only question: are we guaranteed that these timers will be around in this case? Similar below...

This revision is now accepted and ready to land.Mar 15 2023, 2:55 PM
sys/arm/arm/generic_timer.c
664

We require the virtual and physical timer interrupts as they are marked non-optional in arm_tmr_irq_defs

This revision was automatically updated to reflect the committed changes.