Re: [char-misc-next 4/4 V2] mei: bus: enable non-blocking RX

From: Greg Kroah-Hartman
Date: Sat Nov 19 2016 - 07:18:09 EST


On Sat, Nov 19, 2016 at 02:16:11PM +0200, Tomas Winkler wrote:
> From: Alexander Usyskin <alexander.usyskin@xxxxxxxxx>
>
> Enable non-blocking receive for drivers on mei bus, this allows checking
> for data availability by mei client drivers. This is most effective for
> fixed address clients, that lacks flow control.
>
> This function adds new API function mei_cldev_recv_nonblock(), it
> retuns -EGAIN if function will block.
>
> Signed-off-by: Alexander Usyskin <alexander.usyskin@xxxxxxxxx>
> Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
> ---
> V2: use _nonblock() function suffix instead of NONBLOCK flag
>
> drivers/misc/mei/bus-fixup.c | 4 ++--
> drivers/misc/mei/bus.c | 31 +++++++++++++++++++++++++++++--
> drivers/misc/mei/mei_dev.h | 7 ++++++-
> include/linux/mei_cl_bus.h | 6 ++++--
> 4 files changed, 41 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/misc/mei/bus-fixup.c b/drivers/misc/mei/bus-fixup.c
> index 7f2cef9011ae..18e05ca7584f 100644
> --- a/drivers/misc/mei/bus-fixup.c
> +++ b/drivers/misc/mei/bus-fixup.c
> @@ -141,7 +141,7 @@ static int mei_osver(struct mei_cl_device *cldev)
> if (ret < 0)
> return ret;
>
> - ret = __mei_cl_recv(cldev->cl, buf, length);
> + ret = __mei_cl_recv(cldev->cl, buf, length, 0);

What is 0 here? Again, mode...