)]}'
{
  "commit": "ca8938704142ca564aae3d17c36e0083fd11d84a",
  "tree": "a643a62af5e940f67071d8609746a043049a5ea1",
  "parents": [
    "e5a3331a2e98401b838f288d5dce51aa907b8fb2"
  ],
  "author": {
    "name": "Sean Christopherson",
    "email": "seanjc@google.com",
    "time": "Mon May 05 11:03:00 2025 -0700"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Thu Sep 25 11:13:49 2025 +0200"
  },
  "message": "KVM: SVM: Set/clear SRSO\u0027s BP_SPEC_REDUCE on 0 \u003c\u003d\u003e 1 VM count transitions\n\ncommit e3417ab75ab2e7dca6372a1bfa26b1be3ac5889e upstream.\n\nSet the magic BP_SPEC_REDUCE bit to mitigate SRSO when running VMs if and\nonly if KVM has at least one active VM.  Leaving the bit set at all times\nunfortunately degrades performance by a wee bit more than expected.\n\nUse a dedicated spinlock and counter instead of hooking virtualization\nenablement, as changing the behavior of kvm.enable_virt_at_load based on\nSRSO_BP_SPEC_REDUCE is painful, and has its own drawbacks, e.g. could\nresult in performance issues for flows that are sensitive to VM creation\nlatency.\n\nDefer setting BP_SPEC_REDUCE until VMRUN is imminent to avoid impacting\nperformance on CPUs that aren\u0027t running VMs, e.g. if a setup is using\nhousekeeping CPUs.  Setting BP_SPEC_REDUCE in task context, i.e. without\nblasting IPIs to all CPUs, also helps avoid serializing 1\u003c\u003d\u003eN transitions\nwithout incurring a gross amount of complexity (see the Link for details\non how ugly coordinating via IPIs gets).\n\nLink: https://lore.kernel.org/all/aBOnzNCngyS_pQIW@google.com\nFixes: 8442df2b49ed (\"x86/bugs: KVM: Add support for SRSO_MSR_FIX\")\nReported-by: Michael Larabel \u003cMichael@michaellarabel.com\u003e\nCloses: https://www.phoronix.com/review/linux-615-amd-regression\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nTested-by: Borislav Petkov (AMD) \u003cbp@alien8.de\u003e\nLink: https://lore.kernel.org/r/20250505180300.973137-1-seanjc@google.com\nSigned-off-by: Sean Christopherson \u003cseanjc@google.com\u003e\nSigned-off-by: Harshit Mogalapalli \u003charshit.m.mogalapalli@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "353ad32c1be6086dc0c86defebfe2d52eee95647",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/svm/svm.c",
      "new_id": "9170a9e127b7a8641ecca114d330f1400849ab65",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/svm/svm.c"
    },
    {
      "type": "modify",
      "old_id": "d114efac7af78d865536603c8233c1af40f4682a",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/svm/svm.h",
      "new_id": "1aa9b1e468cb44dc15587f62e99a8c7122a7ca5e",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/svm/svm.h"
    }
  ]
}
