Skip to content

Stop ElXVirtualTimer and ElXPhysicalTimer from implementing Send.#170

Open
jonathanpallant wants to merge 2 commits into
mainfrom
timers-no-longer-send
Open

Stop ElXVirtualTimer and ElXPhysicalTimer from implementing Send.#170
jonathanpallant wants to merge 2 commits into
mainfrom
timers-no-longer-send

Conversation

@jonathanpallant

Copy link
Copy Markdown
Contributor

These are core-local types and we need to try and stop people moving them into threads running on other cores, at the expense of stopping people moving them into threads running on the same core.

If this causes you an issue, you can just unsafely conjure up the values on demand, or use raw CP15 sycalls from the aarch32_cpu::register module.

Comment thread aarch32-cpu/src/generic_timer/el0.rs
@jonathanpallant

Copy link
Copy Markdown
Contributor Author

I spotted that I forgot to make the Hyp timer !Send too. I'll fix that.

These are core-local types and we need to try and stop people moving
them into threads running on other cores, at the expense of stopping
people moving them into threads running on the same core.

If this causes you an issue, you can just unsafely conjure up the values
on demand, or use raw CP15 sycalls from the aarch32_cpu::register module.
@jonathanpallant jonathanpallant force-pushed the timers-no-longer-send branch from 9407117 to b6df0b9 Compare June 8, 2026 08:47
@jonathanpallant

Copy link
Copy Markdown
Contributor Author

I spotted that I forgot to make the Hyp timer !Send too. I'll fix that.

Fixed.

Also added some links to core::marker::Send so it's clearer what we mean.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants