diff options
author | Sebastian Reichel <sre@kernel.org> | 2023-11-13 23:57:23 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-01-25 15:35:33 -0800 |
commit | b7062628caeaec90e8f691ebab2d70f31b7b6b91 (patch) | |
tree | da01183e88c297e7febc24a2f619fbfa38405200 | |
parent | af9d39677c919f5c7dc67675aa0d30f7793bd324 (diff) | |
download | linux-stable-b7062628caeaec90e8f691ebab2d70f31b7b6b91.tar.gz linux-stable-b7062628caeaec90e8f691ebab2d70f31b7b6b91.tar.bz2 linux-stable-b7062628caeaec90e8f691ebab2d70f31b7b6b91.zip |
media: v4l: async: Fix duplicated list deletion
[ Upstream commit 3de6ee94aae701fa949cd3b5df6b6a440ddfb8f2 ]
The list deletion call dropped here is already called from the
helper function in the line before. Having a second list_del()
call results in either a warning (with CONFIG_DEBUG_LIST=y):
list_del corruption, c46c8198->next is LIST_POISON1 (00000100)
If CONFIG_DEBUG_LIST is disabled the operation results in a
kernel error due to NULL pointer dereference.
Fixes: 28a1295795d8 ("media: v4l: async: Allow multiple connections between entities")
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | drivers/media/v4l2-core/v4l2-async.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c index 091e8cf4114b..8cfd593d293d 100644 --- a/drivers/media/v4l2-core/v4l2-async.c +++ b/drivers/media/v4l2-core/v4l2-async.c @@ -880,7 +880,6 @@ void v4l2_async_unregister_subdev(struct v4l2_subdev *sd) &asc->notifier->waiting_list); v4l2_async_unbind_subdev_one(asc->notifier, asc); - list_del(&asc->asc_subdev_entry); } } |