In the Linux kernel, the following vulnerability has been resolved: net/smc: remove device from smcddevlist after failed deviceadd() If the deviceadd() for a smcddev fails, there's no cleanup step that rolls back the earlier listadd(). The device subsequently gets freed, and we end up with a corrupted list. Add some error handling that removes the device from the list.