)]}'
{
  "commit": "acb15c85de57d81d773b6e4184b7cb143ce83eba",
  "tree": "3f8363f32e3a0bad1a7bce90915651e9d95b4711",
  "parents": [
    "c7c17423b9ea3c5559cfb480a00844f1df9eed06"
  ],
  "author": {
    "name": "Zou Nan hai",
    "email": "nanhai.zou@intel.com",
    "time": "Wed Jul 26 07:26:51 2006 +0800"
  },
  "committer": {
    "name": "Tony Luck",
    "email": "tony.luck@intel.com",
    "time": "Wed Aug 02 16:12:08 2006 -0700"
  },
  "message": "[IA64] Do not assume output registers be reservered.\n\nWe found an issue in pal.S.\n\nAccording to the software runtime SPEC,\nThe caller\u0027s output registers do not need to be preserved for\ncaller. The callee may reuse input registers for any other\npurpose within the procedure.\n\nin ia64_pal_call_phys_stacked,\n\ninput registers are copied to output registers before call\ninto ia64_switch_mode_phys, then used to call into PAL. This\nassumes output registers are preserved in ia64_switch_mode_phys,\nwhich may not be true.\n\nIn this particular case, ia64_switch_mode_phys alloc a null frame\n, and mask off psr.i.\nIf an interrupt comes at this small window,\nor an MCA comes inside the procedure, output registers\nmaybe changed,\nthen the pal call may got some staled input registers.\n\nThis patch moves the copies from input to output\nafter ia64_switch_mode_phys to follow the software\nruntime convention.\n\nIt  also removed some unused labels in\nia64_pal_call_phys_stacked.\n\nSigned-off-by: Zou Nan hai \u003cnanhai.zou@intel.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5018c7f2e7a898b01f4e6213e7681de11f9ff67a",
      "old_mode": 33188,
      "old_path": "arch/ia64/kernel/pal.S",
      "new_id": "ebaf1e685f5e350312bf72f3efbcb47288f58f1e",
      "new_mode": 33188,
      "new_path": "arch/ia64/kernel/pal.S"
    }
  ]
}
