I can't help thinking that you are misinterpreting something. I don't
think there is a clean->dirty transition happening here.
You could confirm this by using --examine on both devices after the
messy shutdown and before re-assembling the array.
Even allowing for that possible confusion, I cannot quite see what is
going on.
It is fairly clear from the event counts that the NBD device is marked
clean, but if this is happening at array-shutdown time, I cannot see
why md would try to write to the NBD device and thereby detect an
error...
Do you have an internal bitmap or a bitmap in an external file?
In general, I would not like to make decisions based on the
oddness/evenness of the event counter. I consider that to be an
internal implementation detail. I am happy to make decisions based on
a difference-of-1. I need to understand the big picture first though.
NeilBrown
--