Loading
media: uvcvideo: Enforce alignment of frame and interval
stable inclusion from stable-v6.6.50 commit d8915d27163098d3d917ed4fddc4f4f0c0826da2 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/IAYKL6 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=d8915d27163098d3d917ed4fddc4f4f0c0826da2 -------------------------------- [ Upstream commit c8931ef55bd325052ec496f242aea7f6de47dc9c ] Struct uvc_frame and interval (u32*) are packaged together on streaming->formats on a single contiguous allocation. Right now they are allocated right after uvc_format, without taking into consideration their required alignment. This is working fine because both structures have a field with a pointer, but it will stop working when the sizeof() of any of those structs is not a multiple of the sizeof(void*). Enforce that alignment during the allocation. Signed-off-by:Ricardo Ribalda <ribalda@chromium.org> Reviewed-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://lore.kernel.org/r/20240404-uvc-align-v2-1-9e104b0ecfbd@chromium.org Signed-off-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
Wen Zhiwei <wenzhiwei@kylinos.cn>