)]}'
{
  "commit": "3e25a8efd252ae8d9c06f196d95f6ce0ce9ee77e",
  "tree": "13540ec3baca09e32c722e3b8d5215629cb10e48",
  "parents": [
    "f227c2f2d111a3e7cee3abf429fedb99ff00f89f"
  ],
  "author": {
    "name": "Rafael J. Wysocki",
    "email": "rafael.j.wysocki@intel.com",
    "time": "Tue Jun 11 16:53:06 2024 +0200"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Tue Sep 09 18:54:25 2025 +0200"
  },
  "message": "cpufreq: intel_pstate: Check turbo_is_disabled() in store_no_turbo()\n\n[ Upstream commit 350cbb5d2f676bff22c49e5e81764c3b8da342a9 ]\n\nAfter recent changes in intel_pstate, global.turbo_disabled is only set\nat the initialization time and never changed.  However, it turns out\nthat on some systems the \"turbo disabled\" bit in MSR_IA32_MISC_ENABLE,\nthe initial state of which is reflected by global.turbo_disabled, can be\nflipped later and there should be a way to take that into account (other\nthan checking that MSR every time the driver runs which is costly and\nuseless overhead on the vast majority of systems).\n\nFor this purpose, notice that before the changes in question,\nstore_no_turbo() contained a turbo_is_disabled() check that was used\nfor updating global.turbo_disabled if the \"turbo disabled\" bit in\nMSR_IA32_MISC_ENABLE had been flipped and that functionality can be\nrestored.  Then, users will be able to reset global.turbo_disabled\nby writing 0 to no_turbo which used to work before on systems with\nflipping \"turbo disabled\" bit.\n\nThis guarantees the driver state to remain in sync, but READ_ONCE()\nannotations need to be added in two places where global.turbo_disabled\nis accessed locklessly, so modify the driver to make that happen.\n\nFixes: 0940f1a8011f (\"cpufreq: intel_pstate: Do not update global.turbo_disabled after initialization\")\nCloses: https://lore.kernel.org/linux-pm/bf3ebf1571a4788e97daf861eb493c12d42639a3.camel@xry111.site\nSuggested-by: Srinivas Pandruvada \u003csrinivas.pandruvada@linux.intel.com\u003e\nReported-by: Xi Ruoyao \u003cxry111@xry111.site\u003e\nTested-by: Xi Ruoyao \u003cxry111@xry111.site\u003e\nSigned-off-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\nSigned-off-by: Sasha Levin \u003csashal@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7570d6d1ca8c0b25caa0623aadac1c9170dca211",
      "old_mode": 33188,
      "old_path": "drivers/cpufreq/intel_pstate.c",
      "new_id": "3ded51db833d700d1430c2d6d9c80adda8d2aa33",
      "new_mode": 33188,
      "new_path": "drivers/cpufreq/intel_pstate.c"
    }
  ]
}
