Reading logs between a successful run on x86 and a failed run on s390x, it would appear that stp never sees the topology change on br0 as p2 is removed - this log message is missing from the s390x logs:
br0: detected topology change.
so I suspect the fdb cache ends up hitting some sort of age timeout before it gets flushed, rather than being activity flushed as a result of the topology change.
Reading logs between a successful run on x86 and a failed run on s390x, it would appear that stp never sees the topology change on br0 as p2 is removed - this log message is missing from the s390x logs:
br0: detected topology change.
so I suspect the fdb cache ends up hitting some sort of age timeout before it gets flushed, rather than being activity flushed as a result of the topology change.