hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/rapidio/rio.c
....@@ -2267,11 +2267,16 @@
22672267 atomic_set(&port->state, RIO_DEVICE_RUNNING);
22682268
22692269 res = device_register(&port->dev);
2270
- if (res)
2270
+ if (res) {
22712271 dev_err(&port->dev, "RIO: mport%d registration failed ERR=%d\n",
22722272 port->id, res);
2273
- else
2273
+ mutex_lock(&rio_mport_list_lock);
2274
+ list_del(&port->node);
2275
+ mutex_unlock(&rio_mport_list_lock);
2276
+ put_device(&port->dev);
2277
+ } else {
22742278 dev_dbg(&port->dev, "RIO: registered mport%d\n", port->id);
2279
+ }
22752280
22762281 return res;
22772282 }