mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] media: rtl28xxu: fix SDR platform device leak
@ 2026-09-21  8:15 Guangshuo Li
  2026-09-21 15:05 ` krzk
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Guangshuo Li @ 2026-09-21  8:15 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Guangshuo Li, Antti Palosaari,
	linux-media, linux-kernel
  Cc: stable

rtl2832u_tuner_attach() registers an rtl2832_sdr platform device, but
if registration succeeds without a bound driver, it breaks out without
unregistering the device.

dev->platform_device_sdr is assigned only after a driver is bound, so
rtl28xxu_tuner_detach() cannot unregister the unbound device later.
This leaves the registered platform device and its associated resources
allocated.

Split the registration failure and driver binding checks. Unregister
the successfully registered platform device when no driver is bound
before leaving the switch.

The issue was identified by a static analysis tool I developed and
confirmed by manual review.

Fixes: a2f7f220df5e ("[media] rtl28xxu: switch SDR module to platform driver")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
---
 drivers/media/usb/dvb-usb-v2/rtl28xxu.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
index 487c6ab784ab..3603d0cf638b 100644
--- a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
+++ b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
@@ -1391,8 +1391,12 @@ static int rtl2832u_tuner_attach(struct dvb_usb_adapter *adap)
 						     "rtl2832_sdr",
 						     PLATFORM_DEVID_AUTO,
 						     &pdata, sizeof(pdata));
-		if (IS_ERR(pdev) || pdev->dev.driver == NULL)
+		if (IS_ERR(pdev))
 			break;
+		if (!pdev->dev.driver) {
+			platform_device_unregister(pdev);
+			break;
+		}
 		dev->platform_device_sdr = pdev;
 		break;
 	default:
-- 
2.43.0


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

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

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-21  8:15 [PATCH] media: rtl28xxu: fix SDR platform device leak Guangshuo Li
2026-09-21 15:05 ` krzk
2026-09-21 15:08 ` krzk
2026-09-21 15:17 ` krzk
2026-09-21 21:59   ` Krzysztof Kozlowski

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®