• Arnd Bergmann's avatar
    media: exynos4-is: properly initialize frame format · 97913bcb
    Arnd Bergmann authored
    We copy the subdev frame format from a partially initialized
    structure, which is not entirely well-defined. Older compilers
    like gcc-4.4 can copy uninitialized stack data here and warn
    about it:
    
    drivers/media/platform/exynos4-is/fimc-isp.c: In function 'fimc_isp_subdev_open':
    drivers/media/platform/exynos4-is/fimc-isp.c:379: error: 'fmt.reserved[10u]' may be used uninitialized in this function
    drivers/media/platform/exynos4-is/fimc-isp.c:379: error: 'fmt.reserved[9u]' may be used uninitialized in this function
    ...
    drivers/media/platform/exynos4-is/fimc-isp.c:379: error: 'fmt.reserved[0u]' may be used uninitialized in this function
    drivers/media/platform/exynos4-is/fimc-isp.c:379: error: 'fmt.xfer_func' may be used uninitialized in this function
    
    On newer compilers, only the initialized fields get copied, but
    we should not rely on that, so this changes the code to zero-out
    the remaining fields first.
    
    Fixes: 9a761e43 ("[media] exynos4-is: Add Exynos4x12 FIMC-IS driver")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
    97913bcb
fimc-isp.c 20.1 KB