+ /* These tests match the CPU_FTR_P9_RADIX_PREFETCH_BUG flag in Linux */
+ if (((pcc->pvr & 0xffffff00) == CPU_POWERPC_POWER9_DD1) ||
+ ((pcc->pvr & 0xffffff00) == CPU_POWERPC_POWER9_DD20) ||
+ ((pcc->pvr & 0xffffff00) == CPU_POWERPC_POWER9_DD21)) {
+ return 0;
+ }
Deducing what KVM supports rather than getting it to tell us
explicitly with a cap is usually frowned upon. However, given the
earlier discussion, I'm satisfied that this is the least bad available
option, at least for now.
BTW this particular test doesn't work as I hoped because we only have
a power9 dd2.0 model.
Oh.. yes... IIRC dd2.0 is barely present in the wild, since it doesn't
have vital Spectre mitigations....
Adding a 2.2 or 2.3 would be possible. Maybe overkill. I'll change
the test just to catch all POWER9 for now.
... no, given the above, I think we should definitely add the newer
models. Maybe even remove dd2.0 and replace it with the newer ones.