Open
Description
We need to confirm that we handle the memory fencing correctly for the case where a qthread suspends and then gets stolen to another shepherd. It's not currently obvious to me if/where that's getting handled right now, and some of the thread sanitizer errors seem to be pointing toward this as an issue. The threadqueues should be providing the ordering constraint for the safety of migration, but the corresponding fences need to be handled as a part of the suspend/resume process.