On Sat, May 10, 2025 at 01:10:22PM +0800, Herbert Xu wrote: > On Fri, May 09, 2025 at 09:44:50PM -0700, Eric Biggers wrote: > > > > This fixes "-cpu Power10", but older CPUs (e.g. "-cpu POWER9") are still > > failing. > > You're right. I'll revert this and apply the following patch > instead. > > BTW this thing is still hopelessly broken if it's called from > softirq context because there is no SIMD fallback. Yes I removed > the SIMD check but it was already broken before that as it simply > switched from the 4-block version to the 1-block version if SIMD > is not available rather than actually doing something that is > safe in softirq context. > > Perhaps we should just remove this altogether until it's fixed.
Yes, the PowerPC Poly1305 code incorrectly uses VSX without first checking crypto_simd_usable(). And PowerPC also doesn't support VSX in softirqs, or at least it doesn't claim to (it doesn't override may_use_simd(), so it gets the default from include/asm-generic/simd.h which returns false in softirq context). Maybe add 'depends on BROKEN' to CRYPTO_POLY1305_P10 for now, and give the PowerPC folks (Cc'ed) a chance to fix this before removing the code. - Eric