Re: [PATCH] sctp: Clean up type-punning in sctp_cmd_t union
From: Vlad Yasevich <hidden>
Date: 2012-10-27 02:16:42
Also in:
linux-sctp
On 10/26/2012 09:42 PM, Neil Horman wrote:
On Fri, Oct 26, 2012 at 05:10:19PM -0400, David Miller wrote:quoted
From: Neil Horman <nhorman@tuxdriver.com> Date: Fri, 26 Oct 2012 16:35:04 -0400quoted
On Fri, Oct 26, 2012 at 03:12:11PM -0400, Vlad Yasevich wrote:quoted
Look at commit 19c7e9ee that introduced this. I don't remember all the details any more, but the problem only occurred on ia64 (probably due its speculative load handling). -vladThanks Vlad, I'll have a look see.Ok, so this IA64 issue is all about accesses to uninitialized memory. I think Neil's change is thus the most desirable thing to do. Simple memset the object to zero. Let the compiler optimize or not optimize things as it sees fit, to make sure the object is completely initialized. memset() expands to __builtin_memset(), and therefore the compiler can and will eliminate initializations to overlapping areas if such eliminations are possible.If thats the case, then I'll need to duplicate the memset in all three call sites. I've got a busy weekend comming up, but I'll respin this monday barring no objections or counter-arguments Best Neil
Yes, it should be done in all 3 call sights. If you are going with memset, you can remove .zero element as well. -vlad