From: Gabriel Rondon Date: Sun, 12 Apr 2026 22:23:18 +0000 (+0100) Subject: staging: most: video: remove redundant cleanup in comp_exit() X-Git-Tag: v7.2-rc1~66^2~195 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=467716c1cc19bc7172b7ac23a1d8bf791f5c0c6b;p=thirdparty%2Fkernel%2Fstable.git staging: most: video: remove redundant cleanup in comp_exit() most_deregister_component() already calls disconnect_channel() for every linked channel via bus_for_each_dev() in core.c, which invokes comp_disconnect_channel() to remove each entry from the video_devices list and tear down the V4L2 device. The manual cleanup loop in comp_exit() duplicates this work and is guarded by a stale comment claiming that "mostcore currently doesn't call disconnect_channel() for linked channels" — but the core has since been fixed to do exactly that. Remove the redundant manual cleanup loop, the outdated comment, and the BUG_ON() assertion that checked for a condition that can no longer occur. Signed-off-by: Gabriel Rondon Link: https://patch.msgid.link/20260412222318.65045-1-grondon@gmail.com Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/most/video/video.c b/drivers/staging/most/video/video.c index 04351f8ccccf1..98988b0d93306 100644 --- a/drivers/staging/most/video/video.c +++ b/drivers/staging/most/video/video.c @@ -555,29 +555,8 @@ static int __init comp_init(void) static void __exit comp_exit(void) { - struct most_video_dev *mdev, *tmp; - LIST_HEAD(free_list); - - /* - * As the mostcore currently doesn't call disconnect_channel() - * for linked channels while we call most_deregister_component() - * we simulate this call here. - * This must be fixed in core. - */ - spin_lock_irq(&list_lock); - list_replace_init(&video_devices, &free_list); - spin_unlock_irq(&list_lock); - - list_for_each_entry_safe(mdev, tmp, &free_list, list) { - list_del_init(&mdev->list); - comp_unregister_videodev(mdev); - v4l2_device_disconnect(&mdev->v4l2_dev); - v4l2_device_put(&mdev->v4l2_dev); - } - most_deregister_configfs_subsys(&comp); most_deregister_component(&comp); - BUG_ON(!list_empty(&video_devices)); } module_init(comp_init);