mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
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 <grondon@gmail.com> Link: https://patch.msgid.link/20260412222318.65045-1-grondon@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
57b5b1f450
commit
467716c1cc
|
|
@ -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);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user