summaryrefslogtreecommitdiff
path: root/drivers/media/usb/hackrf
diff options
context:
space:
mode:
authorAndi Shyti <andi.shyti@kernel.org>2026-08-28 15:59:50 +0200
committerHans Verkuil <hverkuil+cisco@kernel.org>2026-09-08 09:38:53 +0200
commit6e30287eaf3e41b86dfb86df3b811526693d74b4 (patch)
treef2c7baf6f01570c50236e471fb0529c548f3ed99 /drivers/media/usb/hackrf
parenta691c54986412e1fa87f036d2577d5a78a75e658 (diff)
downloadlinux-next-6e30287eaf3e41b86dfb86df3b811526693d74b4.tar.gz
linux-next-6e30287eaf3e41b86dfb86df3b811526693d74b4.zip
media: cx231xx: Fix cleanup path on failure
If cx231xx_init_v4l2() fails the probe currently jumps to err_init, which only unregisters the V4L2 device. The analog devices and I2C resources are left registered while the driver state can be released. A subsequent driver bind attempts to create the same I2C mux channel links and triggers a warning when the existing "channel-0" link is encountered. The remaining devices may also access released driver state. This produces the following warning can't create symlink to channel 0 WARNING: drivers/i2c/i2c-mux.c:403 at i2c_mux_add_adapter+0xcd8/0xeb0 Call Trace: i2c_mux_add_adapter+0xcdc/0xeb0 cx231xx_dev_init+0x2fb/0x1260 cx231xx_usb_probe+0xc48/0x2140 usb_probe_interface+0x657/0xc70 ... Jump to err_video_alt instead, which performs the full device cleanup before unregistering the V4L2 device. Reported-by: Farhad Alemi <farhad.alemi@berkeley.edu> Closes: https://github.com/farhad-alemi/public_bug_reports/tree/main/185-warning-in-i2c-mux-add-adapter/ Fixes: 4d2a7d3509f5 ("[media] cx231xx: move analog init code to a separate function") Signed-off-by: Andi Shyti <andi.shyti@kernel.org> Cc: <stable@vger.kernel.org> # v3.17+ Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Diffstat (limited to 'drivers/media/usb/hackrf')
0 files changed, 0 insertions, 0 deletions