)]}'
{
  "commit": "70a0a5357db20c291d46c04011d646d5d84c868c",
  "tree": "fb82087c685b2f3018172a5956f86cc36fc833d1",
  "parents": [
    "d1752aa884ec0ac3027c1a3d456bf69bf765c8b8"
  ],
  "author": {
    "name": "Eric W. Biederman",
    "email": "ebiederm@xmission.com",
    "time": "Wed Oct 25 01:00:23 2006 +0200"
  },
  "committer": {
    "name": "Andi Kleen",
    "email": "andi@one.(none)",
    "time": "Wed Oct 25 01:00:23 2006 +0200"
  },
  "message": "[PATCH] x86-64: Only look at per_cpu data for online cpus.\n\nWhen I generalized __assign_irq_vector I failed to pay attention\nto what happens when you access a per cpu data structure for\na cpu that is not online.   It is an undefined case making any\ncode that does it have undefined behavior as well.\n\nThe code still needs to be able to allocate a vector across cpus\nthat are not online to properly handle combinations like lowest\npriority interrupt delivery and cpu_hotplug.  Not that we can do\nthat today but the infrastructure shouldn\u0027t prevent it.\n\nSo this patch updates the places where we touch per cpu data\nto only touch online cpus, it makes cpu vector allocation\nan atomic operation with respect to cpu hotplug, and it updates\nthe cpu start code to properly initialize vector_irq so we\ndon\u0027t have inconsistencies.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0e89ae7e7b2202e52bcdbcf1e3e30b7d8bde39b6",
      "old_mode": 33188,
      "old_path": "arch/x86_64/kernel/io_apic.c",
      "new_id": "fe429e5d6b29044591f37b3b57e01f0759cbdabd",
      "new_mode": 33188,
      "new_path": "arch/x86_64/kernel/io_apic.c"
    },
    {
      "type": "modify",
      "old_id": "7b7a6870288ac8dd2ae0188622d353949780c577",
      "old_mode": 33188,
      "old_path": "arch/x86_64/kernel/smpboot.c",
      "new_id": "62c2e747af58006a917d279150254a280aa9f364",
      "new_mode": 33188,
      "new_path": "arch/x86_64/kernel/smpboot.c"
    },
    {
      "type": "modify",
      "old_id": "792dd52fcd702b0ec45a719845d6da5e46c8deed",
      "old_mode": 33188,
      "old_path": "include/asm-x86_64/hw_irq.h",
      "new_id": "179cce755aa75656380f7f4e9005cebd46010742",
      "new_mode": 33188,
      "new_path": "include/asm-x86_64/hw_irq.h"
    }
  ]
}
