)]}'
{
  "commit": "5bfa0e45e9e7212b87fe1564ab45f146c7d56e5f",
  "tree": "424041595d5084686305166014324f1eb0f1a68d",
  "parents": [
    "04c3024560d3a14acd18d0a51a1d0a89d29b7eb5"
  ],
  "author": {
    "name": "James Morse",
    "email": "james.morse@arm.com",
    "time": "Fri Nov 24 09:38:53 2023 +0000"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@kernel.org",
    "time": "Fri Nov 24 13:54:31 2023 +0100"
  },
  "message": "x86/cpu/intel_epb: Don\u0027t rely on link order\n\nintel_epb_init() is called as a subsys_initcall() to register cpuhp\ncallbacks. The callbacks make use of get_cpu_device() which will return\nNULL unless register_cpu() has been called. register_cpu() is called\nfrom topology_init(), which is also a subsys_initcall().\n\nThis is fragile. Moving the register_cpu() to a different\nsubsys_initcall() leads to a NULL dereference during boot.\n\nMake intel_epb_init() a late_initcall(), user-space can\u0027t provide a\npolicy before this point anyway.\n\nSigned-off-by: James Morse \u003cjames.morse@arm.com\u003e\nSigned-off-by: Russell King (Oracle) \u003crmk+kernel@armlinux.org.uk\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nReviewed-by: Gavin Shan \u003cgshan@redhat.com\u003e\nAcked-by: Rafael J. Wysocki \u003crafael.j.wysocki@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e4c3ba91321c95ad601d8e29f7439ab803c315a9",
      "old_mode": 33188,
      "old_path": "arch/x86/kernel/cpu/intel_epb.c",
      "new_id": "f18d35fe27a928690ed1d6c6d96a2468002c5690",
      "new_mode": 33188,
      "new_path": "arch/x86/kernel/cpu/intel_epb.c"
    }
  ]
}
