Message ID | 20240606165939.12950-5-quic_ekangupt@quicinc.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | Add missing features to FastRPC driver | expand |
On Thu, Jun 06, 2024 at 10:29:24PM +0530, Ekansh Gupta wrote: > When user is requesting for DSP capability, the process pd type is > getting updated to USER_PD which is incorrect as DSP will assume the > process which is making the request is a user PD and this will never > get updated back to the original value. The actual PD type should not > be updated for capability request and it should be serviced by the > respective PD on DSP side. Adding changes to avoid process PD type > modification. Nit: Imperative style, please. Something like: 'Don't change process's PD type for this request' > > Fixes: 6c16fd8bdd40 ("misc: fastrpc: Add support to get DSP capabilities") > Cc: stable <stable@kernel.org> > Signed-off-by: Ekansh Gupta <quic_ekangupt@quicinc.com> > --- > drivers/misc/fastrpc.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c > index f64781c3012f..abdd35b7c3ad 100644 > --- a/drivers/misc/fastrpc.c > +++ b/drivers/misc/fastrpc.c > @@ -1703,7 +1703,6 @@ static int fastrpc_get_info_from_dsp(struct fastrpc_user *fl, uint32_t *dsp_attr > args[1].ptr = (u64)(uintptr_t)&dsp_attr_buf[1]; > args[1].length = dsp_attr_buf_len * sizeof(u32); > args[1].fd = -1; > - fl->pd = USER_PD; > > return fastrpc_internal_invoke(fl, true, FASTRPC_DSP_UTILITIES_HANDLE, > FASTRPC_SCALARS(0, 1, 1), args); > -- > 2.43.0 >
On 06/06/2024 18:59, Ekansh Gupta wrote: > When user is requesting for DSP capability, the process pd type is > getting updated to USER_PD which is incorrect as DSP will assume the > process which is making the request is a user PD and this will never > get updated back to the original value. The actual PD type should not > be updated for capability request and it should be serviced by the > respective PD on DSP side. Adding changes to avoid process PD type > modification. > > Fixes: 6c16fd8bdd40 ("misc: fastrpc: Add support to get DSP capabilities") > Cc: stable <stable@kernel.org> > Signed-off-by: Ekansh Gupta <quic_ekangupt@quicinc.com> Reviewed-by: Caleb Connolly <caleb.connolly@linaro.org> > --- > drivers/misc/fastrpc.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c > index f64781c3012f..abdd35b7c3ad 100644 > --- a/drivers/misc/fastrpc.c > +++ b/drivers/misc/fastrpc.c > @@ -1703,7 +1703,6 @@ static int fastrpc_get_info_from_dsp(struct fastrpc_user *fl, uint32_t *dsp_attr > args[1].ptr = (u64)(uintptr_t)&dsp_attr_buf[1]; > args[1].length = dsp_attr_buf_len * sizeof(u32); > args[1].fd = -1; > - fl->pd = USER_PD; > > return fastrpc_internal_invoke(fl, true, FASTRPC_DSP_UTILITIES_HANDLE, > FASTRPC_SCALARS(0, 1, 1), args);
diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c index f64781c3012f..abdd35b7c3ad 100644 --- a/drivers/misc/fastrpc.c +++ b/drivers/misc/fastrpc.c @@ -1703,7 +1703,6 @@ static int fastrpc_get_info_from_dsp(struct fastrpc_user *fl, uint32_t *dsp_attr args[1].ptr = (u64)(uintptr_t)&dsp_attr_buf[1]; args[1].length = dsp_attr_buf_len * sizeof(u32); args[1].fd = -1; - fl->pd = USER_PD; return fastrpc_internal_invoke(fl, true, FASTRPC_DSP_UTILITIES_HANDLE, FASTRPC_SCALARS(0, 1, 1), args);
When user is requesting for DSP capability, the process pd type is getting updated to USER_PD which is incorrect as DSP will assume the process which is making the request is a user PD and this will never get updated back to the original value. The actual PD type should not be updated for capability request and it should be serviced by the respective PD on DSP side. Adding changes to avoid process PD type modification. Fixes: 6c16fd8bdd40 ("misc: fastrpc: Add support to get DSP capabilities") Cc: stable <stable@kernel.org> Signed-off-by: Ekansh Gupta <quic_ekangupt@quicinc.com> --- drivers/misc/fastrpc.c | 1 - 1 file changed, 1 deletion(-)