From: David Laight Date: Fri, 4 Jul 2014 14:35:51 +0000 (+0000) Subject: net: sctp: Optimise the way 'sctp_arg_t' values are initialised. X-Git-Tag: omap-for-v3.17/fixes-against-rc2~149^2~208^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9420e1c87838bcb354ae3495852430413dd9e4b;p=pandora-kernel.git net: sctp: Optimise the way 'sctp_arg_t' values are initialised. Even if memset() is inlined (as on x86) using it to zero the union generates a memory word write of zero, followed by a write of the smaller field, and then a read of the word. As well as being a lot of instructions the sequence is unlikely to be optimised by the store-load forward hardware so will be slow. Instead allocate a field of the union that is the same size as the entire union and write a zero value to it. The compiler will then generate the required value in a register. Zeroing the union shouldn't be necessary, but this patch series isn't intended to have a behavioural change. Signed-off-by: David Laight Signed-off-by: David S. Miller --- Reading git-diff-tree failed