On Mon, Dec 09, 2024 at 12:01:16PM +0100, Hans de Goede wrote: > Hi, > > On 3-Dec-24 10:20 PM, Ricardo Ribalda wrote: > > This patchset fixes two +1 bugs with the async controls for the uvc driver. > > > > They were found while implementing the granular PM, but I am sending > > them as a separate patches, so they can be reviewed sooner. They fix > > real issues in the driver that need to be taken care. > > > > Signed-off-by: Ricardo Ribalda <ribalda@xxxxxxxxxxxx> > > Ricardo, Thank you for your patches. > > I have merged patches 1-4 into: > > https://gitlab.freedesktop.org/linux-media/users/uvc/-/commits/next/ At least patch 5/5 was applied incorrectly. Does that result from a merge conflict ? Or did you apply v5 by mistake ? There doesn't seem to be any other issue. I've rebased the uvc/next branch to fix this. Once CI passes, I'll send a pull request. > > --- > > Changes in v6: > > - Swap order of patches > > - Use uvc_ctrl_set_handle again > > - Move loaded=0 to uvc_ctrl_status_event() > > - Link to v5: https://lore.kernel.org/r/20241202-uvc-fix-async-v5-0-6658c1fe312b@xxxxxxxxxxxx > > > > Changes in v5: > > - Move set handle to the entity_commit > > - Replace uvc_ctrl_set_handle with get/put_handle. > > - Add a patch to flush the cache of async controls. > > - Link to v4: https://lore.kernel.org/r/20241129-uvc-fix-async-v4-0-f23784dba80f@xxxxxxxxxxxx > > > > Changes in v4: > > - Fix implementation of uvc_ctrl_set_handle. > > - Link to v3: https://lore.kernel.org/r/20241129-uvc-fix-async-v3-0-ab675ce66db7@xxxxxxxxxxxx > > > > Changes in v3: > > - change again! order of patches. > > - Introduce uvc_ctrl_set_handle. > > - Do not change ctrl->handle if it is not NULL. > > > > Changes in v2: > > - Annotate lockdep > > - ctrl->handle != handle > > - Change order of patches > > - Move documentation of mutex > > - Link to v1: https://lore.kernel.org/r/20241127-uvc-fix-async-v1-0-eb8722531b8c@xxxxxxxxxxxx > > > > --- > > Ricardo Ribalda (5): > > media: uvcvideo: Only save async fh if success > > media: uvcvideo: Remove redundant NULL assignment > > media: uvcvideo: Remove dangling pointers > > media: uvcvideo: Annotate lock requirements for uvc_ctrl_set > > media: uvcvideo: Flush the control cache when we get an event > > > > drivers/media/usb/uvc/uvc_ctrl.c | 83 ++++++++++++++++++++++++++++++++++------ > > drivers/media/usb/uvc/uvc_v4l2.c | 2 + > > drivers/media/usb/uvc/uvcvideo.h | 9 ++++- > > 3 files changed, 82 insertions(+), 12 deletions(-) > > --- > > base-commit: 291a8d98186f0a704cb954855d2ae3233971f07d > > change-id: 20241127-uvc-fix-async-2c9d40413ad8 -- Regards, Laurent Pinchart