Message ID | 20230130222716.7016-2-mailingradian@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | misc: fastrpc: Fixes for issues in userspace | expand |
On 30/01/2023 22:27, Richard Acayan wrote: > The return value is initialized as -1, or -EPERM. The completion of an > invocation implies that the return value is set appropriately, but > "Permission denied" does not accurately describe the outcome of the > invocation. Set the invocation's return value to a more appropriate > "Broken pipe", as the cleanup breaks the driver's connection with rpmsg. > > Fixes: c68cfb718c8f ("misc: fastrpc: Add support for context Invoke method") > Signed-off-by: Richard Acayan <mailingradian@gmail.com> > --- LGTM, thanks for fixing this, Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> --srini > drivers/misc/fastrpc.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c > index 7ccaca1b7cb8..2334a4fd5869 100644 > --- a/drivers/misc/fastrpc.c > +++ b/drivers/misc/fastrpc.c > @@ -2337,8 +2337,10 @@ static void fastrpc_notify_users(struct fastrpc_user *user) > struct fastrpc_invoke_ctx *ctx; > > spin_lock(&user->lock); > - list_for_each_entry(ctx, &user->pending, node) > + list_for_each_entry(ctx, &user->pending, node) { > + ctx->retval = -EPIPE; > complete(&ctx->work); > + } > spin_unlock(&user->lock); > } >
diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index 7ccaca1b7cb8..2334a4fd5869 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -2337,8 +2337,10 @@ static void fastrpc_notify_users(struct fastrpc_user *user) struct fastrpc_invoke_ctx *ctx; spin_lock(&user->lock); - list_for_each_entry(ctx, &user->pending, node) + list_for_each_entry(ctx, &user->pending, node) { + ctx->retval = -EPIPE; complete(&ctx->work); + } spin_unlock(&user->lock); }
The return value is initialized as -1, or -EPERM. The completion of an invocation implies that the return value is set appropriately, but "Permission denied" does not accurately describe the outcome of the invocation. Set the invocation's return value to a more appropriate "Broken pipe", as the cleanup breaks the driver's connection with rpmsg. Fixes: c68cfb718c8f ("misc: fastrpc: Add support for context Invoke method") Signed-off-by: Richard Acayan <mailingradian@gmail.com> --- drivers/misc/fastrpc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)