On 21/10/2019 22:32, speck for Andy Lutomirski wrote: > On 10/21/19 1:22 PM, speck for Pawan Gupta wrote: >> From: Pawan Gupta >> Subject: [PATCH v7 00/10] TAAv7 >> >> Changes since v6: >> - Add Michal's patch to allow tsx=on|off|auto via CONFIG >> - Rebase to v5.4-rc4 >> - Changelog, comments and documentation update. >> >> Changes since v5: >> - Remove unsafe X86_FEATURE_RTM toggles. > I'm wondering if maybe these patches shouldn't touch the cpu > capabilities at all. After all, even with TSX toggled off, TSX is still > present -- XBEGIN doesn't give #UD. So, there is some history here. The first microcode version had XBEGIN giving #UD, and a fair chunk of ancillary behaviour revolved around that. However, that is rather catastrophic for late-loading the microcode and securing the system in place, so the behaviour was relaxed from #UD to abort. That way, folk who late-load the microcode can secure their systems by setting the RTM_ABORT bit, and folk booting "fresh" with the new microcode can set both the RTM_ABORT and CPUID bits, to cause userspace to believe there is no RTM at all, and avoid their unconditional abort. ~Andrew P.S. I did ask if we could have both #UD and abort, and got a firm no based on patch space.