run motor inside interrupt

but while inside the ISR - no other code is running (there is only one processor).
so why should i tell synchronize the code inside the ISR with the rest of the code.

Because using an ISR to change something the main code doesn't know about is like pulling the rug from underneath it.

the motors are permanently rotating backwards.

So what tells your motor to stop.
I think it is time to post your code.