)]}'
{
  "commit": "01406d471d3e3718b3771fdabcfca8c505157404",
  "tree": "03c5de406b256bd1dc1d48995395927c3a4c61f1",
  "parents": [
    "11f4b2116bc9e6d18182a796e0db1c30232e3e8c"
  ],
  "author": {
    "name": "Ard Biesheuvel",
    "email": "ardb@kernel.org",
    "time": "Mon Apr 17 18:32:51 2023 +0200"
  },
  "committer": {
    "name": "Ard Biesheuvel",
    "email": "ardb@kernel.org",
    "time": "Tue Apr 18 15:07:07 2023 +0200"
  },
  "message": "x86: Permit absolute per-CPU references in asm code\n\nWe have code in asm that is either part of a template that gets copied\naround, or is in an alternative block that gets patched into a different\nlocation in the binary.\n\nThis means we cannot use RIP-relative addressing here unless we fix up\nthe relative offset in the instruction after copying the code, which is\nkind of tricky.\n\nInstead, let\u0027s permit 32-bit sign extended per-CPU references, by\ntracking their locations and targets, and doing a pass at boot to insert\nthe correct immediates.\n\nSigned-off-by: Ard Biesheuvel \u003cardb@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bc2f4892a758b58589a2e273f802a5c078512e7f",
      "old_mode": 33188,
      "old_path": "arch/x86/include/asm/nospec-branch.h",
      "new_id": "1f12247c60188d04d3383b000cb13eca4023dc97",
      "new_mode": 33188,
      "new_path": "arch/x86/include/asm/nospec-branch.h"
    },
    {
      "type": "modify",
      "old_id": "6db30f4e6532159e361273b192cc8c5e6eebaf79",
      "old_mode": 33188,
      "old_path": "arch/x86/kernel/head64.c",
      "new_id": "c1de1c08f1c4528b81915c337007d3b267ef47c6",
      "new_mode": 33188,
      "new_path": "arch/x86/kernel/head64.c"
    },
    {
      "type": "modify",
      "old_id": "d0e688cf24c5a1462a7831166a21981e9423680c",
      "old_mode": 33188,
      "old_path": "arch/x86/kernel/vmlinux.lds.S",
      "new_id": "1a3bb6626138f2758a7b8b179dfdbb0e029fc90a",
      "new_mode": 33188,
      "new_path": "arch/x86/kernel/vmlinux.lds.S"
    }
  ]
}
