Re: [PATCH] media: omap3isp: zero-initialize the isp cam_xclk{a,b} initial data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat 2018-06-09 10:39:12, Javier Martinez Canillas wrote:
> The struct clk_init_data defined in isp_xclk_init() is a variable in the
> stack but it's not explicitly zero-initialized. Because of that, in some
> cases the data structure contains values that confuses the clk framework.
> 
> For example if the flags member has the CLK_IS_CRITICAL bit set, the clk
> framework will wrongly prepare the clock on registration. This leads to
> the isp_xclk_prepare() callback to be called which in turn calls to the
> omap3isp_get() function that increments the isp device reference counter.
> 
> Since this omap3isp_get() call is unexpected, this leads to an unbalanced
> omap3isp_get() call that prevents the requested IRQ to be later enabled,
> due the refcount not being 0 when the correct omap3isp_get() call happens.
> 
> Fixes: 9b28ee3c9122 ("[media] omap3isp: Use the common clock framework")
> Signed-off-by: Javier Martinez Canillas <javierm@xxxxxxxxxx>

Tested-by: Pavel Machek <pavel@xxxxxx>

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux