On Fr, 2014-11-14 at 11:05 -0800, Jay Vosburgh wrote: > This reverts commit e5a2c899957659cd1a9f789bc462f9c0b35f5150. > > Commit e5a2c899 introduced an alternative_call, arch_fast_hash2, > that selects between __jhash2 and __intel_crc4_2_hash based on the > X86_FEATURE_XMM4_2. > > Unfortunately, the alternative_call system does not appear to be > suitable for use with C functions, as register usage is not handled > properly for the called functions. The __jhash2 function in particular > clobbers registers that are not preserved when called via > alternative_call, resulting in a panic for direct callers of > arch_fast_hash2 on older CPUs lacking sse4_2. It is possible that > __intel_crc4_2_hash works merely by chance because it uses fewer > registers. > > This commit was suggested as the source of the problem by Jesse > Gross <[email protected]>. > > Signed-off-by: Jay Vosburgh <[email protected]>
I am totally fine to revert this and try to come up with a better solution. Acked-by: Hannes Frederic Sowa <[email protected]> Bye, Hannes _______________________________________________ discuss mailing list [email protected] http://openvswitch.org/mailman/listinfo/discuss
