Providing backwards compatibility can be brutal Lesson learned is that building/maintaining backwards compat can be very hard, especially: ioctl sockopts kernel types exposed in userland Kernel code bloats -> many cases not tested -> new risks