)]}'
{
  "commit": "5550af4df179e52753d3a43a788a113ad8cd95cd",
  "tree": "f19274a4f7e345e70e7da713f44c1dcccdb134e8",
  "parents": [
    "6ad9f15c94822c3f067a7d443f3b414e08b34460"
  ],
  "author": {
    "name": "Sheng Yang",
    "email": "sheng@linux.intel.com",
    "time": "Wed Oct 15 20:15:06 2008 +0800"
  },
  "committer": {
    "name": "Avi Kivity",
    "email": "avi@redhat.com",
    "time": "Tue Oct 28 14:21:34 2008 +0200"
  },
  "message": "KVM: Fix guest shared interrupt with in-kernel irqchip\n\nEvery call of kvm_set_irq() should offer an irq_source_id, which is\nallocated by kvm_request_irq_source_id(). Based on irq_source_id, we\nidentify the irq source and implement logical OR for shared level\ninterrupts.\n\nThe allocated irq_source_id can be freed by kvm_free_irq_source_id().\n\nCurrently, we support at most sizeof(unsigned long) different irq sources.\n\n[Amit: - rebase to kvm.git HEAD\n       - move definition of KVM_USERSPACE_IRQ_SOURCE_ID to common file\n       - move kvm_request_irq_source_id to the update_irq ioctl]\n\n[Xiantao: - Add kvm/ia64 stuff and make it work for kvm/ia64 guests]\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Amit Shah \u003camit.shah@redhat.com\u003e\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "85db124d37f6a91498a02821f320138106bbc4fc",
      "old_mode": 33188,
      "old_path": "arch/ia64/include/asm/kvm_host.h",
      "new_id": "04c0b88f7b3a8e8033762ee529dd8d0286bb4241",
      "new_mode": 33188,
      "new_path": "arch/ia64/include/asm/kvm_host.h"
    },
    {
      "type": "modify",
      "old_id": "a312c9e9b9efa2ecd194aa7f88a98a233749dbf6",
      "old_mode": 33188,
      "old_path": "arch/ia64/kvm/kvm-ia64.c",
      "new_id": "8a2b13ff0aff2a069f667f1db7e6215e20063fd3",
      "new_mode": 33188,
      "new_path": "arch/ia64/kvm/kvm-ia64.c"
    },
    {
      "type": "modify",
      "old_id": "65679d006337a6d5951df565ac2ef50405a9c341",
      "old_mode": 33188,
      "old_path": "arch/x86/include/asm/kvm_host.h",
      "new_id": "8346be87cfa1a37778a74d7e80b6dccf3dd4204f",
      "new_mode": 33188,
      "new_path": "arch/x86/include/asm/kvm_host.h"
    },
    {
      "type": "modify",
      "old_id": "11c6725fb798b6967d60f07ea920fc594d292994",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/i8254.c",
      "new_id": "8772dc94682348aa518b1c424dd5e79e67894128",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/i8254.c"
    },
    {
      "type": "modify",
      "old_id": "e436d4983aa15e349eec174ed1643435060305e2",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/i8254.h",
      "new_id": "4178022b97aac8d66b4f3cfb535102b8bd47140d",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/i8254.h"
    },
    {
      "type": "modify",
      "old_id": "4f0677d1eae8f495147b2184474f5806c81303bd",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/x86.c",
      "new_id": "f1f8ff2f1fa2d4650266e1ed82ed86a1d4fe029c",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/x86.c"
    },
    {
      "type": "modify",
      "old_id": "3833c48fae3a372585475eca6cdfd28ef3124d4a",
      "old_mode": 33188,
      "old_path": "include/linux/kvm_host.h",
      "new_id": "bb92be2153bc364cc9c0876236b3867644ea7b85",
      "new_mode": 33188,
      "new_path": "include/linux/kvm_host.h"
    },
    {
      "type": "modify",
      "old_id": "d0169f5e60471859a0ab2282d30af66b6e0ee74c",
      "old_mode": 33188,
      "old_path": "virt/kvm/irq_comm.c",
      "new_id": "55ad76ee2d0913dbb52fcfa220687c33a3c535ef",
      "new_mode": 33188,
      "new_path": "virt/kvm/irq_comm.c"
    },
    {
      "type": "modify",
      "old_id": "cf0ab8ed3845c898e927d62608221512148bee4a",
      "old_mode": 33188,
      "old_path": "virt/kvm/kvm_main.c",
      "new_id": "a87f45edfae848e07c295c7623097e235ffe8c78",
      "new_mode": 33188,
      "new_path": "virt/kvm/kvm_main.c"
    }
  ]
}
