On Thu, Nov 19, 2015 at 04:56:40PM +0100, Wolfram Sang wrote:
> Hello RCar Fans!
> 
> So, here is V3 of this series. After a debugging session with Laurent, we
> finally fixed his issue for good. It was not board dependent as we thought, 
> but
> toolchain dependent! Hidden by a macro, the driver used a compound assignemt
> with a function call as the rvalue. After patch 6, this function also changed 
> the
> flags which were to be changed by the compound assignment. Basically (after 
> macro):
> 
>       priv->flags |= i_change_priv_flags(priv);
> 
> Which is undefined behaviour, I guess. However, after my refactoring, the
> called functions always returned 0, so we can simply do:
> 
>       i_change_priv_flags(priv);
> 
> Nasty one, but finally issue gone, for all toolchains and optimization 
> settings.
> Furthermore, patch 11 has been added because HW engineers wanted it.
> 
> The branch can be found here:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git 
> renesas/rcar-i2c-rework-v3
> 
> Please test, test, test :)
> 
>    Wolfram

Applied to for-next, thanks!

Attachment: signature.asc
Description: Digital signature

Reply via email to