CARP preemption doesn't switch to backup where connectivity between systems is lost but not NIC link
Take a basic WAN and LAN setup, one CARP IP on each interface. If WAN's NIC loses link, the secondary system takes over master status on both CARP IPs, and the primary switches to backup. Instead of losing link, sever connectivity between the two while retaining the NIC's link. The secondary sees that and takes master status on all CARP IPs. But the primary doesn't switch to backup status, so you're left with dual master, and the resulting brokenness that entails.
This is the same behavior as FreeBSD 8.3, 10.1, 11, and OpenBSD 5.7, so just a general issue with CARP. Problematic especially in virtualization scenarios because the VM won't lose link when the hypervisor does, leaving the network broken upon loss of connectivity on one network.