Announcement

Collapse
No announcement yet.

Disabling Spectre V2 Mitigations Is What Can Impair AMD Ryzen 7000 Series Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Originally posted by ll1025 View Post

    But the mitigation that defeats it-- IBRS-- was recommended by Intel in 2018 to both Microsoft and Linux, and patchsets were proposed. Torvalds rejected them partly because of performance. Microsoft implemented them, which is why Retbleed did not affect Windows (noted by Intel, among others).

    I've provided links elsewhere in this thread, but googling the following should get you some sources:
    • Windows IBRS retbleed
    • Linux IBRS 2018 Torvalds
    Thanks! Looking that the entire discussion three on the patch it seems like performance was not the only reason why it was rejected, Linus had many comments on the patch doing many weird stuff that was never mentioned in the initial post on how and what the patch was for and I can also note that Amazon never address them. Interestingly both Intel and AMD in the end (as of zen 3 and Cascade Lake(?)) did exactly what Torvalds told them to do here, which is to automatically call IBRS in the hardware when you switch to ring 0 (aka the eIBRS).

    The big question is that Windows really uses, they seem to have been used both retpolines and IBRS, but if they used IBRS already in 2018 then they must have taken a huge performance hit on the CPU:s without eIBRS, did no one cry over that or was/is it not enabled by default on all systems?

    edit: ok so to make things more complex it looks like Microsoft went the same route as Linux in 2019 in that they replaced IBRS with retpolines in build 1809 of Windows 10. So I wonder if anyone have actually tried to run retbleed on Windows or if it's only assumed that it isn't vulnerable (on CPU:s without eIBRS).
    Last edited by F.Ultra; 07 October 2022, 05:14 PM.

    Comment


    • #42
      Originally posted by ll1025 View Post
      Linus rejected it, in part for performance reasons
      He didn't reject it because of performance his argument was that no one will probably use it because of the performance hit. At least that's how I understand it.

      Although I also think that this shouldn't be of concern for the kernel devs. Just supply the most secure code possible and give people the chance to opt out.


      Comment


      • #43
        Originally posted by F.Ultra View Post
        The big question is that Windows really uses, they seem to have been used both retpolines and IBRS, but if they used IBRS already in 2018 then they must have taken a huge performance hit on the CPU:s without eIBRS, did no one cry over that or was/is it not enabled by default on all systems?

        edit: ok so to make things more complex it looks like Microsoft went the same route as Linux in 2019 in that they replaced IBRS with retpolines in build 1809 of Windows 10. So I wonder if anyone have actually tried to run retbleed on Windows or if it's only assumed that it isn't vulnerable (on CPU:s without eIBRS).
        Mitigating Spectre variant 2 with Retpoline on Windows - Microsoft Tech Community

        Originally posted by Microsoft
        Since Retpoline is a performance optimization for Spectre Variant 2, it requires that hardware and OS support for branch target injection to be present and enabled. Skylake and later generations of Intel processors are not compatible with Retpoline, so only Import Optimization will be enabled on these processors.
        Originally posted by Microsoft
        Retpoline is not applicable to Skylake and later processors from Intel.

        Comment


        • #44
          Yeah I saw those (it's the same link that ll1025 provided, but what is puzzling is that lots of Windows sites started to report that the performance hit from Windows 10 disappeared with build 1809 and they cannot all have run pre-skylake cpu:s one would imagine. Then as of Cascade Lake, Intel added eIBRS, so this is basically just a Skylake problem (on the Intel side).

          Comment


          • #45
            Originally posted by Guest View Post
            So now instead of being able to disable mitigations and get the processor's full-performance, the mitigations are built-in, presumably causing the same impact, and now can't be disabled?
            Actually you are probably right. I tried the new microcode fixing zenbleed on Ryzen 3600 and it is slightly slower than the software mitigation. So I'm going to revert the BIOS upgrade. Very disappointing.

            Not sure I'm allowed to post links but here it is:

            Comment

            Working...
            X