Fixed swapped  states
Added some locks using the "scalable" readindicator