We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 631af6e commit 8066c61Copy full SHA for 8066c61
drivers/rpmsg/rpmsg_core.c
@@ -540,13 +540,25 @@ static int rpmsg_dev_probe(struct device *dev)
540
err = rpdrv->probe(rpdev);
541
if (err) {
542
dev_err(dev, "%s: failed: %d\n", __func__, err);
543
- if (ept)
544
- rpmsg_destroy_ept(ept);
545
- goto out;
+ goto destroy_ept;
546
}
547
548
- if (ept && rpdev->ops->announce_create)
+ if (ept && rpdev->ops->announce_create) {
549
err = rpdev->ops->announce_create(rpdev);
+ if (err) {
+ dev_err(dev, "failed to announce creation\n");
550
+ goto remove_rpdev;
551
+ }
552
553
+
554
+ return 0;
555
556
+remove_rpdev:
557
+ if (rpdrv->remove)
558
+ rpdrv->remove(rpdev);
559
+destroy_ept:
560
+ if (ept)
561
+ rpmsg_destroy_ept(ept);
562
out:
563
return err;
564
0 commit comments