PNP: Fix card device cleanup on registration failure

pnp_add_card() ignores __pnp_add_device() failures. If device_register()
fails there, the device is removed from the global and protocol lists, but
remains on the card list and its device reference is not dropped.

Remove the failed device from the card list and call put_device() before
continuing with the remaining card devices.

Signed-off-by: Yuho Choi <dbgh9129@gmail.com>
Link: https://patch.msgid.link/20260703033603.114931-1-dbgh9129@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Yuho Choi 2026-07-02 23:36:03 -04:00 • committed by Rafael J. Wysocki
commit fcdae14b64