)]}'
{
  "log": [
    {
      "commit": "8281715b4109b5ee26032ff7b77c0d575c4150f7",
      "tree": "882c0e408e7b0a099957454a07250e0a0f6f36e8",
      "parents": [
        "f78146b0f9230765c6315b2e14f56112513389ad"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Apr 18 19:23:50 2012 +0300"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Apr 19 20:35:43 2012 -0300"
      },
      "message": "KVM: ia64: fix build due to typo\n\ns/kcm/kvm/.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "f78146b0f9230765c6315b2e14f56112513389ad",
      "tree": "2e6780f2989c73c1bf214a5728514c1dc8e15f09",
      "parents": [
        "eac0556750e727ff39144a9a9e59d5ccf1fc0e2a"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Apr 18 19:22:47 2012 +0300"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Apr 19 20:35:07 2012 -0300"
      },
      "message": "KVM: Fix page-crossing MMIO\n\nMMIO that are split across a page boundary are currently broken - the\ncode does not expect to be aborted by the exit to userspace for the\nfirst MMIO fragment.\n\nThis patch fixes the problem by generalizing the current code for handling\n16-byte MMIOs to handle a number of \"fragments\", and changes the MMIO\ncode to create those fragments.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "b6d33834bd4e8bdf4a199812e31b3e36da53c794",
      "tree": "3360ac4b5fa572e3acb21ecdc686c6d941baa2fc",
      "parents": [
        "66ef89315f121cda9bf5b65a4ef02ad1b4fb16d9"
      ],
      "author": {
        "name": "Christoffer Dall",
        "email": "c.dall@virtualopensystems.com",
        "time": "Thu Mar 08 16:44:24 2012 -0500"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Apr 08 12:47:47 2012 +0300"
      },
      "message": "KVM: Factor out kvm_vcpu_kick to arch-generic code\n\nThe kvm_vcpu_kick function performs roughly the same funcitonality on\nmost all architectures, so we shouldn\u0027t have separate copies.\n\nPowerPC keeps a pointer to interchanging waitqueues on the vcpu_arch\nstructure and to accomodate this special need a\n__KVM_HAVE_ARCH_VCPU_GET_WQ define and accompanying function\nkvm_arch_vcpu_wq have been defined. For all other architectures this\nis a generic inline that just returns \u0026vcpu-\u003ewq;\n\nAcked-by: Scott Wood \u003cscottwood@freescale.com\u003e\nSigned-off-by: Christoffer Dall \u003cc.dall@virtualopensystems.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n\n"
    },
    {
      "commit": "3e515705a1f46beb1c942bb8043c16f8ac7b1e9e",
      "tree": "fd0e53e5f51e6e03dda80d7aec6073f5cb694fd1",
      "parents": [
        "4cee4798a304ee1ea579423ca048f16ceaccdfb5"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Mar 05 14:23:29 2012 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Mar 08 14:10:30 2012 +0200"
      },
      "message": "KVM: Ensure all vcpus are consistent with in-kernel irqchip settings\n\nIf some vcpus are created before KVM_CREATE_IRQCHIP, then\nirqchip_in_kernel() and vcpu-\u003earch.apic will be inconsistent, leading\nto potential NULL pointer dereferences.\n\nFix by:\n- ensuring that no vcpus are installed when KVM_CREATE_IRQCHIP is called\n- ensuring that a vcpu has an apic if it is installed after KVM_CREATE_IRQCHIP\n\nThis is somewhat long winded because vcpu-\u003earch.apic is created without\nkvm-\u003elock held.\n\nBased on earlier patch by Michael Ellerman.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "db3fe4eb45f3555d91a7124e18cf3a2f2a30eb90",
      "tree": "5d294feef8f6281d4cd6c67180e0514c74e87079",
      "parents": [
        "189a2f7b24677deced3d2a9803969ba69f4b75f6"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Wed Feb 08 13:02:18 2012 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Mar 08 14:10:22 2012 +0200"
      },
      "message": "KVM: Introduce kvm_memory_slot::arch and move lpage_info into it\n\nSome members of kvm_memory_slot are not used by every architecture.\n\nThis patch is the first step to make this difference clear by\nintroducing kvm_memory_slot::arch;  lpage_info is moved into it.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n\n"
    },
    {
      "commit": "5b1c1493afe8d69909f9df3221bb2fffdf479f4a",
      "tree": "f64fa2be60cb44e4d9cb7cc9338b4dabba65348a",
      "parents": [
        "e168bf8de33e16a909df2401af1f7d419c5780de"
      ],
      "author": {
        "name": "Carsten Otte",
        "email": "cotte@de.ibm.com",
        "time": "Wed Jan 04 10:25:23 2012 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Mar 05 14:52:19 2012 +0200"
      },
      "message": "KVM: s390: ucontrol: export SIE control block to user\n\nThis patch exports the s390 SIE hardware control block to userspace\nvia the mapping of the vcpu file descriptor. In order to do so,\na new arch callback named kvm_arch_vcpu_fault  is introduced for all\narchitectures. It allows to map architecture specific pages.\n\nSigned-off-by: Carsten Otte \u003ccotte@de.ibm.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n\n"
    },
    {
      "commit": "e08b96371625aaa84cb03f51acc4c8e0be27403a",
      "tree": "d0b140e8558c6145e1a3183809c7797be443bd68",
      "parents": [
        "a138fe7535c0ec778465c7b54b1aaaf4cfd885b7"
      ],
      "author": {
        "name": "Carsten Otte",
        "email": "cotte@de.ibm.com",
        "time": "Wed Jan 04 10:25:20 2012 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Mar 05 14:52:18 2012 +0200"
      },
      "message": "KVM: s390: add parameter for KVM_CREATE_VM\n\nThis patch introduces a new config option for user controlled kernel\nvirtual machines. It introduces a parameter to KVM_CREATE_VM that\nallows to set bits that alter the capabilities of the newly created\nvirtual machine.\nThe parameter is passed to kvm_arch_init_vm for all architectures.\nThe only valid modifier bit for now is KVM_VM_S390_UCONTROL.\nThis requires CAP_SYS_ADMIN privileges and creates a user controlled\nvirtual machine on s390 architectures.\n\nSigned-off-by: Carsten Otte \u003ccotte@de.ibm.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n\n"
    },
    {
      "commit": "60f9a9ef5492cae66aca2ad9873360161320d5af",
      "tree": "9fc03198a5aad6491e39fa2410f0a82648f75688",
      "parents": [
        "f85e2cb5dbaf905e9470d3fe099b31619da431fc"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Thu Nov 24 18:09:11 2011 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Dec 27 11:17:43 2011 +0200"
      },
      "message": "KVM: IA64: fix struct redefinition\n\nThere is the same struct definition in ia64 and kvm common code:\narch/ia64/kvm//kvm-ia64.c: At top level:\narch/ia64/kvm//kvm-ia64.c:777:8: error: redefinition of ‘struct kvm_io_range’\ninclude/linux/kvm_host.h:62:8: note: originally defined here\n\nSo, rename kvm_io_range to kvm_ia64_io_range in ia64 code\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "28a37544fb0223eb9805d2567b88f7360edec52a",
      "tree": "83afb64f8448303f9486eb6c87980695611275ab",
      "parents": [
        "be6ba0f0962a39091c52eb9167ddea201fe80716"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong.eric@gmail.com",
        "time": "Thu Nov 24 19:04:35 2011 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Dec 27 11:17:39 2011 +0200"
      },
      "message": "KVM: introduce id_to_memslot function\n\nIntroduce id_to_memslot to get memslot by slot id\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "be6ba0f0962a39091c52eb9167ddea201fe80716",
      "tree": "52e46aad8cce4857def4dc03fc75955677027054",
      "parents": [
        "be593d6286075801bba6d60fa466a39c24cc7616"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@linux.vnet.ibm.com",
        "time": "Thu Nov 24 17:39:18 2011 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Dec 27 11:17:37 2011 +0200"
      },
      "message": "KVM: introduce kvm_for_each_memslot macro\n\nIntroduce kvm_for_each_memslot to walk all valid memslot\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "a1b60c1cd913c5ccfb38c717ba0bd22622425fa7",
      "tree": "74e5c1e847262ba3c42fb3b0396a3e781c168b6e",
      "parents": [
        "905d66c1e5dc8149e111f04a32bb193f25da1d53"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Sep 06 18:46:34 2011 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Oct 21 14:37:20 2011 +0200"
      },
      "message": "iommu/core: Convert iommu_found to iommu_present\n\nWith per-bus iommu_ops the iommu_found function needs to\nwork on a bus_type too. This patch adds a bus_type parameter\nto that function and converts all call-places.\nThe function is also renamed to iommu_present because the\nfunction now checks if an iommu is present for a given bus\nand does not check for a global iommu anymore.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "e72542191cbba4cf7fda21cb22e26b42d7415daf",
      "tree": "95fc296d2d0d8c9b52183bd664b4ea0b662bb866",
      "parents": [
        "bbd9d6f7fbb0305c9a592bf05a32e87eb364a4ff"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@wizery.com",
        "time": "Tue Jul 05 17:06:14 2011 +0300"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jul 23 16:20:30 2011 +0930"
      },
      "message": "virtio: expose for non-virtualization users too\n\nvirtio has been so far used only in the context of virtualization,\nand the virtio Kconfig was sourced directly by the relevant arch\nKconfigs when VIRTUALIZATION was selected.\n\nNow that we start using virtio for inter-processor communications,\nwe need to source the virtio Kconfig outside of the virtualization\nscope too.\n\nMoreover, some architectures might use virtio for both virtualization\nand inter-processor communications, so directly sourcing virtio\nmight yield unexpected results due to conflicting selections.\n\nThe simple solution offered by this patch is to always source virtio\u0027s\nKconfig in drivers/Kconfig, and remove it from the appropriate arch\nKconfigs. Additionally, a virtio menu entry has been added so virtio\ndrivers don\u0027t show up in the general drivers menu.\n\nThis way anyone can use virtio, though it\u0027s arguably less accessible\n(and neat!) for virtualization users now.\n\nNote: some architectures (mips and sh) seem to have a VIRTUALIZATION\nmenu merely for sourcing virtio\u0027s Kconfig, so that menu is removed too.\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@wizery.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b74323dc2b7b5690d18bc7934b98e4665e778a7b",
      "tree": "0b2ce1d7cb86d724a648089c0d2a3958fa103340",
      "parents": [
        "4429d5dc1197aaf8188e4febcde54d26a51baf6c"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Wed Apr 27 14:06:07 2011 -0400"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun May 22 08:39:57 2011 -0400"
      },
      "message": "KVM: ia64: fix sparse warnings\n\nThis patch fixes some sparse warning about \"dubious one-bit signed bitfield.\"\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nOriginally-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "a44f99c7efdb88fa41128065c9a9445c19894e34",
      "tree": "9d9dc6026b2c0409eca05e360c98b8a688ccdb1e",
      "parents": [
        "b87a2d3e3147bd140da2eae584772c353d11421b",
        "22942c00a6ad6e9e93b53811a6de72c821c15d22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 20 18:14:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 20 18:14:55 2011 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (25 commits)\n  video: change to new flag variable\n  scsi: change to new flag variable\n  rtc: change to new flag variable\n  rapidio: change to new flag variable\n  pps: change to new flag variable\n  net: change to new flag variable\n  misc: change to new flag variable\n  message: change to new flag variable\n  memstick: change to new flag variable\n  isdn: change to new flag variable\n  ieee802154: change to new flag variable\n  ide: change to new flag variable\n  hwmon: change to new flag variable\n  dma: change to new flag variable\n  char: change to new flag variable\n  fs: change to new flag variable\n  xtensa: change to new flag variable\n  um: change to new flag variables\n  s390: change to new flag variable\n  mips: change to new flag variable\n  ...\n\nFix up trivial conflict in drivers/hwmon/Makefile\n"
    },
    {
      "commit": "6b7e2d0991489559a1df4500d77f7b76c4607ed0",
      "tree": "b82e941c3ca4d519c71577ad21807af4d02b0679",
      "parents": [
        "d48ead8b0b48862a87138d04efb7580a1a25beb5"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Jan 12 15:40:31 2011 +0800"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Mar 17 13:08:26 2011 -0300"
      },
      "message": "KVM: Add \"exiting guest mode\" state\n\nCurrently we keep track of only two states: guest mode and host\nmode.  This patch adds an \"exiting guest mode\" state that tells\nus that an IPI will happen soon, so unless we need to wait for the\nIPI, we can avoid it completely.\n\nAlso\n1: No need atomically to read/write -\u003emode in vcpu\u0027s thread\n\n2: reorganize struct kvm_vcpu to make -\u003emode and -\u003erequests\n   in the same cache line explicitly\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4800cd8311f8a16a9a9f8515f2793d5761c44c41",
      "tree": "7235904d98c6432301419f4365adceb3b5c70792",
      "parents": [
        "6ae8f8b8c50f6929fa99a662f6636a63ba76f93e"
      ],
      "author": {
        "name": "matt mooney",
        "email": "mfm@muteddisk.com",
        "time": "Fri Jan 14 06:12:28 2011 -0800"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Thu Mar 17 14:02:56 2011 +0100"
      },
      "message": "ia64: change to new flag variables\n\nReplace EXTRA_CFLAGS with ccflags-y and EXTRA_AFLAGS with asflags-y.\n\nSigned-off-by: matt mooney \u003cmfm@muteddisk.com\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "55065bc52795faae549abfb912aacc622dd63876",
      "tree": "63683547e41ed459a2a8747eeafb5e969633d54f",
      "parents": [
        "008d23e4852d78bb2618f2035f8b2110b6a6b968",
        "e5c301428294cb8925667c9ee39f817c4ab1c2c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:14:24 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:14:24 2011 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.38\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.38\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (142 commits)\n  KVM: Initialize fpu state in preemptible context\n  KVM: VMX: when entering real mode align segment base to 16 bytes\n  KVM: MMU: handle \u0027map_writable\u0027 in set_spte() function\n  KVM: MMU: audit: allow audit more guests at the same time\n  KVM: Fetch guest cr3 from hardware on demand\n  KVM: Replace reads of vcpu-\u003earch.cr3 by an accessor\n  KVM: MMU: only write protect mappings at pagetable level\n  KVM: VMX: Correct asm constraint in vmcs_load()/vmcs_clear()\n  KVM: MMU: Initialize base_role for tdp mmus\n  KVM: VMX: Optimize atomic EFER load\n  KVM: VMX: Add definitions for more vm entry/exit control bits\n  KVM: SVM: copy instruction bytes from VMCB\n  KVM: SVM: implement enhanced INVLPG intercept\n  KVM: SVM: enhance mov DR intercept handler\n  KVM: SVM: enhance MOV CR intercept handler\n  KVM: SVM: add new SVM feature bit names\n  KVM: cleanup emulate_instruction\n  KVM: move complete_insn_gp() into x86.c\n  KVM: x86: fix CR8 handling\n  KVM guest: Fix kvm clock initialization when it\u0027s configured out\n  ...\n"
    },
    {
      "commit": "175504cdbfef6a0fde3bafb6c38b4929049ac8ea",
      "tree": "f5d56514b496e2d186d429c0cd5570026cffd5be",
      "parents": [
        "a355c85c5f137d93c4e9274c50e26c20f1ebc1c9"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Thu Dec 16 01:41:37 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jan 12 11:30:55 2011 +0200"
      },
      "message": "KVM: Take missing slots_lock for kvm_io_bus_unregister_dev()\n\nIn KVM_CREATE_IRQCHIP, kvm_io_bus_unregister_dev() is called without taking\nslots_lock in the error handling path.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "d89f5eff70a31237ffa1e21c51d23ca532110aea",
      "tree": "13b47648a564d8382e08d7e5937ea30ff0fb838c",
      "parents": [
        "9d893c6bc177b6ac5a1e937f4fdc359d272d68ff"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Tue Nov 09 17:02:49 2010 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jan 12 11:29:09 2011 +0200"
      },
      "message": "KVM: Clean up vm creation and release\n\nIA64 support forces us to abstract the allocation of the kvm structure.\nBut instead of mixing this up with arch-specific initialization and\ndoing the same on destruction, split both steps. This allows to move\ngeneric destruction calls into generic code.\n\nIt also fixes error clean-up on failures of kvm_create_vm for IA64.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "b595076a180a56d1bb170e6eceda6eb9d76f4cd3",
      "tree": "bc01ec7283808013e0b8ce7713fd6fc40f810429",
      "parents": [
        "6aaccece1c483f189f76f1282b3984ff4c7ecb0a"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Nov 01 15:38:34 2010 -0400"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Nov 01 15:38:34 2010 -0400"
      },
      "message": "tree-wide: fix comment/printk typos\n\n\"gadget\", \"through\", \"command\", \"maintain\", \"maintain\", \"controller\", \"address\",\n\"between\", \"initiali[zs]e\", \"instead\", \"function\", \"select\", \"already\",\n\"equal\", \"access\", \"management\", \"hierarchy\", \"registration\", \"interest\",\n\"relative\", \"memory\", \"offset\", \"already\",\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "55438cc751c32cfafac52938403a86069e25b1bf",
      "tree": "4da311cf4f26fd8e00af3e7f60e46dd3d167574b",
      "parents": [
        "30644b902c5eef5328d37a2e15f1921aaca2588b"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Thu Sep 02 17:55:00 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Oct 24 10:52:00 2010 +0200"
      },
      "message": "KVM: ia64: define kvm_lapic_enabled() to fix a compile error\n\nThe following patch\n\n  commit 57ce1659316f4ca298919649f9b1b55862ac3826\n  KVM: x86: In DM_LOWEST, only deliver interrupts to vcpus with enabled LAPIC\u0027s\n\nignored the fact that kvm_irq_delivery_to_apic() was also used by ia64.\n\nWe define kvm_lapic_enabled() to fix a compile error caused by this.\nThis will have the same effect as reverting the problematic patch for ia64.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4",
      "tree": "5adc1ff2eaf64d450bf28bb6b2ce890db2567288",
      "parents": [
        "5cf65713f87775c548e3eb48dbafa32e12f28000",
        "0ea6e61122196509af82cc4f36cbdaacbefb8227"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)\n  Documentation: update broken web addresses.\n  fix comment typo \"choosed\" -\u003e \"chosen\"\n  hostap:hostap_hw.c Fix typo in comment\n  Fix spelling contorller -\u003e controller in comments\n  Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n  fs/Kconfig: Fix typo Userpace -\u003e Userspace\n  Removing dead MACH_U300_BS26\n  drivers/infiniband: Remove unnecessary casts of private_data\n  fs/ocfs2: Remove unnecessary casts of private_data\n  libfc: use ARRAY_SIZE\n  scsi: bfa: use ARRAY_SIZE\n  drm: i915: use ARRAY_SIZE\n  drm: drm_edid: use ARRAY_SIZE\n  synclink: use ARRAY_SIZE\n  block: cciss: use ARRAY_SIZE\n  comment typo fixes: charater \u003d\u003e character\n  fix comment typos concerning \"challenge\"\n  arm: plat-spear: fix typo in kerneldoc\n  reiserfs: typo comment fix\n  update email address\n  ...\n"
    },
    {
      "commit": "979586e0b5809c46ebe5d784794a9f6d859b665e",
      "tree": "92988306f9aa606b777b219ade16a6f244e4cdef",
      "parents": [
        "4482b06c0459469c101a1da3f4b24594da557f99"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Wed Jun 23 15:00:29 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:47:16 2010 +0300"
      },
      "message": "KVM: ia64: cleanup kvm_ia64_sync_dirty_log()\n\nkvm_ia64_sync_dirty_log() is a helper function for kvm_vm_ioctl_get_dirty_log()\nwhich copies ia64\u0027s arch specific dirty bitmap to general one in memslot.\nSo doing sanity checks in this function is unnatural. We move these checks\noutside of this and change the prototype appropriately.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4482b06c0459469c101a1da3f4b24594da557f99",
      "tree": "55da76c52f91676943219722d3f09f61aa8d7012",
      "parents": [
        "4d29bdbf12f35f7e7816d67e99c150630684604f"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Wed Jun 23 14:59:29 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:47:15 2010 +0300"
      },
      "message": "KVM: ia64: fix dirty_log_lock spin_lock section not to include get_dirty_log()\n\nkvm_get_dirty_log() calls copy_to_user(). So we need to narrow the\ndirty_log_lock spin_lock section not to include this.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "a1f4d39500ad8ed61825eff061debff42386ab5b",
      "tree": "58b72188b1356329e78951773f4be41e66b11d21",
      "parents": [
        "fc34531db3cf8c422f2ff7cf4ef507a3ca672cd2"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Jun 21 11:44:20 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:47:00 2010 +0300"
      },
      "message": "KVM: Remove memory alias support\n\nAs advertised in feature-removal-schedule.txt.  Equivalent support is provided\nby overlapping memory regions.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "2122ff5eab8faec853e43f6de886e8dc8f31e317",
      "tree": "e2a31431281f255c6dd38a79ffba4f051fd5b20d",
      "parents": [
        "1683b2416e4c514d30ff5844a06733d0444ee000"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 13 11:25:04 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:47 2010 +0300"
      },
      "message": "KVM: move vcpu locking to dispatcher for generic vcpu ioctls\n\nAll vcpu ioctls need to be locked, so instead of locking each one specifically\nwe lock at the generic dispatcher.\n\nThis patch only updates generic ioctls and leaves arch specific ioctls alone.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f1bbbb6912662b9f6070c5bfc4ca9eb1f06a9d5b",
      "tree": "c2c130a74be25b0b2dff992e1a195e2728bdaadd",
      "parents": [
        "fd0961ff67727482bb20ca7e8ea97b83e9de2ddb",
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "421f91d21ad6f799dc7b489bb33cc560ccc56f98",
      "tree": "aaf9f6385233fdf9277e634603156c89ede7f770",
      "parents": [
        "65155b3708137fabee865dc4da822763c0c41208"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri Jun 11 12:17:00 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:05:05 2010 +0200"
      },
      "message": "fix typos concerning \"initiali[zs]e\"\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "3499f4d0d1159a21245d6071f8af6a71b86a78bc",
      "tree": "f371f40814abdb56d023d86c65fb43cf5c9c217f",
      "parents": [
        "05b782ab951a896d7da41775999821f692dc9e01"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed May 26 17:57:05 2010 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 09 18:48:40 2010 +0300"
      },
      "message": "KVM: ia64: Add missing spin_unlock in kvm_arch_hardware_enable()\n\nAdd a spin_unlock missing on the error path.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression E1;\n@@\n\n* spin_lock(E1,...);\n  \u003c+... when !\u003d E1\n  if (...) {\n    ... when !\u003d E1\n*   return ...;\n  }\n  ...+\u003e\n* spin_unlock(E1,...);\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "1f73897861b8ef0be64ff4b801f8d6f830f683b5",
      "tree": "b4bae8f12e1422113910d8cb00a19d010dc4a52f",
      "parents": [
        "b904d7131d116900524bd36ec170dcd97846bfd3",
        "64ffc9ff424c65adcffe7d590018cc75e2d5d42a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 01 08:55:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 01 08:55:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-35\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-35\u0027 of git://repo.or.cz/linux-kbuild: (81 commits)\n  kbuild: Revert part of e8d400a to resolve a conflict\n  kbuild: Fix checking of scm-identifier variable\n  gconfig: add support to show hidden options that have prompts\n  menuconfig: add support to show hidden options which have prompts\n  gconfig: remove show_debug option\n  gconfig: remove dbg_print_ptype() and dbg_print_stype()\n  kconfig: fix zconfdump()\n  kconfig: some small fixes\n  add random binaries to .gitignore\n  kbuild: Include gen_initramfs_list.sh and the file list in the .d file\n  kconfig: recalc symbol value before showing search results\n  .gitignore: ignore *.lzo files\n  headerdep: perlcritic warning\n  scripts/Makefile.lib: Align the output of LZO\n  kbuild: Generate modules.builtin in make modules_install\n  Revert \"kbuild: specify absolute paths for cscope\"\n  kbuild: Do not unnecessarily regenerate modules.builtin\n  headers_install: use local file handles\n  headers_check: fix perl warnings\n  export_report: fix perl warnings\n  ...\n"
    },
    {
      "commit": "0ee75bead83da4791e5cbf659806c54d8ee40f12",
      "tree": "3b3856aac1fc94d153f9e6c27f383f81be06185a",
      "parents": [
        "884a0ff0b68b3ece5987507de168215e14ef7849"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Apr 28 15:39:01 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed May 19 11:36:29 2010 +0300"
      },
      "message": "KVM: Let vcpu structure alignment be determined at runtime\n\nvmx and svm vcpus have different contents and therefore may have different\nalignmment requirements.  Let each specify its required alignment.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "90d83dc3d49f5101addae962ccc1b4aff66b68d8",
      "tree": "855aec81663eff4597ab276f13d449be9b798ec2",
      "parents": [
        "9beeaa2d689842f7760aa16c512e6bb8182d38b6"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Apr 19 17:41:23 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 17 12:18:01 2010 +0300"
      },
      "message": "KVM: use the correct RCU API for PROVE_RCU\u003dy\n\nThe RCU/SRCU API have already changed for proving RCU usage.\n\nI got the following dmesg when PROVE_RCU\u003dy because we used incorrect API.\nThis patch coverts rcu_deference() to srcu_dereference() or family API.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: suspicious rcu_dereference_check() usage. ]\n---------------------------------------------------\narch/x86/kvm/mmu.c:3020 invoked rcu_dereference_check() without protection!\n\nother info that might help us debug this:\n\nrcu_scheduler_active \u003d 1, debug_locks \u003d 0\n2 locks held by qemu-system-x86/8550:\n #0:  (\u0026kvm-\u003eslots_lock){+.+.+.}, at: [\u003cffffffffa011a6ac\u003e] kvm_set_memory_region+0x29/0x50 [kvm]\n #1:  (\u0026(\u0026kvm-\u003emmu_lock)-\u003erlock){+.+...}, at: [\u003cffffffffa012262d\u003e] kvm_arch_commit_memory_region+0xa6/0xe2 [kvm]\n\nstack backtrace:\nPid: 8550, comm: qemu-system-x86 Not tainted 2.6.34-rc4-tip-01028-g939eab1 #27\nCall Trace:\n [\u003cffffffff8106c59e\u003e] lockdep_rcu_dereference+0xaa/0xb3\n [\u003cffffffffa012f6c1\u003e] kvm_mmu_calculate_mmu_pages+0x44/0x7d [kvm]\n [\u003cffffffffa012263e\u003e] kvm_arch_commit_memory_region+0xb7/0xe2 [kvm]\n [\u003cffffffffa011a5d7\u003e] __kvm_set_memory_region+0x636/0x6e2 [kvm]\n [\u003cffffffffa011a6ba\u003e] kvm_set_memory_region+0x37/0x50 [kvm]\n [\u003cffffffffa015e956\u003e] vmx_set_tss_addr+0x46/0x5a [kvm_intel]\n [\u003cffffffffa0126592\u003e] kvm_arch_vm_ioctl+0x17a/0xcf8 [kvm]\n [\u003cffffffff810a8692\u003e] ? unlock_page+0x27/0x2c\n [\u003cffffffff810bf879\u003e] ? __do_fault+0x3a9/0x3e1\n [\u003cffffffffa011b12f\u003e] kvm_vm_ioctl+0x364/0x38d [kvm]\n [\u003cffffffff81060cfa\u003e] ? up_read+0x23/0x3d\n [\u003cffffffff810f3587\u003e] vfs_ioctl+0x32/0xa6\n [\u003cffffffff810f3b19\u003e] do_vfs_ioctl+0x495/0x4db\n [\u003cffffffff810e6b2f\u003e] ? fget_light+0xc2/0x241\n [\u003cffffffff810e416c\u003e] ? do_sys_open+0x104/0x116\n [\u003cffffffff81382d6d\u003e] ? retint_swapgs+0xe/0x13\n [\u003cffffffff810f3ba6\u003e] sys_ioctl+0x47/0x6a\n [\u003cffffffff810021db\u003e] system_call_fastpath+0x16/0x1b\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "600f1ec3761671307935a583c46f17fff0fa9b72",
      "tree": "7a723ff9233098b9636aac57dbdf44176bc81ba9",
      "parents": [
        "160d2f6c0c90713aa3bb93dd344fe0d527342e26"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Fri Mar 12 10:11:15 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 17 12:15:33 2010 +0300"
      },
      "message": "KVM: ia64: fix the error of ioctl KVM_IRQ_LINE if no irq chip\n\nIf no irq chip in kernel, ioctl KVM_IRQ_LINE will return -EFAULT.\nBut I see in other place such as KVM_[GET|SET]IRQCHIP, -ENXIO is\nreturn. So this patch used -ENXIO instead of -EFAULT.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "5c0d0920a270b9f2aa20c1cecb162703da32e766",
      "tree": "7494b38a359df05c50fe98d8eed4cd50d8d16866",
      "parents": [
        "ec68798c8fd0f01cdbd3f3e1a970e76a644cf08e"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Fri Mar 12 08:45:39 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 17 12:15:30 2010 +0300"
      },
      "message": "KVM: ia64: fix the error code of ioctl KVM_IA64_VCPU_GET_STACK failure\n\nThe ioctl KVM_IA64_VCPU_GET_STACK does not set the error code if\ncopy_to_user() fail, and 0 will be return, we should use -EFAULT\ninstead of 0 in this case, so this patch fixed it.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "87bf6e7de1134f48681fd2ce4b7c1ec45458cb6d",
      "tree": "ae8ce63cecab98c036c0d76422de42cf78e042f4",
      "parents": [
        "77662e0028c7c63e34257fda03ff9625c59d939d"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Mon Apr 12 19:35:35 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Apr 20 13:06:55 2010 +0300"
      },
      "message": "KVM: fix the handling of dirty bitmaps to avoid overflows\n\nInt is not long enough to store the size of a dirty bitmap.\n\nThis patch fixes this problem with the introduction of a wrapper\nfunction to calculate the sizes of dirty bitmaps.\n\nNote: in mark_page_dirty(), we have to consider the fact that\n  __set_bit() takes the offset as int, not long.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "c812a51d11bbe983f4c24e32b59b265705ddd3c2",
      "tree": "d454f518db51a4de700cf3dcd4c3c71ee7288b47",
      "parents": [
        "9467c4fdd66f6810cecef0f1173330f3c6e67d45",
        "d2be1651b736002e0c76d7095d6c0ba77b4a897c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 13:12:34 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 05 13:12:34 2010 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.34\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.34\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (145 commits)\n  KVM: x86: Add KVM_CAP_X86_ROBUST_SINGLESTEP\n  KVM: VMX: Update instruction length on intercepted BP\n  KVM: Fix emulate_sys[call, enter, exit]()\u0027s fault handling\n  KVM: Fix segment descriptor loading\n  KVM: Fix load_guest_segment_descriptor() to inject page fault\n  KVM: x86 emulator: Forbid modifying CS segment register by mov instruction\n  KVM: Convert kvm-\u003erequests_lock to raw_spinlock_t\n  KVM: Convert i8254/i8259 locks to raw_spinlocks\n  KVM: x86 emulator: disallow opcode 82 in 64-bit mode\n  KVM: x86 emulator: code style cleanup\n  KVM: Plan obsolescence of kernel allocated slots, paravirt mmu\n  KVM: x86 emulator: Add LOCK prefix validity checking\n  KVM: x86 emulator: Check CPL level during privilege instruction emulation\n  KVM: x86 emulator: Fix popf emulation\n  KVM: x86 emulator: Check IOPL level during io instruction emulation\n  KVM: x86 emulator: fix memory access during x86 emulation\n  KVM: x86 emulator: Add Virtual-8086 mode of emulation\n  KVM: x86 emulator: Add group9 instruction decoding\n  KVM: x86 emulator: Add group8 instruction decoding\n  KVM: do not store wqh in irqfd\n  ...\n\nTrivial conflicts in Documentation/feature-removal-schedule.txt\n"
    },
    {
      "commit": "2b55f3672c77e76b62efd0dba6bf29addac071fd",
      "tree": "d209f2914134f92ab6e422bb3991cc459fe9a20c",
      "parents": [
        "041d5f94c4d67444c40584db0d1cacf32a47a25b"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Sat Feb 20 01:03:47 2010 +0100"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Mar 03 11:26:00 2010 +0100"
      },
      "message": "Rename .text.ivt to .text..ivt.\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "4b7bb9210047fe880bb71e6273c3a4526799dbd7",
      "tree": "ca3de4c61fa42b4a09930646741d5cd17c194379",
      "parents": [
        "72bb2fcd23afe8db53b47e8f9edd736c517ba532"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue Feb 09 10:41:56 2010 +0800"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:36:10 2010 -0300"
      },
      "message": "KVM: ia64: destroy ioapic device if fail to setup default irq routing\n\nIf KVM_CREATE_IRQCHIP fail due to kvm_setup_default_irq_routing(),\nioapic device is not destroyed and kvm-\u003earch.vioapic is not set to\nNULL, this may cause KVM_GET_IRQCHIP and KVM_SET_IRQCHIP access to\nunexcepted memory.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "16fbb5eecc4ab8d4eb4d2a683d7fd74ccacc890b",
      "tree": "a62809561dbbf4ad1ee0e3d19d7504ce5ffe717c",
      "parents": [
        "ebcbab4c034db2ec25abe702d788936b29a49b24"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Feb 01 23:22:07 2010 -0800"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:36:07 2010 -0300"
      },
      "message": "KVM: ia64: Fix string literal continuation lines\n\nString constants that are continued on subsequent lines with \\\nare not good.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "647492047763c3ee8fe51ecf9a04f39040aa495b",
      "tree": "acdd836ad2695f9e50725c51b667bcc1acb81765",
      "parents": [
        "ccd469362e826261ccc261c4c36fb0a346338222"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Tue Jan 19 12:45:23 2010 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:36:01 2010 -0300"
      },
      "message": "KVM: fix cleanup_srcu_struct on vm destruction\n\ncleanup_srcu_struct on VM destruction remains broken:\n\nBUG: unable to handle kernel paging request at ffffffffffffffff\nIP: [\u003cffffffff802533d2\u003e] srcu_read_lock+0x16/0x21\nRIP: 0010:[\u003cffffffff802533d2\u003e]  [\u003cffffffff802533d2\u003e] srcu_read_lock+0x16/0x21\nCall Trace:\n [\u003cffffffffa05354c4\u003e] kvm_arch_vcpu_uninit+0x1b/0x48 [kvm]\n [\u003cffffffffa05339c6\u003e] kvm_vcpu_uninit+0x9/0x15 [kvm]\n [\u003cffffffffa0569f7d\u003e] vmx_free_vcpu+0x7f/0x8f [kvm_intel]\n [\u003cffffffffa05357b5\u003e] kvm_arch_destroy_vm+0x78/0x111 [kvm]\n [\u003cffffffffa053315b\u003e] kvm_put_kvm+0xd4/0xfe [kvm]\n\nMove it to kvm_arch_destroy_vm.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nReported-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\n"
    },
    {
      "commit": "0f0412c1a734700fb8ccccb1c09371642e029e2e",
      "tree": "a46b7ea6fe422387583b8a3b7268f3123f69ab45",
      "parents": [
        "4610c83cdc8bff04f2f22883749f716b1ccc502f"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Thu Jan 14 18:05:58 2010 +0100"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:52 2010 -0300"
      },
      "message": "KVM: ia64: remove redundant kvm_get_exit_data() NULL tests\n\nkvm_get_exit_data() cannot return a NULL pointer.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "79fac95ecfa3969aab8119d37ccd7226165f933a",
      "tree": "4103169c7fd2b7fb1ba95dae2db6b3f365476b9d",
      "parents": [
        "f656ce0185cabbbb0cf96877306879661297c7ad"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:26 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:45 2010 -0300"
      },
      "message": "KVM: convert slots_lock to a mutex\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "f656ce0185cabbbb0cf96877306879661297c7ad",
      "tree": "e2c8e61642ae4849c901922552a1acf0112461b4",
      "parents": [
        "e93f8a0f821e290ac5149830110a5f704db7a1fc"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:25 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:45 2010 -0300"
      },
      "message": "KVM: switch vcpu context to use SRCU\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "e93f8a0f821e290ac5149830110a5f704db7a1fc",
      "tree": "f88a5e97286031a8105d63a069a4131b74dab113",
      "parents": [
        "a983fb238728e1123177e8058d4f644b949a7d05"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:24 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:45 2010 -0300"
      },
      "message": "KVM: convert io_bus to SRCU\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "bc6678a33d9b952981a8e44a4f876c3ad64ca4d8",
      "tree": "e26027179eb0d76f234509145a395dd6e5910074",
      "parents": [
        "3ad26d8139a82b0510b1e0435ee82ae461d33401"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:21 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:44 2010 -0300"
      },
      "message": "KVM: introduce kvm-\u003esrcu and convert kvm_set_memory_region to SRCU update\n\nUse two steps for memslot deletion: mark the slot invalid (which stops\ninstantiation of new shadow pages for that slot, but allows destruction),\nthen instantiate the new empty slot.\n\nAlso simplifies kvm_handle_hva locking.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "f7784b8ec9b6a041fa828cfbe9012fe51933f5ac",
      "tree": "dc67f35e585bb06492852c01776aea4b737db48b",
      "parents": [
        "fef9cce0eb28a67e688a411cc30b73625e49002b"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:18 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:44 2010 -0300"
      },
      "message": "KVM: split kvm_arch_set_memory_region into prepare and commit\n\nRequired for SRCU convertion later.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "46a26bf55714c1e2f17e34683292a389acb8e601",
      "tree": "3df70225ce6a076d7e4be604a5d72465383043ee",
      "parents": [
        "2044892d4a005a78796c92fd1aef4633be896698"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed Dec 23 14:35:16 2009 -0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:43 2010 -0300"
      },
      "message": "KVM: modify memslots layout in struct kvm\n\nHave a pointer to an allocated region inside struct kvm.\n\n[alex: fix ppc book 3s]\n\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "50eb2a3cd0f50d912b26d0b79b7f443344608390",
      "tree": "ee5822d6dd7428fe5624e08e3a588fea2a46affd",
      "parents": [
        "4c07b0a4b6df45fd8c6d07d838b4faf65eed2ba4"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Dec 20 15:00:10 2009 +0200"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Mon Mar 01 12:35:41 2010 -0300"
      },
      "message": "KVM: Add KVM_MMIO kconfig item\n\ns390 doesn\u0027t have mmio, this will simplify ifdefing it out.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "51c24aaacaea90c8e87f1dec75a2ac7622b593f8",
      "tree": "9f54936c87764bef75e97395cb56b7d1e0df24c6",
      "parents": [
        "4276e47e2d1c85a2477caf0d22b91c4f2377fba8",
        "6be325719b3e54624397e413efd4b33a997e55a3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 23 00:31:06 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jan 23 00:31:06 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "3a4d5c94e959359ece6d6b55045c3f046677f55c",
      "tree": "113cfe31540e3d77925837f6990c3284d425bfd1",
      "parents": [
        "5da779c34ccff5e1e617892b6c8bd8260fb1f04c"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Thu Jan 14 06:17:27 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 15 01:43:29 2010 -0800"
      },
      "message": "vhost_net: a kernel-level virtio server\n\nWhat it is: vhost net is a character device that can be used to reduce\nthe number of system calls involved in virtio networking.\nExisting virtio net code is used in the guest without modification.\n\nThere\u0027s similarity with vringfd, with some differences and reduced scope\n- uses eventfd for signalling\n- structures can be moved around in memory at any time (good for\n  migration, bug work-arounds in userspace)\n- write logging is supported (good for migration)\n- support memory table and not just an offset (needed for kvm)\n\ncommon virtio related code has been put in a separate file vhost.c and\ncan be made into a separate module if/when more backends appear.  I used\nRusty\u0027s lguest.c as the source for developing this part : this supplied\nme with witty comments I wouldn\u0027t be able to write myself.\n\nWhat it is not: vhost net is not a bus, and not a generic new system\ncall. No assumptions are made on how guest performs hypercalls.\nUserspace hypervisors are supported as well as kvm.\n\nHow it works: Basically, we connect virtio frontend (configured by\nuserspace) to a backend. The backend could be a network device, or a tap\ndevice.  Backend is also configured by userspace, including vlan/mac\netc.\n\nStatus: This works for me, and I haven\u0027t see any crashes.\nCompared to userspace, people reported improved latency (as I save up to\n4 system calls per packet), as well as better bandwidth and CPU\nutilization.\n\nFeatures that I plan to look at in the future:\n- mergeable buffers\n- zero copy\n- scalability tuning: figure out the best threading model to use\n\nNote on RCU usage (this is also documented in vhost.h, near\nprivate_pointer which is the value protected by this variant of RCU):\nwhat is happening is that the rcu_dereference() is being used in a\nworkqueue item.  The role of rcu_read_lock() is taken on by the start of\nexecution of the workqueue item, of rcu_read_unlock() by the end of\nexecution of the workqueue item, and of synchronize_rcu() by\nflush_workqueue()/flush_work(). In the future we might need to apply\nsome gcc attribute or sparse annotation to the function passed to\nINIT_WORK(). Paul\u0027s ack below is for this RCU usage.\n\n(Includes fixes by Alan Cox \u003calan@linux.intel.com\u003e,\nDavid L Stevens \u003cdlstevens@us.ibm.com\u003e,\nChris Wright \u003cchrisw@redhat.com\u003e)\n\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a662b8135a1f9fee7d3f9129498cb03f3d6ce772",
      "tree": "3766ea07d781115847692632f34ff86371b1bc1b",
      "parents": [
        "dab4b911a5327859bb8f969249c6978c26cd4853"
      ],
      "author": {
        "name": "Luck, Tony",
        "email": "tony.luck@intel.com",
        "time": "Thu Dec 17 17:05:03 2009 -0800"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Sun Dec 27 13:36:33 2009 -0200"
      },
      "message": "KVM: ia64: fix build breakage due to host spinlock change\n\nLen Brown pointed out that allmodconfig is broken for\nia64 because of:\n\narch/ia64/kvm/vmm.c: In function \u0027vmm_spin_unlock\u0027:\narch/ia64/kvm/vmm.c:70: error: \u0027spinlock_t\u0027 has no member named \u0027raw_lock\u0027\n\nKVM has it\u0027s own spinlock routines. It should not depend on the base kernel\nspinlock_t type (which changed when ia64 switched to ticket locks).  Define\nits own vmm_spinlock_t type.\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "98b8788ae91694499d1995035625bea16a4db0c4",
      "tree": "bc9001f4a97250c89222edbf192daf66f3beca91",
      "parents": [
        "92045954058671fdd0ccf031ca06611ce1d929d1"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Oct 18 00:39:40 2009 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat Dec 12 13:08:15 2009 +0100"
      },
      "message": "drop explicit include of autoconf.h\n\nkbuild.h forces include of autoconf.h on the\ncommandline using -include - so we do not need to\ninclude the file explicit.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "10474ae8945ce08622fd1f3464e55bd817bf2376",
      "tree": "d390843b5107e600fbbf745eb24d85d745fe449f",
      "parents": [
        "e8b3433a5c062e94e34cadb6144c10689a497bc3"
      ],
      "author": {
        "name": "Alexander Graf",
        "email": "agraf@suse.de",
        "time": "Tue Sep 15 11:37:46 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:32:10 2009 +0200"
      },
      "message": "KVM: Activate Virtualization On Demand\n\nX86 CPUs need to have some magic happening to enable the virtualization\nextensions on them. This magic can result in unpleasant results for\nusers, like blocking other VMMs from working (vmx) or using invalid TLB\nentries (svm).\n\nCurrently KVM activates virtualization when the respective kernel module\nis loaded. This blocks us from autoloading KVM modules without breaking\nother VMMs.\n\nTo circumvent this problem at least a bit, this patch introduces on\ndemand activation of virtualization. This means, that instead\nvirtualization is enabled on creation of the first virtual machine\nand disabled on destruction of the last one.\n\nSo using this, KVM can be easily autoloaded, while keeping other\nhypervisors usable.\n\nSigned-off-by: Alexander Graf \u003cagraf@suse.de\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "bfd99ff5d483b11c32bca49fbff7a5ac59038b0a",
      "tree": "e48d9dbf89f6f3940133f7b80559740152af3f7b",
      "parents": [
        "367e1319b229110a27c53221c2fa32a6aa86d4a9"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Aug 26 14:57:50 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:32:09 2009 +0200"
      },
      "message": "KVM: Move assigned device code to own file\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "367e1319b229110a27c53221c2fa32a6aa86d4a9",
      "tree": "189e289b9985cf3c9b1416b3cc7be3c7ddc7d130",
      "parents": [
        "680b3648ba89c44ac8d0316f78a0d6e147b88809"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Aug 26 14:57:07 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:32:08 2009 +0200"
      },
      "message": "KVM: Return -ENOTTY on unrecognized ioctls\n\nNot the incorrect -EINVAL.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "680b3648ba89c44ac8d0316f78a0d6e147b88809",
      "tree": "b2b40034c4c33affef8b89822673cca835874651",
      "parents": [
        "eba0226bdfffe262e72b8360e4d0d12070e9a0f0"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Mon Aug 24 11:54:26 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:32:08 2009 +0200"
      },
      "message": "KVM: Drop kvm-\u003eirq_lock lock from irq injection path\n\nThe only thing it protects now is interrupt injection into lapic and\nthis can work lockless. Even now with kvm-\u003eirq_lock in place access\nto lapic is not entirely serialized since vcpu access doesn\u0027t take\nkvm-\u003eirq_lock.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "eba0226bdfffe262e72b8360e4d0d12070e9a0f0",
      "tree": "93da785e3bba63a9232e529a2572541ef87c0615",
      "parents": [
        "280aa177dcd1edc718d8a92f17f235b783ec6307"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Mon Aug 24 11:54:25 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:32:08 2009 +0200"
      },
      "message": "KVM: Move IO APIC to its own lock\n\nThe allows removal of irq_lock from the injection path.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "a1b37100d9e29c1f8dc3e2f5490a205c80180e01",
      "tree": "0e1448e35c8da68b865816a1173540f8e05234e4",
      "parents": [
        "0b71785dc05f1f66e6268022b9953c0d6a9985c6"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Thu Jul 09 15:33:52 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:33:13 2009 +0300"
      },
      "message": "KVM: Reduce runnability interface with arch support code\n\nRemove kvm_cpu_has_interrupt() and kvm_arch_interrupt_allowed() from\ninterface between general code and arch code. kvm_arch_vcpu_runnable()\nchecks for interrupts instead.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "bda9020e2463ec94db9f97e8615f3bae22069838",
      "tree": "48125316d4c0f419a35aefdfbf665d30ad0c55ca",
      "parents": [
        "6c474694530f377507f9aca438c17206e051e6e7"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@redhat.com",
        "time": "Mon Jun 29 22:24:32 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:33:05 2009 +0300"
      },
      "message": "KVM: remove in_range from io devices\n\nThis changes bus accesses to use high-level kvm_io_bus_read/kvm_io_bus_write\nfunctions. in_range now becomes unused so it is removed from device ops in\nfavor of read/write callbacks performing range checks internally.\n\nThis allows aliasing (mostly for in-kernel virtio), as well as better error\nhandling by making it possible to pass errors up to userspace.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "2023a29cbe34139afcea8f65f8aef78c325c5dc0",
      "tree": "142223b88f59710a366321a1b47b54b33ba8e19c",
      "parents": [
        "46f43c6ee022c3aeb9686b104234b9f27fac03c2"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Jun 18 11:47:28 2009 -0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:33:03 2009 +0300"
      },
      "message": "KVM: remove old KVMTRACE support code\n\nReturn EOPNOTSUPP for KVM_TRACE_ENABLE/PAUSE/DISABLE ioctls.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "988a2cae6a3c0dea6df59808a935a9a697bfc28c",
      "tree": "c1118d86c5d6f24fe738c608917b0affb311f26d",
      "parents": [
        "73880c80aa9c8dc353cd0ad26579023213cd5314"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Tue Jun 09 15:56:29 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:52 2009 +0300"
      },
      "message": "KVM: Use macro to iterate over vcpus.\n\n[christian: remove unused variables on s390]\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "73880c80aa9c8dc353cd0ad26579023213cd5314",
      "tree": "d5bee5c87c3468feb941cc898e342f52c0adce19",
      "parents": [
        "1ed0ce000a6c20c36ec649e32fc24393ef418ed8"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Tue Jun 09 15:56:28 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:52 2009 +0300"
      },
      "message": "KVM: Break dependency between vcpu index in vcpus array and vcpu_id.\n\nArchs are free to use vcpu_id as they see fit. For x86 it is used as\nvcpu\u0027s apic id. New ioctl is added to configure boot vcpu id that was\nassumed to be 0 till now.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c5af89b68abb26eea5e745f33228f4d672f115e5",
      "tree": "aad12571ebedea7b869adbeec27e614c498715f4",
      "parents": [
        "d555c333aa544b222fe077adcd5dfea024b2c913"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Tue Jun 09 15:56:26 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:51 2009 +0300"
      },
      "message": "KVM: Introduce kvm_vcpu_is_bsp() function.\n\nUse it instead of open code \"vcpu_id zero is BSP\" assumption.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "fa40a8214bb9bcae8d49c234c19d8b4a6c1f37ff",
      "tree": "6449f27072f128a1c39faaaeef1787f754345aaf",
      "parents": [
        "60eead79ad8750f80384cbe48fc44edcc78a0305"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Jun 04 15:08:24 2009 -0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:49 2009 +0300"
      },
      "message": "KVM: switch irq injection/acking data structures to irq_lock\n\nProtect irq injection/acking data structures with a separate irq_lock\nmutex. This fixes the following deadlock:\n\nCPU A                               CPU B\nkvm_vm_ioctl_deassign_dev_irq()\n  mutex_lock(\u0026kvm-\u003elock);            worker_thread()\n  -\u003e kvm_deassign_irq()                -\u003e kvm_assigned_dev_interrupt_work_handler()\n    -\u003e deassign_host_irq()               mutex_lock(\u0026kvm-\u003elock);\n      -\u003e cancel_work_sync() [blocked]\n\n[gleb: fix ia64 path]\n\nReported-by: Alex Williamson \u003calex.williamson@hp.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3032b925f00ba2653f7695d356d6f8284c82038d",
      "tree": "8f9523d50b3afe8ed3d426964a26dd70e54c2e9a",
      "parents": [
        "c5ff41ce66382d657a76bc06ba252d848826950f"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon May 25 10:22:17 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:42 2009 +0300"
      },
      "message": "KVM: ia64: Correct itc_offset calculations\n\nInit the itc_offset for all possible vCPUs. The current code by\nmistake ends up only initializing the offset on vCPU 0.\n\nSpotted by Gleb Natapov.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "0ba12d10817a8db1fd7d96d3283ec6c0b294aeab",
      "tree": "e99c7e1193c0b939becf39f440f3364ac3753e81",
      "parents": [
        "787ff73637bbf34ef276cb04a127b421de71cc43"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 21 16:45:19 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Sep 10 08:32:41 2009 +0300"
      },
      "message": "KVM: Move common KVM Kconfig items to new file virt/kvm/Kconfig\n\nReduce Kconfig code duplication.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "e9cbde8c158629cc96a26b2323c4a243536c1951",
      "tree": "c2ac5a0876cdba12c73cb4e502b69432ee4f8492",
      "parents": [
        "c428dcc9b9f967945992a2f8529e8c50a31d7913"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Jul 06 12:49:39 2009 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Aug 05 15:04:16 2009 +0300"
      },
      "message": "KVM: ia64: fix build failures due to ia64/unsigned long mismatches\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "58782b34e9ffcc04619634efe9658263344ed188",
      "tree": "929c3d28518f9ab2615343df39d2a3727dc4e988",
      "parents": [
        "2be8412c6cef97b01dfaae71c04bf585d3d93a3b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jun 28 09:26:07 2009 -0700"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Tue Jun 30 14:18:32 2009 -0700"
      },
      "message": "[IA64] Remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "ffdfa071bd6fa8f5e5964569bef41e067540d424",
      "tree": "022f0ecc6cf1654884d647f3039ba9caad29faf2",
      "parents": [
        "84261923d3dddb766736023bead6fa07b7e218d5"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Jun 17 11:08:08 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Jun 28 14:10:30 2009 +0300"
      },
      "message": "KVM: ia64: fix ia64 build due to missing kallsyms_lookup() and double export\n\nFix problem with double export of certain symbols from vsprintf.c\nwhich we do not wish to export from the kvm-intel.ko module.\n\nIn addition, we do not have access to kallsyms_lookup() from the\nmodule, so make sure to #undef CONFIG_KALLSYMS\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "32f8840064d88cc3f6e85203aec7b6b57bebcb97",
      "tree": "29a42942c71e9bdf1f3e71aa1674a29aa13ce320",
      "parents": [
        "d149c731e4f71982247a14409951259f36271dd7"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu May 07 17:55:12 2009 -0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:53 2009 +0300"
      },
      "message": "KVM: use smp_send_reschedule in kvm_vcpu_kick\n\nKVM uses a function call IPI to cause the exit of a guest running on a\nphysical cpu. For virtual interrupt notification there is no need to\nwait on IPI receival, or to execute any function.\n\nThis is exactly what the reschedule IPI does, without the overhead\nof function IPI. So use it instead of smp_call_function_single in\nkvm_vcpu_kick.\n\nAlso change the \"guest_mode\" variable to a bit in vcpu-\u003erequests, and\nuse that to collapse multiple IPI\u0027s that would be issued between the\nfirst one and zeroing of guest mode.\n\nThis allows kvm_vcpu_kick to called with interrupts disabled.\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "43890ae8bcc5fa88ef3061613efe041b866fbc5a",
      "tree": "b1bd435ad9dda722eba682d8fb724c7da84ae20f",
      "parents": [
        "4d13c3b04f14a9a72ffcdd082acc243e7e56b4e0"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Fri Apr 17 16:43:27 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:44 2009 +0300"
      },
      "message": "KVM: ia64: ia64 vcpu_reset() do not call kmalloc() with irqs disabled\n\nRestore local irq enabled state before calling kvm_arch_vcpu_init(),\nwhich calls kmalloc(GFP_KERNEL).\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4d13c3b04f14a9a72ffcdd082acc243e7e56b4e0",
      "tree": "58556c7fdcc858df3db9d5111558d50bb7ec7d5b",
      "parents": [
        "457459c3c738dfb37226ba116ba301140da0d1fb"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Thu Apr 16 16:53:13 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:44 2009 +0300"
      },
      "message": "KVM: ia64: preserve int status through call to kvm_insert_vmm_mapping\n\nPreserve interrupt status around call to kvm_insert_vmm_mappin()\nin kvm_vcpu_pre_transition().\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "457459c3c738dfb37226ba116ba301140da0d1fb",
      "tree": "666b628e63afdf0bce5aabbf8a0cefe5db5332f9",
      "parents": [
        "f9b647adda0e821538b6d80e52873d861ffb1799"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Thu Apr 16 16:08:29 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:44 2009 +0300"
      },
      "message": "KVM: ia64: restore irq state before calling kvm_vcpu_init\n\nMake sure to restore the psr after calling kvm_insert_vmm_mapping()\nwhich calls ia64_itr_entry() as it disables local interrupts and\nkvm_vcpu_init() may sleep.\n\nAvoids a warning from the lock debugging code.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f9b647adda0e821538b6d80e52873d861ffb1799",
      "tree": "19f9aa13828c3fbb4a3ed15978ac2dd53af0baf9",
      "parents": [
        "64f6afbd4c3317eb6845d770aa345afd3f120471"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Thu Apr 16 11:24:58 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:44 2009 +0300"
      },
      "message": "KVM: ia64: remove empty function vti_vcpu_load()\n\nvti_vcpu_load() doesn\u0027t do anything, so lets get rid of it.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang\u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "64f6afbd4c3317eb6845d770aa345afd3f120471",
      "tree": "f7e9829c433397d88c324088a74ea619e7719a41",
      "parents": [
        "59839dfff5eabca01cc4e20b45797a60a80af8cb"
      ],
      "author": {
        "name": "Xiantao Zhang",
        "email": "xiantao.zhang@intel.com",
        "time": "Thu Apr 16 17:59:16 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:43 2009 +0300"
      },
      "message": "KVM: ia64: Flush all TLBs once guest\u0027s memory mapping changes.\n\nFlush all vcpu\u0027s TLB entries once changes guest\u0027s memory mapping.\n\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c6b60c6921381130e5288b19f5fdf81152230b37",
      "tree": "d2d69c726c2acd4ef83dc463adc2379ef896aac4",
      "parents": [
        "463656c0007ddccee78db383eeb9e6eac75ccb7f"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Thu Apr 16 10:43:48 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:43 2009 +0300"
      },
      "message": "KVM: ia64: Don\u0027t hold slots_lock in guest mode\n\nReorder locking to avoid holding the slots_lock when entering\nthe guest.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang\u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "2906e79f21a559e49611e1e188c4993cd45d9ce1",
      "tree": "62f62cd41e8f1aa9eefb7521a17870df3d513a5d",
      "parents": [
        "2d033196541959d91802d5a62e63771448101557"
      ],
      "author": {
        "name": "Zhang, Xiantao",
        "email": "xiantao.zhang@intel.com",
        "time": "Thu Apr 09 21:37:28 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:38 2009 +0300"
      },
      "message": "KVM: ia64: make kvm depend on CONFIG_MODULES.\n\nSince kvm-intel modue can\u0027t be built-in, make kvm depend on\nCONFIG_MODULES.\n\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "362c1055e58ecd25a9393c520ab263c80b147497",
      "tree": "76fe99925f7ce1e9bf14733658ea51b4dd025703",
      "parents": [
        "a8b876b1a469cb364fee16ba3aef01613a1231cc"
      ],
      "author": {
        "name": "Yang Zhang",
        "email": "yang.zhang@intel.com",
        "time": "Mon Mar 23 03:31:04 2009 -0400"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:34 2009 +0300"
      },
      "message": "KVM: ia64: enable external interrupt in vmm\n\nCurrently, the interrupt enable bit is cleared when in\nthe vmm.  This patch sets the bit and the external interrupts can\nbe dealt with when in the vmm.  This improves the I/O performance.\n\nSigned-off-by: Yang Zhang \u003cyang.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "78646121e9a2fcf7977cc15966420e572a450bc3",
      "tree": "55aeac260f4a43bef8e1bc1147f93a3f7e867ec7",
      "parents": [
        "09cec754885f900f6aab23801878c0cd217ee1d6"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Mon Mar 23 12:12:11 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:33 2009 +0300"
      },
      "message": "KVM: Fix interrupt unhalting a vcpu when it shouldn\u0027t\n\nkvm_vcpu_block() unhalts vpu on an interrupt/timer without checking\nif interrupt window is actually opened.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "09cec754885f900f6aab23801878c0cd217ee1d6",
      "tree": "3f634b6993af33914b031421e23db67744b84a9f",
      "parents": [
        "089d034e0c4538d2436512fa64782b91008d4a7c"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Mon Mar 23 15:11:44 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:33 2009 +0300"
      },
      "message": "KVM: Timer event should not unconditionally unhalt vcpu.\n\nCurrently timer events are processed before entering guest mode. Move it\nto main vcpu event loop since timer events should be processed even while\nvcpu is halted.  Timer may cause interrupt/nmi to be injected and only then\nvcpu will be unhalted.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "0b5d7a2ccb98f0403b1969295429724af9dc9d8e",
      "tree": "56108639641d6634df4a1de4e3ef4d4b9589a26b",
      "parents": [
        "ce17c643738bebcacf8d19d8cab7dd3eb96f9f32"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Feb 25 10:38:55 2009 -0600"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:29 2009 +0300"
      },
      "message": "KVM: ia64: Drop in SN2 replacement of fast path ITC emulation fault handler\n\nCopy in SN2 RTC based ITC emulation for fast exit. The two versions\nhave the same size, so a dropin is simpler than patching the branch\ninstruction to hit the SN2 version.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "ce17c643738bebcacf8d19d8cab7dd3eb96f9f32",
      "tree": "a214837252c040ac265d6af58b322414e491063e",
      "parents": [
        "c6c9fcdf0fff7da77c088be11e3c4d0181b36941"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Feb 25 10:38:54 2009 -0600"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:29 2009 +0300"
      },
      "message": "KVM: ia64: SN2 adjust emulated ITC frequency to match RTC frequency\n\nOn SN2 do not pass down the real ITC frequency, but rather patch the\nvalues to match the SN2 RTC frequency.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c6c9fcdf0fff7da77c088be11e3c4d0181b36941",
      "tree": "2de6d8ecc5e58a3d3b744defa741faf191144d0b",
      "parents": [
        "0c72ea7fb8a39b4bba071b19f5f835af5b5e538a"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Feb 25 10:38:53 2009 -0600"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:28 2009 +0300"
      },
      "message": "KVM: ia64: Create inline function kvm_get_itc() to centralize ITC reading.\n\nMove all reading of special register \u0027AR_ITC\u0027 into two functions, one\nin the kernel and one in the VMM module. When running on SN2, base the\nresult on the RTC rather the system ITC, as the ITC isn\u0027t\nsynchronized.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "0c72ea7fb8a39b4bba071b19f5f835af5b5e538a",
      "tree": "cd5749eb3952233180b7a263da9278e6d76f2669",
      "parents": [
        "58c2dde17d6eb6c8c0566e52d184aa16755d890f"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Feb 25 10:38:52 2009 -0600"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:28 2009 +0300"
      },
      "message": "KVM: ia64: Map in SN2 RTC registers to the VMM module\n\nOn SN2, map in the SN2 RTC registers to the VMM module, needed for ITC\nemulation.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "58c2dde17d6eb6c8c0566e52d184aa16755d890f",
      "tree": "a968731cbce73932decd63e00be313cebfd2f57f",
      "parents": [
        "e1035715ef8d3171e29f9c6aee6f40d57b3fead5"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Thu Mar 05 16:35:04 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:27 2009 +0300"
      },
      "message": "KVM: APIC: get rid of deliver_bitmask\n\nDeliver interrupt during destination matching loop.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "e1035715ef8d3171e29f9c6aee6f40d57b3fead5",
      "tree": "1ead65420a4d1653692d0e4b66a4e4f7fcbef425",
      "parents": [
        "343f94fe4d16ec898da77720c03da9e09f8523d2"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Thu Mar 05 16:34:59 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:27 2009 +0300"
      },
      "message": "KVM: change the way how lowest priority vcpu is calculated\n\nThe new way does not require additional loop over vcpus to calculate\nthe one with lowest priority as one is chosen during delivery bitmap\nconstruction.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "343f94fe4d16ec898da77720c03da9e09f8523d2",
      "tree": "fa0180a8446a90000086593b9fa8d4d81708ddd8",
      "parents": [
        "a53c17d21c46a752f5ac6695376481bc27865b04"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Thu Mar 05 16:34:54 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:27 2009 +0300"
      },
      "message": "KVM: consolidate ioapic/ipi interrupt delivery logic\n\nUse kvm_apic_match_dest() in kvm_get_intr_delivery_bitmask() instead\nof duplicating the same code. Use kvm_get_intr_delivery_bitmask() in\napic_send_ipi() to figure out ipi destination instead of reimplementing\nthe logic.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "6da7e3f643cf7099965d75fda8606b9d3a8650b9",
      "tree": "af1ae2e8e3cca59c127d252b3f84efda1dfadc5d",
      "parents": [
        "f5a1e9f89504f57b2b45645a7239dc8a8ddb0f4c"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Thu Mar 05 16:34:44 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:26 2009 +0300"
      },
      "message": "KVM: APIC: kvm_apic_set_irq deliver all kinds of interrupts\n\nGet rid of ioapic_inj_irq() and ioapic_inj_nmi() functions.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "3f5e06f8799adca3e7e1bbafe1cd780a3e69f604",
      "tree": "0bd29117fa68cf076625f7d7b8fad1cb0a171319",
      "parents": [
        "d3c7b77d1a6e7a0a27035a7ba723a3455317883e"
      ],
      "author": {
        "name": "Yang Zhang",
        "email": "yang.zhang@intel.com",
        "time": "Mon Mar 02 22:06:41 2009 -0500"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Jun 10 11:48:25 2009 +0300"
      },
      "message": "KVM: ia64: fix compilation error in kvm_get_lowest_prio_vcpu\n\nModify the arg of kvm_get_lowest_prio_vcpu().\nMake it consistent with its declaration.\n\nSigned-off-by: Yang Zhang \u003cyang.zhang@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "d24d2c1cc4156102f9df9cd0425d58cabf955519",
      "tree": "8d487aa14b570e7d7fcebb566ab785850d28dd4b",
      "parents": [
        "99894a799f09cf9e28296bb16e75bd5830fd2c4e"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Thu Apr 09 16:38:14 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Wed Apr 22 13:52:09 2009 +0300"
      },
      "message": "KVM: ia64: fix locking order entering guest\n\nReorder locking as down_read() may return with local interrupts enabled,\nwhich means we could go into vti_vcpu_run() with interrupts enabled.\n\nThis caused random crashes on the Altix as the timer interrupt tried\nto read a memory mapped clock source, for which the TLB had not yet been\nreinstated in the exit, before ipsr was retored.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c66b31f3926165bc1d4128adc97a064dcbab421a",
      "tree": "13be75d33bd2b9d4ec45ec512ac38a2e7069062e",
      "parents": [
        "50fbe56c127efde659c686495eb1f925fd84ff0a",
        "7120569c76028a6883697b7643564f0c419cfe07"
      ],
      "author": {
        "name": "Tony Luck",
        "email": "aegl@agluck-desktop.(none)",
        "time": "Tue Mar 31 14:25:08 2009 -0700"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Tue Mar 31 14:25:08 2009 -0700"
      },
      "message": "Pull pvops into release branch\n"
    },
    {
      "commit": "7120569c76028a6883697b7643564f0c419cfe07",
      "tree": "625bb217be00a2673b6f210a34352fdc3ddecc69",
      "parents": [
        "b46a0b08b8bdf6467cd2b49f520e100c72885302"
      ],
      "author": {
        "name": "Isaku Yamahata",
        "email": "yamahata@valinux.co.jp",
        "time": "Fri Mar 27 15:11:57 2009 +0900"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Fri Mar 27 11:11:04 2009 -0700"
      },
      "message": "ia64: remove some warnings.\n\nThis patch removes the following warnings and related ones.\nPlus some cosmetics.\n\narch/ia64/kernel/patch.c:112: warning: passing argument 1 of \u0027paravirt_fc\u0027 makes integer from pointer without a cast\narch/ia64/kernel/patch.c:135: warning: passing argument 1 of \u0027paravirt_fc\u0027 makes integer from pointer without a cast\narch/ia64/kernel/patch.c:166: warning: passing argument 1 of \u0027paravirt_fc\u0027 makes integer from pointer without a cast\narch/ia64/kernel/patch.c:202: warning: passing argument 1 of \u0027paravirt_fc\u0027 makes integer from pointer without a cast\narch/ia64/kernel/patch.c:220: warning: passing argument 1 of \u0027paravirt_fc\u0027 makes integer from pointer without a cast\n\nSigned-off-by: Isaku Yamahata \u003cyamahata@valinux.co.jp\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "dae17da60d1797c9049d21d06de0db1873eee153",
      "tree": "f052470a85d99d9e2f64911512f43616552540bd",
      "parents": [
        "ee158fcd095c8233c9b578fbbe8a5897979a52a9"
      ],
      "author": {
        "name": "Isaku Yamahata",
        "email": "yamahata@valinux.co.jp",
        "time": "Wed Mar 04 21:06:54 2009 +0900"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Thu Mar 26 11:02:59 2009 -0700"
      },
      "message": "ia64/pv_ops/binary patch: define paravirt_dv_serialize_data() and suppress false positive warning.\n\ndefine paravirt_dv_serialize_data() and insert it to suppress\nfalse positive warnings.\n\nSigned-off-by: Isaku Yamahata \u003cyamahata@valinux.co.jp\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "6b08035f3e64d8e474be166d682b52c95941662e",
      "tree": "b8e3f1be6706631fa713ca94799a056afeef8381",
      "parents": [
        "2fa8937f3af8873e006ce324e7b2d3f9b2077b87"
      ],
      "author": {
        "name": "Xiantao Zhang",
        "email": "xiantao.zhang@intel.com",
        "time": "Mon Feb 16 15:24:05 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Mar 24 11:03:13 2009 +0200"
      },
      "message": "KVM: ia64: Fix the build errors due to lack of macros related to MSI.\n\nInclude the newly introduced msidef.h to solve the build issues.\n\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4925663a079c77d95d8685228ad6675fc5639c8e",
      "tree": "52e93df78b23a44ed21d015f835688f673dd351a",
      "parents": [
        "452425dbaa1974e9fc489e64a8de46a47b4c2754"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Feb 04 17:28:14 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Mar 24 11:03:11 2009 +0200"
      },
      "message": "KVM: Report IRQ injection status to userspace.\n\nIRQ injection status is either -1 (if there was no CPU found\nthat should except the interrupt because IRQ was masked or\nioapic was misconfigured or ...) or \u003e\u003d 0 in that case the\nnumber indicates to how many CPUs interrupt was injected.\nIf the value is 0 it means that the interrupt was coalesced\nand probably should be reinjected.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "934d534f8a5a39e20d5682b3a3a45ff351706b59",
      "tree": "f1e6ce5330028a9aa942623c6706af8ca2ce2130",
      "parents": [
        "b7e6e4d3602c738b8f61225d9f4514945df52f07"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Jan 21 15:16:43 2009 +0100"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Mar 24 11:03:07 2009 +0200"
      },
      "message": "KVM: ia64: dynamic nr online cpus\n\nAccount for number of online cpus and use that in loops iterating over\nthe list of vpus instead of scanning the full array unconditionally.\nThis patch is a building block to facilitate allowing to bump up\nthe size of MAX_VCPUS significantly.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nAcked-by : Xiantao Zhang  \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "7d656bd996b68737d5d07643bc57311059038d67",
      "tree": "674c9d3910547c1185785a7c827e54e2425f9fd8",
      "parents": [
        "4b7bb626e3133eab131328a0770864b322c1bfe6"
      ],
      "author": {
        "name": "Xiantao Zhang",
        "email": "xiantao.zhang@intel.com",
        "time": "Wed Jan 21 11:21:27 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Mar 24 11:03:06 2009 +0200"
      },
      "message": "KVM: ia64: Implement some pal calls needed for windows 2008\n\nFor windows 2008, it needs more pal calls to implement for booting.\nIn addition, also changes the name of set_{sal, pal}_call_result to\nget_{sal,pal}_call_result for readability.\n\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4b7bb626e3133eab131328a0770864b322c1bfe6",
      "tree": "b237e9f83b8f4c01edd4b7e8a3a416859d555c2c",
      "parents": [
        "27d146449ccaad16480888129bb32a000ee33717"
      ],
      "author": {
        "name": "Xiantao Zhang",
        "email": "xiantao.zhang@intel.com",
        "time": "Thu Jan 15 18:08:36 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Mar 24 11:03:06 2009 +0200"
      },
      "message": "KVM: ia64: Add the support for translating PAL Call\u0027s pointer args\n\nAdd the support to translate PAL Call\u0027s pointer args.\n\nSigned-off-by: Xiantao Zhang \u003cxiantao.zhang@intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    }
  ],
  "next": "27d146449ccaad16480888129bb32a000ee33717"
}
