Re: [PATCH 0/4] Introduction of rpmsg_rx_done

From: Mathieu Poirier
Date: Tue Jul 26 2022 - 13:52:50 EST


On Tue, Jun 07, 2022 at 06:16:41PM -0700, Chris Lew wrote:
> This series proposes an implementation for the rpmsg framework to do
> deferred cleanup of buffers provided in the rx callback. The current
> implementation assumes that the client is done with the buffer after
> returning from the rx callback.
>
> In some cases where the data size is large, the client may want to
> avoid copying the data in the rx callback for later processing. This
> series proposes two new facilities for signaling that they want to
> hold on to a buffer after the rx callback.
> They are:
> - New API rpmsg_rx_done() to tell the rpmsg framework the client is
> done with the buffer
> - New return codes for the rx callback to signal that the client will
> hold onto a buffer and later call rpmsg_rx_done()
>
> This series implements the qcom_glink_native backend for these new
> facilities.
>
> Chris Lew (4):
> rpmsg: core: Add rx done hooks
> rpmsg: char: Add support to use rpmsg_rx_done
> rpmsg: glink: Try to send rx done in irq
> rpmsg: glink: Add support for rpmsg_rx_done
>
> drivers/rpmsg/qcom_glink_native.c | 112 ++++++++++++++++++++++++++++++--------
> drivers/rpmsg/rpmsg_char.c | 50 ++++++++++++++++-
> drivers/rpmsg/rpmsg_core.c | 20 +++++++
> drivers/rpmsg/rpmsg_internal.h | 1 +
> include/linux/rpmsg.h | 24 ++++++++
> 5 files changed, 183 insertions(+), 24 deletions(-)

I have started reviewing this set. Comments to come later today or tomorrow.

Thanks,
Mathieu

>
> --
> 2.7.4
>