Message ID | 20170509043637.28179-1-bjorn.andersson@linaro.org (mailing list archive) |
---|---|
State | Accepted |
Commit | efad8396e906d095521791e0408293c101543e50 |
Delegated to: | Kalle Valo |
Headers | show |
Bjorn Andersson <bjorn.andersson@linaro.org> writes: > The SMD channel is not the primary WCNSS channel and must explicitly be > closed as the device is removed, or the channel will already by open on > a subsequent probe call in e.g. the case of reloading the kernel module. > > This issue was introduced because I simplified the underlying SMD > implementation while the SMD adaptions of the driver sat on the mailing > list, but missed to update these patches. The patch does however only > apply back to the transition to rpmsg, hence the limited Fixes. > > Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") > Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> As this is a regression I'll queue this to 4.12. But if this is an older bug (didn't quite understand your description though) should there be a separate patch for stable releases?
On Mon 08 May 23:17 PDT 2017, Kalle Valo wrote: > Bjorn Andersson <bjorn.andersson@linaro.org> writes: > > > The SMD channel is not the primary WCNSS channel and must explicitly be > > closed as the device is removed, or the channel will already by open on > > a subsequent probe call in e.g. the case of reloading the kernel module. > > > > This issue was introduced because I simplified the underlying SMD > > implementation while the SMD adaptions of the driver sat on the mailing > > list, but missed to update these patches. The patch does however only > > apply back to the transition to rpmsg, hence the limited Fixes. > > > > Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") > > Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> > > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> > > As this is a regression I'll queue this to 4.12. > Thanks. > But if this is an older bug (didn't quite understand your description > though) should there be a separate patch for stable releases? > AFAICT this never worked, as it seems I did the rework in SMD while we tried to figure out the dependency issues we had with moving to SMD. So v4.9 through v4.11 has SMD support - with this bug. How do I proceed, do you want me to write up a fix for stable@? Do I send that out as an ordinary patch? Regards, Bjorn
On 5/10/2017 1:03 AM, Bjorn Andersson wrote: > On Mon 08 May 23:17 PDT 2017, Kalle Valo wrote: > >> Bjorn Andersson <bjorn.andersson@linaro.org> writes: >> >>> The SMD channel is not the primary WCNSS channel and must explicitly be >>> closed as the device is removed, or the channel will already by open on >>> a subsequent probe call in e.g. the case of reloading the kernel module. >>> >>> This issue was introduced because I simplified the underlying SMD >>> implementation while the SMD adaptions of the driver sat on the mailing >>> list, but missed to update these patches. The patch does however only >>> apply back to the transition to rpmsg, hence the limited Fixes. >>> >>> Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") >>> Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> >>> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> >> >> As this is a regression I'll queue this to 4.12. >> > > Thanks. > >> But if this is an older bug (didn't quite understand your description >> though) should there be a separate patch for stable releases? >> > > AFAICT this never worked, as it seems I did the rework in SMD while we > tried to figure out the dependency issues we had with moving to SMD. So > v4.9 through v4.11 has SMD support - with this bug. > > How do I proceed, do you want me to write up a fix for stable@? Do I > send that out as an ordinary patch? If the patch applies cleanly on branches linux-4.9.y through linux-4.11.y in the stable repository you can go for '--- Option 1 ---' as described in <linux-repo>/Documentation/stable_kernel_rules.txt. Regards, Arend
On Wed 10 May 00:27 PDT 2017, Arend van Spriel wrote: > On 5/10/2017 1:03 AM, Bjorn Andersson wrote: > > On Mon 08 May 23:17 PDT 2017, Kalle Valo wrote: > > > > > Bjorn Andersson <bjorn.andersson@linaro.org> writes: > > > > > > > The SMD channel is not the primary WCNSS channel and must explicitly be > > > > closed as the device is removed, or the channel will already by open on > > > > a subsequent probe call in e.g. the case of reloading the kernel module. > > > > > > > > This issue was introduced because I simplified the underlying SMD > > > > implementation while the SMD adaptions of the driver sat on the mailing > > > > list, but missed to update these patches. The patch does however only > > > > apply back to the transition to rpmsg, hence the limited Fixes. > > > > > > > > Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") > > > > Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> > > > > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> > > > > > > As this is a regression I'll queue this to 4.12. > > > > > > > Thanks. > > > > > But if this is an older bug (didn't quite understand your description > > > though) should there be a separate patch for stable releases? > > > > > > > AFAICT this never worked, as it seems I did the rework in SMD while we > > tried to figure out the dependency issues we had with moving to SMD. So > > v4.9 through v4.11 has SMD support - with this bug. > > > > How do I proceed, do you want me to write up a fix for stable@? Do I > > send that out as an ordinary patch? > > If the patch applies cleanly on branches linux-4.9.y through linux-4.11.y in > the stable repository you can go for '--- Option 1 ---' as described in > <linux-repo>/Documentation/stable_kernel_rules.txt. > It does not, before v4.12 it's a completely different function to call to close the channel. But "Option 3" describes the situation, thanks for the reference. I'll try to find the time to verify the patch on v4.11 and send it to stable@. Regards, Bjorn
Bjorn Andersson <bjorn.andersson@linaro.org> writes: > On Wed 10 May 00:27 PDT 2017, Arend van Spriel wrote: > >> On 5/10/2017 1:03 AM, Bjorn Andersson wrote: >> >> > AFAICT this never worked, as it seems I did the rework in SMD while we >> > tried to figure out the dependency issues we had with moving to SMD. So >> > v4.9 through v4.11 has SMD support - with this bug. >> > >> > How do I proceed, do you want me to write up a fix for stable@? Do I >> > send that out as an ordinary patch? >> >> If the patch applies cleanly on branches linux-4.9.y through linux-4.11.y in >> the stable repository you can go for '--- Option 1 ---' as described in >> <linux-repo>/Documentation/stable_kernel_rules.txt. >> > > It does not, before v4.12 it's a completely different function to call > to close the channel. > > But "Option 3" describes the situation, thanks for the reference. I'll > try to find the time to verify the patch on v4.11 and send it to > stable@. Great, thanks. This seems to be that serious that better to fix this also in older releases.
Bjorn Andersson <bjorn.andersson@linaro.org> wrote: > The SMD channel is not the primary WCNSS channel and must explicitly be > closed as the device is removed, or the channel will already by open on > a subsequent probe call in e.g. the case of reloading the kernel module. > > This issue was introduced because I simplified the underlying SMD > implementation while the SMD adaptions of the driver sat on the mailing > list, but missed to update these patches. The patch does however only > apply back to the transition to rpmsg, hence the limited Fixes. > > Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") > Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Patch applied to ath-current branch of ath.git, thanks. efad8396e906 wcn36xx: Close SMD channel on device removal
diff --git a/drivers/net/wireless/ath/wcn36xx/main.c b/drivers/net/wireless/ath/wcn36xx/main.c index d5e993dc9b23..517a315e259b 100644 --- a/drivers/net/wireless/ath/wcn36xx/main.c +++ b/drivers/net/wireless/ath/wcn36xx/main.c @@ -1271,6 +1271,8 @@ static int wcn36xx_remove(struct platform_device *pdev) qcom_smem_state_put(wcn->tx_enable_state); qcom_smem_state_put(wcn->tx_rings_empty_state); + rpmsg_destroy_ept(wcn->smd_channel); + iounmap(wcn->dxe_base); iounmap(wcn->ccu_base);
The SMD channel is not the primary WCNSS channel and must explicitly be closed as the device is removed, or the channel will already by open on a subsequent probe call in e.g. the case of reloading the kernel module. This issue was introduced because I simplified the underlying SMD implementation while the SMD adaptions of the driver sat on the mailing list, but missed to update these patches. The patch does however only apply back to the transition to rpmsg, hence the limited Fixes. Fixes: 5052de8deff5 ("soc: qcom: smd: Transition client drivers from smd to rpmsg") Reported-by: Eyal Ilsar <c_eilsar@qti.qualcomm.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> --- drivers/net/wireless/ath/wcn36xx/main.c | 2 ++ 1 file changed, 2 insertions(+)