Breaking API changes happen all the time, for example here is a syscall being removed after being deprecated for 10 years http://lkml.iu.edu/hypermail/linux/kernel/1911.3/02404.html
Linux strives to never break the API, and when it must does it in the most painless way possible. That doesn't mean they don't ever break the API, happens much more often than one would think to be honest. It's just the caution and planning around doing so usually makes it so few people ever even notice.