--- Comment #7 from Ralf Czekalla firstname.lastname@example.org --- Sorry Coly to come back to this so late.
I'm fine with the proposal to fix this with an appropriate error message giving better suggestions what the error is and how to fix.
I would like to help you with this, but I'm not sure how to reproduce this behavior. The device was wiped in the successful manual process and gone with this.
It's probably heavily depending on the byte/bit pattern where mdadm looks into the offered partition/device. If here the data is not cleansed from unrecognized byte patterns, it probably will end up in misinterpretations and misguiding error messages.
I would assume that an --zeroblock should take care, that the places in the device are cleaned where mdadm is afterwards checking for a proper device.
Do you have a list of places where mdadm officially and unofficially checks a new device for adding to an existing md? These steps need to be checked for reading beyond the supposed places.
This is probably anyway a security risk if mdadm is using unofficial places to read data and misinterpreting these for operations afterwards. No clue what else can happen with this erratic data interpreted for real.
Best Regards Ralf