A change to a 8 bit variable is atomic.
A change to an eight bit variable is not necessarily atomic depending on what "change" means.
It will not be atomic if "change" means to modify part of the 8 bit variable
because of the AVR being RISC
For example, on some processors, operations like:
foo |= mask;
foo &= ~mask;
can be atomic because they compile down to a non interruptible instruction.
On the AVR these operations are not atomic because they compile down to multiple
instructions which can be interrupted.
When using an 8 bit variable on the AVR, a read is atomic and a write is atomic
an update/change to an 8 bit variable that involves reading/modifying/writing back the variable
to preserve a portion of it's previous contents is not atomic.
However, there are some specific AVR bit set/clear instructions that can be used on certain hardware
registers that can provide atomicity of setting or clearing an individual bit (not multiple bits).