≈ the.bay.news

How to implement doorbell x86 without race conditions

Ziggit
How to implement doorbell x86 without race conditions
I’m trying to make a mini scheduler where processes can send a message over a ringbuffer, then call ring() to wake up the receiving core if it was asleep, then that core services whatever it needs in it’s state.update() function. I’m using x86 umonitor and umwait as light sleep is what I’m going for. And I also added the if load on the ring, cause if I go with like fetchAdd generation u32, then it’d be a bunch of cacheline bouncing because ring() can be called a few million times/s from other co...

0 comments

Sign in to join the discussion — your thebay.events account works here.

No comments yet.