rpmsg: Guard against null endpoint ops in destroy
authorChris Lew <clew@codeaurora.org>
Wed, 24 Jun 2020 16:45:19 +0000 (22:15 +0530)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Tue, 15 Sep 2020 03:51:03 +0000 (03:51 +0000)
In RPMSG GLINK the chrdev device will allocate an ept as part of the
rpdev creation. This device will not register endpoint ops even though
it has an allocated ept. Protect against the case where the device is
being destroyed.

Signed-off-by: Chris Lew <clew@codeaurora.org>
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
Link: https://lore.kernel.org/r/1593017121-7953-3-git-send-email-deesin@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/rpmsg/rpmsg_core.c

index a6361cad608b1c811dc8fa4a523259162e7c978c..91de940896e3d03170b8f0661ac0d5abd1883711 100644 (file)
@@ -81,7 +81,7 @@ EXPORT_SYMBOL(rpmsg_create_ept);
  */
 void rpmsg_destroy_ept(struct rpmsg_endpoint *ept)
 {
-       if (ept)
+       if (ept && ept->ops)
                ept->ops->destroy_ept(ept);
 }
 EXPORT_SYMBOL(rpmsg_destroy_ept);