[lkml]   [2018]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/3] rpmsg: smd: Redeliver messages after probe
A race condition exists in SMD where incoming messages might be processed
before we've finished executing the rpmsg device's probe function. The driver's
callback function will in this case be unable to handle the incoming message
and might return an error.

Using the announce_create ops we can invoke the handler for incoming messages
once again after probe returns, solving this issue.

With SMD and QRTR this shows a high failure rate, but there are (at least
theoretical) similar issues in glink and virtio-rpmsg, so this needs to be
further investigated.

Bjorn Andersson (3):
rpmsg: smd: Fix container_of macros
rpmsg: Only invoke announce_create for rpdev with endpoints
rpmsg: smd: Use announce_create to process any receive work

drivers/rpmsg/qcom_smd.c | 22 ++++++++++++++++++++--
drivers/rpmsg/rpmsg_core.c | 2 +-
2 files changed, 21 insertions(+), 3 deletions(-)


 \ /
  Last update: 2018-03-27 23:07    [W:0.118 / U:1.320 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site