I assume that bug is referring to the fact that while i = i + 1 may look atomic to you as a human, in the computer it turns into
Read i into register.
Add one to that register.
Write i back to the memory location.
And there's a window during that "add one to the register" where you can obviously have something jump in and write something else to that memory location.
What happens on your real processor is more complicated since this is going to relate to cache coherency between the processors, not directly writing RAM at that point, and that's a deep rabbit hole. I couldn't describe it all in detail anyhow. But I can observe it doesn't take much at all to turn that one cycle vulnerability into something with a larger target.
What happens on your real processor is more complicated since this is going to relate to cache coherency between the processors, not directly writing RAM at that point, and that's a deep rabbit hole. I couldn't describe it all in detail anyhow. But I can observe it doesn't take much at all to turn that one cycle vulnerability into something with a larger target.