mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind
@ 2026-09-18  4:13 Guangshuo Li
  2026-09-19  7:34 ` kernel test robot
  2026-09-19 13:13 ` kernel test robot
  0 siblings, 2 replies; 3+ messages in thread
From: Guangshuo Li @ 2026-09-18  4:13 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Sivaprakash Murugesan,
	Gokul Sriram Palanisamy, Govind Singh, linux-arm-msm,
	linux-remoteproc, linux-kernel
  Cc: Guangshuo Li, stable

q6v5_wcss_probe() registers GLINK, PDM and SSR remoteproc subdevices,
and may also register a sysmon subdevice. The probe failure path
removes all of these subdevices, but q6v5_wcss_remove() only removes
the PDM subdevice.

As a result, GLINK, SSR and sysmon resources and registrations can
remain after the WCSS driver is removed.

Call rproc_del() before tearing down the Qualcomm-specific resources,
matching the teardown order used by the other Qualcomm Q6 remoteproc
drivers, and remove the GLINK, sysmon and SSR subdevices together with
the existing PDM cleanup.

This issue was found by manual code inspection.

Fixes: 8a226e2c71bb ("remoteproc: wcss: add support for rpmsg communication")
Fixes: 0af65b9b915e ("remoteproc: qcom: wcss: Add non pas wcss Q6 support for QCS404")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
---
 drivers/remoteproc/qcom_q6v5_wcss.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/remoteproc/qcom_q6v5_wcss.c b/drivers/remoteproc/qcom_q6v5_wcss.c
index b391724cfd08..4d3a1adbf6c1 100644
--- a/drivers/remoteproc/qcom_q6v5_wcss.c
+++ b/drivers/remoteproc/qcom_q6v5_wcss.c
@@ -1042,9 +1042,13 @@ static void q6v5_wcss_remove(struct platform_device *pdev)
 	struct rproc *rproc = platform_get_drvdata(pdev);
 	struct q6v5_wcss *wcss = rproc->priv;
 
+	rproc_del(rproc);
+
 	qcom_q6v5_deinit(&wcss->q6v5);
+	qcom_remove_glink_subdev(rproc, &wcss->glink_subdev);
 	qcom_remove_pdm_subdev(rproc, &wcss->pdm_subdev);
-	rproc_del(rproc);
+	qcom_remove_sysmon_subdev(wcss->sysmon);
++	qcom_remove_ssr_subdev(rproc, &wcss->ssr_subdev);
 }
 
 static const struct wcss_data wcss_ipq8074_res_init = {
-- 
2.43.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind
  2026-09-18  4:13 [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind Guangshuo Li
@ 2026-09-19  7:34 ` kernel test robot
  2026-09-19 13:13 ` kernel test robot
  1 sibling, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-09-19  7:34 UTC (permalink / raw)
  To: Guangshuo Li, Bjorn Andersson, Mathieu Poirier,
	Sivaprakash Murugesan, Gokul Sriram Palanisamy, Govind Singh,
	linux-arm-msm, linux-remoteproc, linux-kernel
  Cc: llvm, oe-kbuild-all, Guangshuo Li, stable

Hi Guangshuo,

kernel test robot noticed the following build errors:

[auto build test ERROR on remoteproc/rproc-next]
[also build test ERROR on linus/master v7.3-rc3 next-20260918]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Guangshuo-Li/remoteproc-qcom-q6v5-wcss-remove-all-subdevices-on-unbind/20260918-121321
base:   https://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux.git rproc-next
patch link:    https://lore.kernel.org/r/20260918041321.3532355-1-lgs201920130244%40gmail.com
patch subject: [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20260919/202609191513.bywryVFw-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 7252edd9aa82ef1c570ff6694ef7f4763a8a5d2f)
rustc: rustc 1.96.0 (ac68faa20 2026-05-25)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260919/202609191513.bywryVFw-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609191513.bywryVFw-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/remoteproc/qcom_q6v5_wcss.c:1051:1: error: invalid argument type 'void' to unary expression
    1051 | +       qcom_remove_ssr_subdev(rproc, &wcss->ssr_subdev);
         | ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 error generated.


vim +/void +1051 drivers/remoteproc/qcom_q6v5_wcss.c

  1039	
  1040	static void q6v5_wcss_remove(struct platform_device *pdev)
  1041	{
  1042		struct rproc *rproc = platform_get_drvdata(pdev);
  1043		struct q6v5_wcss *wcss = rproc->priv;
  1044	
  1045		rproc_del(rproc);
  1046	
  1047		qcom_q6v5_deinit(&wcss->q6v5);
  1048		qcom_remove_glink_subdev(rproc, &wcss->glink_subdev);
  1049		qcom_remove_pdm_subdev(rproc, &wcss->pdm_subdev);
  1050		qcom_remove_sysmon_subdev(wcss->sysmon);
> 1051	+	qcom_remove_ssr_subdev(rproc, &wcss->ssr_subdev);
  1052	}
  1053	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind
  2026-09-18  4:13 [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind Guangshuo Li
  2026-09-19  7:34 ` kernel test robot
@ 2026-09-19 13:13 ` kernel test robot
  1 sibling, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-09-19 13:13 UTC (permalink / raw)
  To: Guangshuo Li, Bjorn Andersson, Mathieu Poirier,
	Sivaprakash Murugesan, Gokul Sriram Palanisamy, Govind Singh,
	linux-arm-msm, linux-remoteproc, linux-kernel
  Cc: oe-kbuild-all, Guangshuo Li, stable

Hi Guangshuo,

kernel test robot noticed the following build errors:

[auto build test ERROR on remoteproc/rproc-next]
[also build test ERROR on linus/master v7.3-rc3 next-20260918]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Guangshuo-Li/remoteproc-qcom-q6v5-wcss-remove-all-subdevices-on-unbind/20260918-121321
base:   https://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux.git rproc-next
patch link:    https://lore.kernel.org/r/20260918041321.3532355-1-lgs201920130244%40gmail.com
patch subject: [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20260919/202609192136.6T6AV8Dt-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260919/202609192136.6T6AV8Dt-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609192136.6T6AV8Dt-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/remoteproc/qcom_q6v5_wcss.c: In function 'q6v5_wcss_remove':
>> drivers/remoteproc/qcom_q6v5_wcss.c:1051:1: error: invalid use of void expression
    1051 | +       qcom_remove_ssr_subdev(rproc, &wcss->ssr_subdev);
         | ^


vim +1051 drivers/remoteproc/qcom_q6v5_wcss.c

  1039	
  1040	static void q6v5_wcss_remove(struct platform_device *pdev)
  1041	{
  1042		struct rproc *rproc = platform_get_drvdata(pdev);
  1043		struct q6v5_wcss *wcss = rproc->priv;
  1044	
  1045		rproc_del(rproc);
  1046	
  1047		qcom_q6v5_deinit(&wcss->q6v5);
  1048		qcom_remove_glink_subdev(rproc, &wcss->glink_subdev);
  1049		qcom_remove_pdm_subdev(rproc, &wcss->pdm_subdev);
  1050		qcom_remove_sysmon_subdev(wcss->sysmon);
> 1051	+	qcom_remove_ssr_subdev(rproc, &wcss->ssr_subdev);
  1052	}
  1053	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-09-19 13:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-18  4:13 [PATCH] remoteproc: qcom: q6v5-wcss: remove all subdevices on unbind Guangshuo Li
2026-09-19  7:34 ` kernel test robot
2026-09-19 13:13 ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®