Re: [PATCH 1/2] clk: ti: divider: try to fix ti_clk_register_divider

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

 



On 04/20, Tero Kristo wrote:
> On 19/04/17 20:44, Arnd Bergmann wrote:
> >The newly introduced function is entirely bogus as I found when looking
> >at this warning:
> >
> >drivers/clk/ti/divider.c: In function 'ti_clk_register_divider':
> >drivers/clk/ti/divider.c:460:8: error: 'reg' may be used uninitialized in this function [-Werror=maybe-uninitialized]
> >
> >Treating a 'u32' variable as a structure leads to a stack overflow here,
> >and the register address we pass down is never initialized.
> >
> >As the code in its original form makes no sense, I can only guess what
> >the intention was, and change it to take the address from div->reg.ptr
> >instead.
> 
> Actually, I believe the code you are fixing works before this commit:
> 
> commit 6c0afb503937a12a8d20a805fcf263e31afa9871
> Author: Tero Kristo <t-kristo@xxxxxx>
> Date:   Thu Feb 9 11:24:37 2017 +0200
> 
>     clk: ti: convert to use proper register definition for all accesses
> 
> 
> ... it attempted to convert all the register accesses to the new
> format and change the size of the clk_omap_reg in bulk but I missed
> converting this one. Previously the size of the clk_omap_reg
> definition was u32, but this was confusing and bug prone so I
> changed it.
> 
> The failing piece of code is only executed for legacy boot mode
> OMAP3 right now, which could be potentially stripped out of the
> kernel already (I think Tony removed the support for non-DT boot
> OMAP3 boards already...?) This explains why I didn't notice the
> issue in my local testing either.
> 
> >
> >Fixes: d96f774b2538 ("clk: ti: divider: add support for legacy divider init")
> >Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> 
> So, this patch itself is fine, but the desc should be updated to
> reflect the above somehow.
> 
> And the "Fixes:" line should be updated to point to the commit
> mentioned above also.
> 

Waiting for Arnd to agree. I can also rename reg_setup to reg.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux