On Mon, 11 Mar 2019, Björn Töpel wrote: > > Thanks a bunch! I feel like the best option here is to just use the AMOs > > without disabling preemption and ensuring that all other accesses are atomic > > (via AMOs or LR/SC). The only reason I can see that wouldn't be the way to go > > would be if it requires non-arch modifications, as if we go down that path > > we'll be able to handle the performance edge cases in the implementation. > > > > Hmm, you mean AMO *with* preempt_{dis,en}able, right? (No, interrupt > disable, only preemption.) If you disable preemption then you dont need AMO anymore. In fact that is the default fallback generic implementation. Just dont do anything and you already have that solution.