)]}'
{
  "log": [
    {
      "commit": "3bd89007ab4243b36bc30f5fc4aa8b4f75ff8fc2",
      "tree": "767e81b4cbb763a4477e26ef331ffe4e3ffaeaba",
      "parents": [
        "4bc9b9828150747386130ab172f7e868e1a0fc2a"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Jun 02 17:01:23 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:25 2010 +0300"
      },
      "message": "KVM: cleanup \"*new.rmap\" type\n\nThe type of \u0027*new.rmap\u0027 is not \u0027struct page *\u0027, fix it\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "4bc9b9828150747386130ab172f7e868e1a0fc2a",
      "tree": "1d0bdff256c67255fa4e80c29e8c001e434f3ad9",
      "parents": [
        "d2d7a61127ced8ce9ec7666991aad1d846932212"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Wed Jun 02 14:05:24 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:25 2010 +0300"
      },
      "message": "KVM: VMX: Enforce EPT pagetable level checking\n\nWe only support 4 levels EPT pagetable now.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "d2d7a61127ced8ce9ec7666991aad1d846932212",
      "tree": "80d51b62b12798e5e98d9ba9f67d7f592ddbd655",
      "parents": [
        "49f6be8ea1bd74713c1a48e42db06a3808dfa2cd"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@redhat.com",
        "time": "Tue Jun 01 08:22:48 2010 -0400"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:24 2010 +0300"
      },
      "message": "KVM: Add Documentation/kvm/msr.txt\n\nThis patch adds a file that documents the usage of KVM-specific\nMSRs.\n\nSigned-off-by: Glauber Costa \u003cglommer@redhat.com\u003e\nReviewed-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "49f6be8ea1bd74713c1a48e42db06a3808dfa2cd",
      "tree": "5be35ebab7a049e9358a60b308df981b02f70f21",
      "parents": [
        "5120702e732ed72c7055f511f8dd01de36424569"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@linux-m68k.org",
        "time": "Mon May 31 21:59:13 2010 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:24 2010 +0300"
      },
      "message": "KVM: PPC: elide struct thread_struct instances from stack\n\nInstead of instantiating a whole thread_struct on the stack use only the\nrequired parts of it.\n\nSigned-off-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nTested-by: Alexander Graf \u003cagraf@suse.de\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "5120702e732ed72c7055f511f8dd01de36424569",
      "tree": "0294b9e9c71a504d30e50e539e9bb1661e7ac762",
      "parents": [
        "b66d80006e415ee083e59c9429911eab78047f8f"
      ],
      "author": {
        "name": "Mohammed Gamal",
        "email": "m.gamal005@gmail.com",
        "time": "Mon May 31 22:40:54 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:24 2010 +0300"
      },
      "message": "KVM: VMX: Properly return error to userspace on vmentry failure\n\nThe vmexit handler returns KVM_EXIT_UNKNOWN since there is no handler\nfor vmentry failures. This intercepts vmentry failures and returns\nKVM_FAIL_ENTRY to userspace instead.\n\nSigned-off-by: Mohammed Gamal \u003cm.gamal005@gmail.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "b66d80006e415ee083e59c9429911eab78047f8f",
      "tree": "0b8ab6cd2f728ab21e05361ce7ff5f1a3c0d3056",
      "parents": [
        "316b95216e277cdb22bd65346f9b9d9e10d0f53d"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Mon May 31 17:11:39 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:24 2010 +0300"
      },
      "message": "KVM: MMU: Don\u0027t calculate quadrant if tdp_enabled\n\nThere\u0027s no need to calculate quadrant if tdp is enabled.\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "316b95216e277cdb22bd65346f9b9d9e10d0f53d",
      "tree": "5bd4d6bdd07aa8520c2a6998f0bc1764f97d0d57",
      "parents": [
        "ec87fe2afcbcc4f430554980ec3e408bae34229d"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 27 16:44:12 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:23 2010 +0300"
      },
      "message": "KVM: MMU: Document large pages\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "ec87fe2afcbcc4f430554980ec3e408bae34229d",
      "tree": "17f5574d13dbd24b75d515d77bd0bf26373e0dab",
      "parents": [
        "8184dd38e22fcaec664c2b98c382b85c26780e26"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 27 14:46:04 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:23 2010 +0300"
      },
      "message": "KVM: MMU: Document cr0.wp emulation\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "8184dd38e22fcaec664c2b98c382b85c26780e26",
      "tree": "cf8c6dd4e1e2a2d04cb4d0dfee3b46b9c258937d",
      "parents": [
        "10ab25cd6bf7ee4e5a55d81f203f7dc1a855c27e"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 27 14:22:51 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:23 2010 +0300"
      },
      "message": "KVM: MMU: Allow spte.w\u003d1 for gpte.w\u003d0 and cr0.wp\u003d0 only in shadow mode\n\nWhen tdp is enabled, the guest\u0027s cr0.wp shouldn\u0027t have any effect on spte\npermissions.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "10ab25cd6bf7ee4e5a55d81f203f7dc1a855c27e",
      "tree": "89b1f58c09a102f1aa5c9b549c13e1f9a0a3ee3d",
      "parents": [
        "6dc696d4ddf2181eefee361e1d24a49351aef1f6"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Tue May 25 16:01:50 2010 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:22 2010 +0300"
      },
      "message": "KVM: x86: Propagate fpu_alloc errors\n\nMemory allocation may fail. Propagate such errors.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nReviewed-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "6dc696d4ddf2181eefee361e1d24a49351aef1f6",
      "tree": "03836aecacdb1fb054cffdf51534368521cd566d",
      "parents": [
        "01c168ac3d6568fed0373d82bd2db2b9339aab16"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zamsden@redhat.com",
        "time": "Wed May 26 15:09:43 2010 -1000"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:22 2010 +0300"
      },
      "message": "KVM: SVM: Fix EFER.LME being stripped\n\nMust set VCPU register to be the guest notion of EFER even if that\nsetting is not valid on hardware.  This was masked by the set in\nset_efer until 7657fd5ace88e8092f5f3a84117e093d7b893f26 broke that.\nFix is simply to set the VCPU register before stripping bits.\n\nSigned-off-by: Zachary Amsden \u003czamsden@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "01c168ac3d6568fed0373d82bd2db2b9339aab16",
      "tree": "62f6f7374b2952bb00d845affeff7aafa727510d",
      "parents": [
        "3af1817a0d65e8c1317e8d23cfe8a91aa1d4a065"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Thu May 27 16:09:48 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:22 2010 +0300"
      },
      "message": "KVM: MMU: don\u0027t check PT_WRITABLE_MASK directly\n\nSince we have is_writable_pte(), make use of it.\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3af1817a0d65e8c1317e8d23cfe8a91aa1d4a065",
      "tree": "faa0f198bebd3496b27b091d0c6d59ba77f9306e",
      "parents": [
        "c9fa0b3bef9a0b117b3c3f958ec553c21f609a9f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed May 26 16:48:19 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:39:21 2010 +0300"
      },
      "message": "KVM: MMU: calculate correct gfn for small host pages backing large guest pages\n\nIn Documentation/kvm/mmu.txt:\n  gfn:\n    Either the guest page table containing the translations shadowed by this\n    page, or the base page frame for linear translations. See role.direct.\n\nBut in function FNAME(fetch)(), sp-\u003egfn is incorrect when one of following\nsituations occurred:\n\n 1) guest is 32bit paging and the guest PDE maps a 4-MByte page\n    (backed by 4k host pages), FNAME(fetch)() miss handling the quadrant.\n\n    And if guest use pse-36, \"table_gfn \u003d gpte_to_gfn(gw-\u003eptes[level - delta]);\"\n    is incorrect.\n\n 2) guest is long mode paging and the guest PDPTE maps a 1-GByte page\n    (backed by 4k or 2M host pages).\n\nSo we fix it to suit to the document and suit to the code which\nrequires sp-\u003egfn correct when sp-\u003erole.direct\u003d1.\n\nWe use the goal mapping gfn(gw-\u003egfn) to calculate the base page frame\nfor linear translations, it is simple and easy to be understood.\n\nReported-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nReported-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c9fa0b3bef9a0b117b3c3f958ec553c21f609a9f",
      "tree": "072850f275f2091c4104960275dc66332bd8e113",
      "parents": [
        "2032a93d66fa282ba0f2ea9152eeff9511fa9a96"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed May 26 16:48:25 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:53 2010 +0300"
      },
      "message": "KVM: MMU: Calculate correct base gfn for direct non-DIR level\n\nIn Document/kvm/mmu.txt:\n  gfn:\n    Either the guest page table containing the translations shadowed by this\n    page, or the base page frame for linear translations. See role.direct.\n\nBut in __direct_map(), the base gfn calculation is incorrect,\nit does not calculate correctly when level\u003d3 or 4.\n\nFix by using PT64_LVL_ADDR_MASK() which accounts for all levels correctly.\n\nReported-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "2032a93d66fa282ba0f2ea9152eeff9511fa9a96",
      "tree": "f0bbd50c3f237fa93c87207dc29602cbdcf9ad63",
      "parents": [
        "c8174f7b35b3018c4c7b3237ed1c792e454fd5c3"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed May 26 16:49:59 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:52 2010 +0300"
      },
      "message": "KVM: MMU: Don\u0027t allocate gfns page for direct mmu pages\n\nWhen sp-\u003erole.direct is set, sp-\u003egfns does not contain any essential\ninformation, leaf sptes reachable from this sp are for a continuous\nguest physical memory range (a linear range).\nSo sp-\u003egfns[i] (if it was set) equals to sp-\u003egfn + i. (PT_PAGE_TABLE_LEVEL)\nObviously, it is not essential information, we can calculate it when need.\n\nIt means we don\u0027t need sp-\u003egfns when sp-\u003erole.direct\u003d1,\nThus we can save one page usage for every kvm_mmu_page.\n\nNote:\n  Access to sp-\u003egfns must be wrapped by kvm_mmu_page_get_gfn()\n  or kvm_mmu_page_set_gfn().\n  It is only exposed in FNAME(sync_page).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c8174f7b35b3018c4c7b3237ed1c792e454fd5c3",
      "tree": "a1157eee6d93f7a18af047f8a2d3529f64c617bb",
      "parents": [
        "9f1a122f970dbef5ba3496587f39df5c1853083f"
      ],
      "author": {
        "name": "Mohammed Gamal",
        "email": "m.gamal005@gmail.com",
        "time": "Mon May 24 01:01:04 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:52 2010 +0300"
      },
      "message": "KVM: VMX: Add constant for invalid guest state exit reason\n\nFor the sake of completeness, this patch adds a symbolic\nconstant for VMX exit reason 0x21 (invalid guest state).\n\nSigned-off-by: Mohammed Gamal \u003cm.gamal005@gmail.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "9f1a122f970dbef5ba3496587f39df5c1853083f",
      "tree": "243f14f5f1d85a6902ac5ca25b6b3ff1aa6a520c",
      "parents": [
        "9cf5cf5ad43b293581e5b87678ea5783c06d1a41"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon May 24 15:41:33 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:52 2010 +0300"
      },
      "message": "KVM: MMU: allow more page become unsync at getting sp time\n\nAllow more page become asynchronous at getting sp time, if need create new\nshadow page for gfn but it not allow unsync(level \u003e 1), we should unsync all\ngfn\u0027s unsync page\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "9cf5cf5ad43b293581e5b87678ea5783c06d1a41",
      "tree": "be4a4ad779ff4330e016eb390653e526d90a17db",
      "parents": [
        "221d059d15f1c8bd070a63fd45cd8d2598af5f99"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon May 24 15:40:07 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:51 2010 +0300"
      },
      "message": "KVM: MMU: allow more page become unsync at gfn mapping time\n\nIn current code, shadow page can become asynchronous only if one\nshadow page for a gfn, this rule is too strict, in fact, we can\nlet all last mapping page(i.e, it\u0027s the pte page) become unsync,\nand sync them at invlpg or flush tlb time.\n\nThis patch allow more page become asynchronous at gfn mapping time\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "221d059d15f1c8bd070a63fd45cd8d2598af5f99",
      "tree": "d3f58d21aa9cd5a28a29f5187ae9f03bd4f9e089",
      "parents": [
        "9fb2d2b4ff292a01ae30da003d1dc097917b0988"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun May 23 18:37:00 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:51 2010 +0300"
      },
      "message": "KVM: Update Red Hat copyrights\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "9fb2d2b4ff292a01ae30da003d1dc097917b0988",
      "tree": "bcbbf1f07edfc1f31168801b9e1be0b5d7184597",
      "parents": [
        "f78978aa3a8222f7822f15fba5dbaea990ef0887"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Sun May 23 14:28:26 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:51 2010 +0300"
      },
      "message": "KVM: SVM: correctly trace irq injection\n\nOn SVM interrupts are injected by svm_set_irq() not svm_inject_irq().\nThe later is used only to wait for irq window.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f78978aa3a8222f7822f15fba5dbaea990ef0887",
      "tree": "b961f86576c2bfd58d546c44efa193bc9db449c6",
      "parents": [
        "e02aa901b1aa41fb541521800cc2a4774c162485"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Sat May 15 18:53:35 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:50 2010 +0300"
      },
      "message": "KVM: MMU: only update unsync page in invlpg path\n\nOnly unsync pages need updated at invlpg time since other shadow\npages are write-protected\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "e02aa901b1aa41fb541521800cc2a4774c162485",
      "tree": "c2b19ce292c996b25166a9a123ae848f7dfcd8e4",
      "parents": [
        "1d9dc7e000915b9607b480e34fcb4238b789fbb1"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Sat May 15 18:52:34 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:50 2010 +0300"
      },
      "message": "KVM: MMU: don\u0027t write-protect if have new mapping to unsync page\n\nTwo cases maybe happen in kvm_mmu_get_page() function:\n\n- one case is, the goal sp is already in cache, if the sp is unsync,\n  we only need update it to assure this mapping is valid, but not\n  mark it sync and not write-protect sp-\u003egfn since it not broke unsync\n  rule(one shadow page for a gfn)\n\n- another case is, the goal sp not existed, we need create a new sp\n  for gfn, i.e, gfn (may)has another shadow page, to keep unsync rule,\n  we should sync(mark sync and write-protect) gfn\u0027s unsync shadow page.\n  After enabling multiple unsync shadows, we sync those shadow pages\n  only when the new sp not allow to become unsync(also for the unsyc\n  rule, the new rule is: allow all pte page become unsync)\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "1d9dc7e000915b9607b480e34fcb4238b789fbb1",
      "tree": "bb90f755e648b97a69b10348e5ed2c65822d9c59",
      "parents": [
        "98918833a3e21ffc5619535955e7a003cb788163"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Sat May 15 18:51:24 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:49 2010 +0300"
      },
      "message": "KVM: MMU: split kvm_sync_page() function\n\nSplit kvm_sync_page() into kvm_sync_page() and kvm_sync_page_transient()\nto clarify the code address Avi\u0027s suggestion\n\nkvm_sync_page_transient() function only update shadow page but not mark\nit sync and not write protect sp-\u003egfn. it will be used by later patch\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "98918833a3e21ffc5619535955e7a003cb788163",
      "tree": "7b073bb8888927391b11810e104d2cd4a694f86e",
      "parents": [
        "7cf30855e02be7a207ffebb8b9350986f2ba83e9"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Mon May 17 17:08:28 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:49 2010 +0300"
      },
      "message": "KVM: x86: Use FPU API\n\nConvert KVM to use generic FPU API.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "7cf30855e02be7a207ffebb8b9350986f2ba83e9",
      "tree": "114f0f2dfbe425bfb7736ebbeb1655c23d636db4",
      "parents": [
        "5ee481da7b62a992b91f958bf26aaaa92354c170"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Mon May 17 17:08:27 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:48 2010 +0300"
      },
      "message": "KVM: x86: Use unlazy_fpu() for host FPU\n\nWe can avoid unnecessary fpu load when userspace process\ndidn\u0027t use FPU frequently.\n\nDerived from Avi\u0027s idea.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "5ee481da7b62a992b91f958bf26aaaa92354c170",
      "tree": "ce62d6a6618d686ee793c5ea9a64e755300144e0",
      "parents": [
        "93736624635235cc5372ffca6d62816d02170724"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Mon May 17 17:22:23 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:48 2010 +0300"
      },
      "message": "x86: Export FPU API for KVM use\n\nAlso add some constants.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "93736624635235cc5372ffca6d62816d02170724",
      "tree": "801205636b4d6da4127a6d33873902d690431f52",
      "parents": [
        "19483d144023f7f4817dedafe26d5fe9ff2e7087"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 13 12:35:17 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:48 2010 +0300"
      },
      "message": "KVM: Consolidate arch specific vcpu ioctl locking\n\nNow that all arch specific ioctls have centralized locking, it is easy to\nmove it to the central dispatcher.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "19483d144023f7f4817dedafe26d5fe9ff2e7087",
      "tree": "5d0979cc9668a2554be05a399a94ff01c597afca",
      "parents": [
        "bc923cc93b7719576f20687e4cb07751601fbbb3"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 13 12:30:43 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:48 2010 +0300"
      },
      "message": "KVM: PPC: Centralize locking of arch specific vcpu ioctls\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "bc923cc93b7719576f20687e4cb07751601fbbb3",
      "tree": "cc0ac66996c852bf1fb767fd980b30e63c2e05c8",
      "parents": [
        "526b78ad1a9e66ef240ad7c757988de039e42229"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 13 12:21:46 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:47 2010 +0300"
      },
      "message": "KVM: s390: Centrally lock arch specific vcpu ioctls\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "526b78ad1a9e66ef240ad7c757988de039e42229",
      "tree": "00e68ab9dd880a3e994d555b8f4aa70c43f4bb8d",
      "parents": [
        "2122ff5eab8faec853e43f6de886e8dc8f31e317"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu May 13 11:53:06 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:47 2010 +0300"
      },
      "message": "KVM: x86: Lock arch specific vcpu ioctls centrally\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": "1683b2416e4c514d30ff5844a06733d0444ee000",
      "tree": "d780b3690ee018e2c31a5dbea4c98fd26e4d61f0",
      "parents": [
        "f55c3f419ab1f0a9d66f44ceeefe752975ae4233"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu May 13 10:09:57 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:46 2010 +0300"
      },
      "message": "KVM: x86: cleanup unused local variable\n\nfix:\n arch/x86/kvm/x86.c: In function ‘handle_emulation_failure’:\n arch/x86/kvm/x86.c:3844: warning: unused variable ‘ctxt’\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "f55c3f419ab1f0a9d66f44ceeefe752975ae4233",
      "tree": "9553bcf0c3af3ceac9bf6ce6c28ee0fdac28f525",
      "parents": [
        "6d74229f013ed8e4a00d74cfa7a3fa6a2315c467"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu May 13 10:08:08 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:46 2010 +0300"
      },
      "message": "KVM: MMU: unalias gfn before sp-\u003egfns[] comparison in sync_page\n\nsp-\u003egfns[] contain unaliased gfns, but gpte might contain pointer\nto aliased region.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "6d74229f013ed8e4a00d74cfa7a3fa6a2315c467",
      "tree": "416b2a3f261a90b6bc0d3f19c10b31b5f14963c8",
      "parents": [
        "e8ad9a707496c163312bcdd6aa3b90603d45dc9b"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu May 13 10:07:00 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:46 2010 +0300"
      },
      "message": "KVM: MMU: remove rmap before clear spte\n\nRemove rmap before clear spte otherwise it will trigger BUG_ON() in\nsome functions such as rmap_write_protect().\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "e8ad9a707496c163312bcdd6aa3b90603d45dc9b",
      "tree": "ef153fdb9a441e2d9a21115e7a00684a702b6806",
      "parents": [
        "48bb09eee4e102544808c00f43bc40a4a2e43e50"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu May 13 10:06:02 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:46 2010 +0300"
      },
      "message": "KVM: MMU: use proper cache object freeing function\n\nUse kmem_cache_free to free objects allocated by kmem_cache_alloc.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "48bb09eee4e102544808c00f43bc40a4a2e43e50",
      "tree": "8b3124aea0f596062816f4b5b4274685020f956d",
      "parents": [
        "aad827034e419fa8c5ec39e6455266f0b942d856"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@redhat.com",
        "time": "Wed May 12 09:46:31 2010 -0400"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:45 2010 +0300"
      },
      "message": "KVM: remove CAP_SYS_RAWIO requirement from kvm_vm_ioctl_assign_irq\n\nRemove this check in an effort to allow kvm guests to run without\nroot privileges.  This capability check doesn\u0027t seem to add any\nsecurity since the device needs to have already been added via the\nassign device ioctl and the io actually occurs through the pci\nsysfs interface.\n\nSigned-off-by: Alex Williamson \u003calex.williamson@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "aad827034e419fa8c5ec39e6455266f0b942d856",
      "tree": "c49cbdc633b0146c9af9fdf5036dfdb09a008d97",
      "parents": [
        "62ad07551a2ace89e35604d1c55fdae1dd3359a8"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Wed May 12 16:40:42 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:45 2010 +0300"
      },
      "message": "KVM: VMX: Only reset MMU when necessary\n\nOnly modifying some bits of CR0/CR4 needs paging mode switch.\n\nModify EFER.NXE bit would result in reserved bit updates.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "62ad07551a2ace89e35604d1c55fdae1dd3359a8",
      "tree": "fa62d906a519406340b93f692f503655b2602b1c",
      "parents": [
        "222b7c52c33bdef721248bfeba992af495800d30"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Wed May 12 16:40:41 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:44 2010 +0300"
      },
      "message": "KVM: x86: Clean up duplicate assignment\n\nmmu.free() already set root_hpa to INVALID_PAGE, no need to do it again in the\ndestory_kvm_mmu().\n\nkvm_x86_ops-\u003eset_cr4() and set_efer() already assign cr4/efer to\nvcpu-\u003earch.cr4/efer, no need to do it again later.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "222b7c52c33bdef721248bfeba992af495800d30",
      "tree": "edf87285cc0619e0569b30d3a2d3aecc4c609e32",
      "parents": [
        "abc190830f28a5bb678eaccb633de02ed2967d55"
      ],
      "author": {
        "name": "Mohammed Gamal",
        "email": "m.gamal005@gmail.com",
        "time": "Wed May 12 01:39:22 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:44 2010 +0300"
      },
      "message": "KVM: x86 emulator: Add missing decoder flags for xor instructions\n\nThis adds missing decoder flags for xor instructions (opcodes 0x34 - 0x35)\n\nSigned-off-by: Mohammed Gamal \u003cm.gamal005@gmail.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "abc190830f28a5bb678eaccb633de02ed2967d55",
      "tree": "80922835bb6e9f72ab0a56eb93a30771428aa33d",
      "parents": [
        "dfb507c41d0d12fc69820abb7f040d31fcf015fe"
      ],
      "author": {
        "name": "Mohammed Gamal",
        "email": "m.gamal005@gmail.com",
        "time": "Wed May 12 01:39:21 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:44 2010 +0300"
      },
      "message": "KVM: x86 emulator: Add missing decoder flags for sub instruction\n\nThis adds missing decoder flags for sub instructions (opcodes 0x2c - 0x2d)\n\nSigned-off-by: Mohammed Gamal \u003cm.gamal005@gmail.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "dfb507c41d0d12fc69820abb7f040d31fcf015fe",
      "tree": "d1340e151a7c3c9e783ffd59afe8e07971a94a94",
      "parents": [
        "24955b6c906045382b67f3e6beba7e5df4a4a045"
      ],
      "author": {
        "name": "Mohammed Gamal",
        "email": "m.gamal005@gmail.com",
        "time": "Tue May 11 22:22:40 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:43 2010 +0300"
      },
      "message": "KVM: x86 emulator: Add test acc, imm instruction (opcodes 0xA8 - 0xA9)\n\nThis adds test acc, imm instruction to the x86 emulator\n\nSigned-off-by: Mohammed Gamal \u003cm.gamal005@gmail.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "24955b6c906045382b67f3e6beba7e5df4a4a045",
      "tree": "697584dc596b5fb0d93ecbcc0aee0a1d0dd68bea",
      "parents": [
        "4610c9cc6d9c84f7d585583699f04d5f51c83671"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Wed May 12 21:00:35 2010 -0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:43 2010 +0300"
      },
      "message": "KVM: pass correct parameter to kvm_mmu_free_some_pages\n\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "4610c9cc6d9c84f7d585583699f04d5f51c83671",
      "tree": "f67e81f151849fcce2b62665603f680fa9bb94b3",
      "parents": [
        "b923e62e4d48bc5242b32a6ef5ba0f886137668a"
      ],
      "author": {
        "name": "Dongxiao Xu",
        "email": "dongxiao.xu@intel.com",
        "time": "Tue May 11 18:29:48 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:43 2010 +0300"
      },
      "message": "KVM: VMX: VMXON/VMXOFF usage changes\n\nSDM suggests VMXON should be called before VMPTRLD, and VMXOFF\nshould be called after doing VMCLEAR.\n\nTherefore in vmm coexistence case, we should firstly call VMXON\nbefore any VMCS operation, and then call VMXOFF after the\noperation is done.\n\nSigned-off-by: Dongxiao Xu \u003cdongxiao.xu@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "b923e62e4d48bc5242b32a6ef5ba0f886137668a",
      "tree": "71652285850011abeea56b6f444498cffd66fd45",
      "parents": [
        "92fe13be74303a7b80dc3c99e22e12a87d41bd5f"
      ],
      "author": {
        "name": "Dongxiao Xu",
        "email": "dongxiao.xu@intel.com",
        "time": "Tue May 11 18:29:45 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:42 2010 +0300"
      },
      "message": "KVM: VMX: VMCLEAR/VMPTRLD usage changes\n\nOriginally VMCLEAR/VMPTRLD is called on vcpu migration. To\nsupport hosted VMM coexistance, VMCLEAR is executed on vcpu\nschedule out, and VMPTRLD is executed on vcpu schedule in.\nThis could also eliminate the IPI when doing VMCLEAR.\n\nSigned-off-by: Dongxiao Xu \u003cdongxiao.xu@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "92fe13be74303a7b80dc3c99e22e12a87d41bd5f",
      "tree": "0861769205fb4c1ca4ce6adb40daf9aedbb65d15",
      "parents": [
        "7725b89414836df492d6222b1d3cacb0ca576d77"
      ],
      "author": {
        "name": "Dongxiao Xu",
        "email": "dongxiao.xu@intel.com",
        "time": "Tue May 11 18:29:42 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:42 2010 +0300"
      },
      "message": "KVM: VMX: Some minor changes to code structure\n\nDo some preparations for vmm coexistence support.\n\nSigned-off-by: Dongxiao Xu \u003cdongxiao.xu@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "7725b89414836df492d6222b1d3cacb0ca576d77",
      "tree": "1e96bbd57950801e6f8396752cb8bff2fc2a8ffa",
      "parents": [
        "6859762e8ae32ec258a671faf5c9fef07b25b83f"
      ],
      "author": {
        "name": "Dongxiao Xu",
        "email": "dongxiao.xu@intel.com",
        "time": "Tue May 11 18:29:38 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:41 2010 +0300"
      },
      "message": "KVM: VMX: Define new functions to wrapper direct call of asm code\n\nDefine vmcs_load() and kvm_cpu_vmxon() to avoid direct call of asm\ncode. Also move VMXE bit operation out of kvm_cpu_vmxoff().\n\nSigned-off-by: Dongxiao Xu \u003cdongxiao.xu@intel.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "6859762e8ae32ec258a671faf5c9fef07b25b83f",
      "tree": "fc2dc98e756da280619dee386cc8dac98d007cb8",
      "parents": [
        "f0f5933a1626c8df7b0bfd227819c66320fb4f0f"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Tue May 11 14:36:58 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:41 2010 +0300"
      },
      "message": "KVM: update mmu documetation for role.nxe\n\nThere\u0027s no member \"cr4_nxe\" in struct kvm_mmu_page_role, it names \"nxe\" now.\nUpdate mmu document.\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "f0f5933a1626c8df7b0bfd227819c66320fb4f0f",
      "tree": "7ab29539ca98bf11aa3affdfb66d1f2aa55b0214",
      "parents": [
        "6d77dbfc88e37c9efd5c5dd18445cfe819ae17ea"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 10 12:09:56 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:41 2010 +0300"
      },
      "message": "KVM: MMU: Fix free memory accounting race in mmu_alloc_roots()\n\nWe drop the mmu lock between freeing memory and allocating the roots; this\nallows some other vcpu to sneak in and allocate memory.\n\nWhile the race is benign (resulting only in temporary overallocation, not oom)\nit is simple and easy to fix by moving the freeing close to the allocation.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "6d77dbfc88e37c9efd5c5dd18445cfe819ae17ea",
      "tree": "96a3afb750d254a99dd43fa4730fd6ff187eb2a0",
      "parents": [
        "57bc24cfd655c912498983130326b312e0404db1"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Mon May 10 11:16:56 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:40 2010 +0300"
      },
      "message": "KVM: inject #UD if instruction emulation fails and exit to userspace\n\nDo not kill VM when instruction emulation fails. Inject #UD and report\nfailure to userspace instead. Userspace may choose to reenter guest if\nvcpu is in userspace (cpl \u003d\u003d 3) in which case guest OS will kill\noffending process and continue running.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "57bc24cfd655c912498983130326b312e0404db1",
      "tree": "dc202a694e0d09841cbbe92b7cf80fd1c04a63bd",
      "parents": [
        "47dbb84f9e04e3261585da384d96b8c63f3376e3"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Apr 29 12:12:57 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:40 2010 +0300"
      },
      "message": "KVM: Document KVM_SET_BOOT_CPU_ID\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "47dbb84f9e04e3261585da384d96b8c63f3376e3",
      "tree": "c9373e8c202e7d3365e0708170d489b95626b060",
      "parents": [
        "54a4f0239f2e98bc0842818f611a4cf73bb7dd35"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Apr 29 12:08:56 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:40 2010 +0300"
      },
      "message": "KVM: Document KVM_SET_IDENTITY_MAP ioctl\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "54a4f0239f2e98bc0842818f611a4cf73bb7dd35",
      "tree": "f89db0a11d45d00244b4e789d032a2e83e765f27",
      "parents": [
        "518c5a05e89a79e498c95c3e29f29bd236b3c972"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Wed May 05 09:03:49 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:39 2010 +0300"
      },
      "message": "KVM: MMU: make kvm_mmu_zap_page() return the number of pages it actually freed\n\nCurrently, kvm_mmu_zap_page() returning the number of freed children sp.\nThis might confuse the caller, because caller don\u0027t know the actual freed\nnumber. Let\u0027s make kvm_mmu_zap_page() return the number of pages it actually\nfreed.\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "518c5a05e89a79e498c95c3e29f29bd236b3c972",
      "tree": "0bcede9523324e7f27dfcce415949cb6e3f0f286",
      "parents": [
        "f3b8c964a9a6cfef6d3ca778648d53947b9fd257"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Wed May 05 09:58:33 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:39 2010 +0300"
      },
      "message": "KVM: MMU: Fix debug output error in walk_addr()\n\nFix a debug output error in walk_addr\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f3b8c964a9a6cfef6d3ca778648d53947b9fd257",
      "tree": "e8a6b81ab63b34535ec8c384c61acc5778144fd7",
      "parents": [
        "eec4b140c924b4c650e9a89e01d223266490e325"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Wed May 05 09:09:21 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:38 2010 +0300"
      },
      "message": "KVM: MMU: mark page table dirty when a pte is actually modified\n\nSometime cmpxchg_gpte doesn\u0027t modify gpte, in such case, don\u0027t mark\npage table page as dirty.\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "eec4b140c924b4c650e9a89e01d223266490e325",
      "tree": "9af6ed57f7a62da94ffdd4b29473d9cb093a93d7",
      "parents": [
        "3f10c846f8f9e6a32bbfeefaf7dda7ff51c7da29"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed May 05 16:04:44 2010 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:38 2010 +0300"
      },
      "message": "KVM: SVM: Allow EFER.LMSLE to be set with nested svm\n\nThis patch enables setting of efer bit 13 which is allowed\nin all SVM capable processors. This is necessary for the\nSLES11 version of Xen 4.0 to boot with nested svm.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3f10c846f8f9e6a32bbfeefaf7dda7ff51c7da29",
      "tree": "c246c4e3ed903e325365e9dabb861be51b1ed69f",
      "parents": [
        "d94e1dc9af60e3431a586c3edfbe42d8a0d3932b"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed May 05 16:04:42 2010 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:38 2010 +0300"
      },
      "message": "KVM: SVM: Dump vmcb contents on failed vmrun\n\nThis patch adds a function to dump the vmcb into the kernel\nlog and calls it after a failed vmrun to ease debugging.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "d94e1dc9af60e3431a586c3edfbe42d8a0d3932b",
      "tree": "c9ae8e5e69241d51898ab657d0ff48004b5bd4dc",
      "parents": [
        "54b8486f469475d6c8e8aec917b91239a54eb8c8"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 03 16:54:48 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:37 2010 +0300"
      },
      "message": "KVM: Get rid of KVM_REQ_KICK\n\nKVM_REQ_KICK poisons vcpu-\u003erequests by having a bit set during normal\noperation.  This causes the fast path check for a clear vcpu-\u003erequests\nto fail all the time, triggering tons of atomic operations.\n\nFix by replacing KVM_REQ_KICK with a vcpu-\u003eguest_mode atomic.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "54b8486f469475d6c8e8aec917b91239a54eb8c8",
      "tree": "a619826dc8e4915fcf308f3514a43615345e077a",
      "parents": [
        "95cb229530f329ec8002274891793be9c91385f7"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:44 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:37 2010 +0300"
      },
      "message": "KVM: x86 emulator: do not inject exception directly into vcpu\n\nReturn exception as a result of instruction emulation and handle\ninjection in KVM code.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "95cb229530f329ec8002274891793be9c91385f7",
      "tree": "0bc4aabbc07bbf06222d68e5fcef5db8cd285385",
      "parents": [
        "4d2179e1e9cb74b25a8181a506600d96e15504fb"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:43 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:36 2010 +0300"
      },
      "message": "KVM: x86 emulator: move interruptibility state tracking out of emulator\n\nEmulator shouldn\u0027t access vcpu directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "4d2179e1e9cb74b25a8181a506600d96e15504fb",
      "tree": "142bb9f234bf52d5b021cb6248049e7ee2d12cff",
      "parents": [
        "bdb475a323858101f4a5ad6a1a04b1dd8885325a"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:42 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:36 2010 +0300"
      },
      "message": "KVM: x86 emulator: handle shadowed registers outside emulator\n\nEmulator shouldn\u0027t access vcpu directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "bdb475a323858101f4a5ad6a1a04b1dd8885325a",
      "tree": "3e39adfa30395205df20a8a3cf76da28ed932f46",
      "parents": [
        "ef050dc0390176ec6888f373edb776587c88be3d"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:41 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:36 2010 +0300"
      },
      "message": "KVM: x86 emulator: use shadowed register in emulate_sysexit()\n\nemulate_sysexit() should use shadowed registers copy instead of\nlooking into vcpu state directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "ef050dc0390176ec6888f373edb776587c88be3d",
      "tree": "1e205bbfa3d64385889e976181b086bf3618837e",
      "parents": [
        "95c5588652f7742a21c33d9dcce0e043e057d04f"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:40 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:35 2010 +0300"
      },
      "message": "KVM: x86 emulator: set RFLAGS outside x86 emulator code\n\nRemoves the need for set_flags() callback.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "95c5588652f7742a21c33d9dcce0e043e057d04f",
      "tree": "6f948ccbb9e8996d2af5890ecee32b31db72877c",
      "parents": [
        "3457e4192e367fd4e0da5e9f46f9df85fa99cd11"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:39 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:35 2010 +0300"
      },
      "message": "KVM: x86 emulator: advance RIP outside x86 emulator code\n\nReturn new RIP as part of instruction emulation result instead of\nupdating KVM\u0027s RIP from x86 emulator code.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3457e4192e367fd4e0da5e9f46f9df85fa99cd11",
      "tree": "357625d4f4ffb8619f8d7df79323b9a447d4498d",
      "parents": [
        "8fe681e984b6505d4d12125c0776399304803ec7"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:38 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:34 2010 +0300"
      },
      "message": "KVM: handle emulation failure case first\n\nIf emulation failed return immediately.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "8fe681e984b6505d4d12125c0776399304803ec7",
      "tree": "dcd8b2a739541463cb1b93074bce5968bdb1a288",
      "parents": [
        "f181b96d4c769b8915849eb9070c18116fd8d44e"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:37 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:34 2010 +0300"
      },
      "message": "KVM: do not inject #PF in (read|write)_emulated() callbacks\n\nReturn error to x86 emulator instead of injection exception behind its back.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f181b96d4c769b8915849eb9070c18116fd8d44e",
      "tree": "bf6ec49e557f420bc96122ab6c1ee4cc3e226973",
      "parents": [
        "c3cd7ffaf57ae6ead5b394cebaeb76164059a57f"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:36 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:34 2010 +0300"
      },
      "message": "KVM: remove export of emulator_write_emulated()\n\nIt is not called directly outside of the file it\u0027s defined in anymore.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c3cd7ffaf57ae6ead5b394cebaeb76164059a57f",
      "tree": "d6867ce238cb63a0c8ec69eb7752073569687025",
      "parents": [
        "411c35b7ef02aefb91e166ffeffad0891d955fcb"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:35 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:33 2010 +0300"
      },
      "message": "KVM: x86 emulator: x86_emulate_insn() return -1 only in case of emulation failure\n\nCurrently emulator returns -1 when emulation failed or IO is needed.\nCaller tries to guess whether emulation failed by looking at other\nvariables. Make it easier for caller to recognise error condition by\nalways returning -1 in case of failure. For this new emulator\ninternal return value X86EMUL_IO_NEEDED is introduced. It is used to\ndistinguish between error condition (which returns X86EMUL_UNHANDLEABLE)\nand condition that requires IO exit to userspace to continue emulation.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "411c35b7ef02aefb91e166ffeffad0891d955fcb",
      "tree": "809e400adecde2ad22bbb5ad899e4efa7a46c8a4",
      "parents": [
        "e680080e653b8c8725ca620bf22a5f8480f40cb5"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:34 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:33 2010 +0300"
      },
      "message": "KVM: fill in run-\u003emmio details in (read|write)_emulated function\n\nFill in run-\u003emmio details in (read|write)_emulated function just like\npio does. There is no point in filling only vcpu fields there just to\ncopy them into vcpu-\u003erun a little bit later.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "e680080e653b8c8725ca620bf22a5f8480f40cb5",
      "tree": "bd1f36d6269e42e7f62fbf380e6bc170116683b0",
      "parents": [
        "338dbc9781eb5acd0b12809d95d4006135f29767"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:33 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:32 2010 +0300"
      },
      "message": "KVM: x86 emulator: fix X86EMUL_RETRY_INSTR and X86EMUL_CMPXCHG_FAILED values\n\nCurrently X86EMUL_PROPAGATE_FAULT, X86EMUL_RETRY_INSTR and\nX86EMUL_CMPXCHG_FAILED have the same value so caller cannot\ndistinguish why function such as emulator_cmpxchg_emulated()\n(which can return both X86EMUL_PROPAGATE_FAULT and\nX86EMUL_CMPXCHG_FAILED) failed.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "338dbc9781eb5acd0b12809d95d4006135f29767",
      "tree": "ceb9fc9b2eb7e52c9352f094436590c82852d71f",
      "parents": [
        "0f12244fe70e8a94a491f6cd7ed70a352ab6c26c"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:32 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:32 2010 +0300"
      },
      "message": "KVM: x86 emulator: make (get|set)_dr() callback return error if it fails\n\nMake (get|set)_dr() callback return error if it fails instead of\ninjecting exception behind emulator\u0027s back.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "0f12244fe70e8a94a491f6cd7ed70a352ab6c26c",
      "tree": "a42fa2fd198e187c90abbed62ef35cd8acc9ff7e",
      "parents": [
        "79168fd1a307ffee46ee03b7f8711559241738c7"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:31 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:31 2010 +0300"
      },
      "message": "KVM: x86 emulator: make set_cr() callback return error if it fails\n\nMake set_cr() callback return error if it fails instead of injecting #GP\nbehind emulator\u0027s back.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "79168fd1a307ffee46ee03b7f8711559241738c7",
      "tree": "e8b259d42828d641d11d8b6be95fa8c48aa57e74",
      "parents": [
        "5951c4423724759906b10a26aa6a8817c4afa615"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:30 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:31 2010 +0300"
      },
      "message": "KVM: x86 emulator: cleanup some direct calls into kvm to use existing callbacks\n\nUse callbacks from x86_emulate_ops to access segments instead of calling\ninto kvm directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "5951c4423724759906b10a26aa6a8817c4afa615",
      "tree": "552b885e950cf61e841534cbefd0231f9ad0992d",
      "parents": [
        "3fb1b5dbd397d16a855c97c3fb80fe6e9196ce7c"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:29 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:31 2010 +0300"
      },
      "message": "KVM: x86 emulator: add get_cached_segment_base() callback to x86_emulate_ops\n\nOn VMX it is expensive to call get_cached_descriptor() just to get segment\nbase since multiple vmcs_reads are done instead of only one. Introduce\nnew call back get_cached_segment_base() for efficiency.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "3fb1b5dbd397d16a855c97c3fb80fe6e9196ce7c",
      "tree": "337a8ed2aba3f195d428c7b7827a323bd8b4428d",
      "parents": [
        "35aa5375d407ecadcc3adb5cb31d27044bf7f29f"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:28 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:30 2010 +0300"
      },
      "message": "KVM: x86 emulator: add (set|get)_msr callbacks to x86_emulate_ops\n\nAdd (set|get)_msr callbacks to x86_emulate_ops instead of calling\nthem directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "35aa5375d407ecadcc3adb5cb31d27044bf7f29f",
      "tree": "62fb6202f9da42f6f987c754838e8c568e11b6e8",
      "parents": [
        "414e6277fd148f6470261cef50a7fed0d88a2825"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:27 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:30 2010 +0300"
      },
      "message": "KVM: x86 emulator: add (set|get)_dr callbacks to x86_emulate_ops\n\nAdd (set|get)_dr callbacks to x86_emulate_ops instead of calling\nthem directly.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "414e6277fd148f6470261cef50a7fed0d88a2825",
      "tree": "c105f8a33e9f744695d0ffd2172f6d2a9e859258",
      "parents": [
        "b8a98945ea5b735e083eaf92906aa0ff9ece92e8"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:26 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:30 2010 +0300"
      },
      "message": "KVM: x86 emulator: handle \"far address\" source operand\n\nljmp/lcall instruction operand contains address and segment.\nIt can be 10 bytes long. Currently we decode it as two different\noperands. Fix it by introducing new kind of operand that can hold\nentire far address.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "b8a98945ea5b735e083eaf92906aa0ff9ece92e8",
      "tree": "3eefe44ffc5035f0ed281ede1f63c866a67b28c4",
      "parents": [
        "f0c13ef1a8f31be08bf1b1244fe4565f11f4b009"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:25 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:29 2010 +0300"
      },
      "message": "KVM: x86 emulator: cleanup nop emulation\n\nMake it more explicit what we are checking for.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f0c13ef1a8f31be08bf1b1244fe4565f11f4b009",
      "tree": "86386e9237cf6a32307127dd5c67566814cfd7c1",
      "parents": [
        "054fe9f6e3b76877516b37ac7d83d58c7f37c1b6"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:24 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:29 2010 +0300"
      },
      "message": "KVM: x86 emulator: cleanup xchg emulation\n\nDst operand is already initialized during decoding stage. No need to\nreinitialize.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "054fe9f6e3b76877516b37ac7d83d58c7f37c1b6",
      "tree": "0c95993dac8954f98ceb780cdc86df516cd4dace",
      "parents": [
        "9de41573675cbace09b02ef386f3e9c8739d495c"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:23 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:28 2010 +0300"
      },
      "message": "KVM: x86 emulator: fix Move r/m16 to segment register decoding\n\nThis instruction does not need generic decoding for its dst operand.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "9de41573675cbace09b02ef386f3e9c8739d495c",
      "tree": "e13a6a4b2326103472f7f18b6fd8c855f5ffdacf",
      "parents": [
        "1c11e713576edf33b95669be9c2dc0ff1e0c90d3"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed Apr 28 19:15:22 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:28 2010 +0300"
      },
      "message": "KVM: x86 emulator: introduce read cache\n\nIntroduce read cache which is needed for instruction that require more\nthen one exit to userspace. After returning from userspace the instruction\nwill be re-executed with cached read value.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "1c11e713576edf33b95669be9c2dc0ff1e0c90d3",
      "tree": "9d7cde9a08747e4e633302b418de4b8eedaf1c2b",
      "parents": [
        "08acfa187117046f8b5044b4a4cdc910f3ceeeb5"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon May 03 16:05:44 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:28 2010 +0300"
      },
      "message": "KVM: VMX: Avoid writing HOST_CR0 every entry\n\ncr0.ts may change between entries, so we copy cr0 to HOST_CR0 before each\nentry.  That is slow, so instead, set HOST_CR0 to have TS set unconditionally\n(which is a safe value), and issue a clts() just before exiting vcpu context\nif the task indeed owns the fpu.\n\nSaves ~50 cycles/exit.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "08acfa187117046f8b5044b4a4cdc910f3ceeeb5",
      "tree": "7a5eb2d66135827c99cb47446cd7580334de5d14",
      "parents": [
        "914ebccd2d8fa439e01fe93b5229534b9e179a69"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue May 04 13:00:55 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:27 2010 +0300"
      },
      "message": "KVM: kvm_pdptr_read() may sleep\n\nAnnotate it thusly.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "914ebccd2d8fa439e01fe93b5229534b9e179a69",
      "tree": "13341c1b1fcd6d4eeb39576c75417cccbcdee748",
      "parents": [
        "c332c83ae736c72dcf072e96e98a774fce39e722"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Wed Apr 28 18:50:36 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:27 2010 +0300"
      },
      "message": "KVM: x86: avoid unnecessary bitmap allocation when memslot is clean\n\nAlthough we always allocate a new dirty bitmap in x86\u0027s get_dirty_log(),\nit is only used as a zero-source of copy_to_user() and freed right after\nthat when memslot is clean. This patch uses clear_user() instead of doing\nthis unnecessary zero-source allocation.\n\nPerformance improvement: as we can expect easily, the time needed to\nallocate a bitmap is completely reduced. In my test, the improved ioctl\nwas about 4 to 10 times faster than the original one for clean slots.\nFurthermore, reducing memory allocations and copies will produce good\neffects to caches too.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "c332c83ae736c72dcf072e96e98a774fce39e722",
      "tree": "f06830d88cbb3392c473c99871cc54a436f956a5",
      "parents": [
        "bf998156d24bcb127318ad5bf531ac3bdfcd6449"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue May 04 12:24:12 2010 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:27 2010 +0300"
      },
      "message": "KVM: VMX: Simplify vmx_get_nmi_mask()\n\n!! is not needed due to the cast to bool.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "bf998156d24bcb127318ad5bf531ac3bdfcd6449",
      "tree": "616c19474d7cb626ff9eebc54f6753563a4322cd",
      "parents": [
        "540ad6b62b3a188a53b51cac81d8a60d40e29fbd"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Mon May 31 14:28:19 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Aug 01 10:35:26 2010 +0300"
      },
      "message": "KVM: Avoid killing userspace through guest SRAO MCE on unmapped pages\n\nIn common cases, guest SRAO MCE will cause corresponding poisoned page\nbe un-mapped and SIGBUS be sent to QEMU-KVM, then QEMU-KVM will relay\nthe MCE to guest OS.\n\nBut it is reported that if the poisoned page is accessed in guest\nafter unmapping and before MCE is relayed to guest OS, userspace will\nbe killed.\n\nThe reason is as follows. Because poisoned page has been un-mapped,\nguest access will cause guest exit and kvm_mmu_page_fault will be\ncalled. kvm_mmu_page_fault can not get the poisoned page for fault\naddress, so kernel and user space MMIO processing is tried in turn. In\nuser MMIO processing, poisoned page is accessed again, then userspace\nis killed by force_sig_info.\n\nTo fix the bug, kvm_mmu_page_fault send HWPOISON signal to QEMU-KVM\nand do not try kernel and user space MMIO processing for poisoned\npage.\n\n[xiao: fix warning introduced by avi]\n\nReported-by: Max Asbock \u003cmasbock@linux.vnet.ibm.com\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "540ad6b62b3a188a53b51cac81d8a60d40e29fbd",
      "tree": "554d3905c18c711ee2b9853dca2b45d274542eb7",
      "parents": [
        "2fa82e1f10949dbde97fe13c269df2321c0d0715",
        "ba773f7c510c0b252145933926c636c439889207"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 20:01:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 20:01:26 2010 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  x86,kgdb: Fix hw breakpoint regression\n"
    },
    {
      "commit": "2fa82e1f10949dbde97fe13c269df2321c0d0715",
      "tree": "ed209193ef4c6c9d0517c875665f414a8504523f",
      "parents": [
        "8785eb1e7ca0292c04007fc7768e1599e0c6cef3",
        "8f83d7688026729c9d356d865f65a8996f090048"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 20:00:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 20:00:42 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:\n  [SCSI] ibmvscsi: Fix oops when an interrupt is pending during probe\n  [SCSI] zfcp: Update status read mempool\n  [SCSI] zfcp: Do not wait for SBALs on stopped queue\n  [SCSI] zfcp: Fix check whether unchained ct_els is possible\n  [SCSI] ipr: fix resource path display and formatting\n"
    },
    {
      "commit": "8785eb1e7ca0292c04007fc7768e1599e0c6cef3",
      "tree": "8016acc3d90f4af72940ce3b85beaeb25fe8326d",
      "parents": [
        "a6f80fb7b5986fda663d94079d3bba0937a6b6ff",
        "8b24599e72c9aee1ea1187e29cb9c5de9f449cce"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 19:59:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 19:59:55 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:\n  davinci: da850/omap-l138 evm: account for DEFDCDC{2,3} being tied high\n  regulator: tps6507x: allow driver to use DEFDCDC{2,3}_HIGH register\n  wm8350-regulator: fix wm8350_register_regulator error handling\n  ab3100: fix off-by-one value range checking for voltage selector\n"
    },
    {
      "commit": "a6f80fb7b5986fda663d94079d3bba0937a6b6ff",
      "tree": "b8a44b0ed1560ae3f00f1ff4e342f43b7422bcc3",
      "parents": [
        "6c50e1a49b4377b760ee46f824ed04b17be913e3"
      ],
      "author": {
        "name": "Andre Osterhues",
        "email": "aosterhues@escrypt.com",
        "time": "Tue Jul 13 15:59:17 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 19:59:24 2010 -0700"
      },
      "message": "ecryptfs: Bugfix for error related to ecryptfs_hash_buckets\n\nThe function ecryptfs_uid_hash wrongly assumes that the\nsecond parameter to hash_long() is the number of hash\nbuckets instead of the number of hash bits.\nThis patch fixes that and renames the variable\necryptfs_hash_buckets to ecryptfs_hash_bits to make it\nclearer.\n\nFixes: CVE-2010-2492\n\nSigned-off-by: Andre Osterhues \u003caosterhues@escrypt.com\u003e\nSigned-off-by: Tyler Hicks \u003ctyhicks@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba773f7c510c0b252145933926c636c439889207",
      "tree": "97983dc7a149487a7926f1efc2619fafcc8cc93c",
      "parents": [
        "fc0f5ac8fe693d1b05f5a928cc48135d1c8b7f2e"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 28 19:10:30 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 28 19:10:30 2010 -0500"
      },
      "message": "x86,kgdb: Fix hw breakpoint regression\n\nHW breakpoints events stopped working correctly with kgdb\nas a result of commit: 018cbffe6819f6f8db20a0a3acd9bab9bfd667e4\n(Merge commit \u0027v2.6.33\u0027 into perf/core).\n\nThe regression occurred because the behavior changed for setting\nNOTIFY_STOP as the return value to the die notifier if the breakpoint\nwas known to the HW breakpoint API.  Because kgdb is using the HW\nbreakpoint API to register HW breakpoints slots, it must also now\nimplement the overflow_handler call back else kgdb does not get to see\nthe events from the die notifier.\n\nThe kgdb_ll_trap function will be changed to be general purpose code\nwhich can allow an easy way to implement the hw_breakpoint API\noverflow call back.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "6c50e1a49b4377b760ee46f824ed04b17be913e3",
      "tree": "5e558bcd8fa3ca0d1a999e4c472d206aa688ec68",
      "parents": [
        "d2a97a4e99ff0ffdccd1fc46f22fb34270ef1e56",
        "03066f23452ff088ad8e2c8acdf4443043f35b51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 11:10:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 11:10:53 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  ceph: use complete_all and wake_up_all\n  ceph: Correct obvious typo of Kconfig variable \"CRYPTO_AES\"\n  ceph: fix dentry lease release\n  ceph: fix leak of dentry in ceph_init_dentry() error path\n  ceph: fix pg_mapping leak on pg_temp updates\n  ceph: fix d_release dop for snapdir, snapped dentries\n  ceph: avoid dcache readdir for snapdir\n"
    },
    {
      "commit": "d2a97a4e99ff0ffdccd1fc46f22fb34270ef1e56",
      "tree": "f9ac90f438bb3221a6e383e7f1c9c817e95ad44b",
      "parents": [
        "fc0f5ac8fe693d1b05f5a928cc48135d1c8b7f2e"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jul 28 17:56:23 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 28 11:10:03 2010 -0700"
      },
      "message": "GFS2: Use kmalloc when possible for -\u003ereaddir()\n\nIf we don\u0027t need a huge amount of memory in -\u003ereaddir() then\nwe can use kmalloc rather than vmalloc to allocate it. This\nshould cut down on the greater overheads associated with\nvmalloc for smaller directories.\n\nWe may be able to eliminate vmalloc entirely at some stage,\nbut this is easy to do right away.\n\nAlso using GFP_NOFS to avoid any issues wrt to deleting inodes\nwhile under a glock, and suggestion from Linus to factor out\nthe alloc/dealloc.\n\nI\u0027ve given this a test with a variety of different sized\ndirectories and it seems to work ok.\n\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Prarit Bhargava \u003cprarit@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b24599e72c9aee1ea1187e29cb9c5de9f449cce",
      "tree": "9e256d1ee8c3930c3cb97dc75ccb32bb6043ddfd",
      "parents": [
        "7d14831e21060fbfbfe8453460ac19205f4ce1c2"
      ],
      "author": {
        "name": "Sekhar Nori",
        "email": "nsekhar@ti.com",
        "time": "Mon Jul 12 17:56:21 2010 +0530"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lrg@slimlogic.co.uk",
        "time": "Wed Jul 28 15:09:31 2010 +0100"
      },
      "message": "davinci: da850/omap-l138 evm: account for DEFDCDC{2,3} being tied high\n\nPer the da850/omap-l138 Beta EVM SOM schematic, the DEFDCDC2 and\nDEFDCDC3 lines are tied high. This leads to a 3.3V IO and 1.2V CVDD\nvoltage.\n\nPass the right platform data to the TPS6507x driver so it can operate\non the DEFDCDC{2,3}_HIGH register to read and change voltage levels.\n\nSigned-off-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nAcked-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Liam Girdwood \u003clrg@slimlogic.co.uk\u003e\n"
    },
    {
      "commit": "7d14831e21060fbfbfe8453460ac19205f4ce1c2",
      "tree": "f62423f7c13f9cfe1b555638dda8ab17fbca4777",
      "parents": [
        "e9a1c5129de1caf4526b8df5f200ff628b2ffab4"
      ],
      "author": {
        "name": "Anuj Aggarwal",
        "email": "anuj.aggarwal@ti.com",
        "time": "Mon Jul 12 17:54:06 2010 +0530"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lrg@slimlogic.co.uk",
        "time": "Wed Jul 28 15:09:26 2010 +0100"
      },
      "message": "regulator: tps6507x: allow driver to use DEFDCDC{2,3}_HIGH register\n\nAcked-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n\nIn TPS6507x, depending on the status of DEFDCDC{2,3} pin either\nDEFDCDC{2,3}_LOW or DEFDCDC{2,3}_HIGH register needs to be read or\nprogrammed to change the output voltage.\n\nThe current driver assumes DEFDCDC{2,3} pins are always tied low\nand thus operates only on DEFDCDC{2,3}_LOW register. This need\nnot always be the case (as is found on OMAP-L138 EVM).\n\nUnfortunately, software cannot read the status of DEFDCDC{2,3} pins.\nSo, this information is passed through platform data depending on\nhow the board is wired.\n\nSigned-off-by: Anuj Aggarwal \u003canuj.aggarwal@ti.com\u003e\nSigned-off-by: Sekhar Nori \u003cnsekhar@ti.com\u003e\nSigned-off-by: Liam Girdwood \u003clrg@slimlogic.co.uk\u003e\n"
    },
    {
      "commit": "fc0f5ac8fe693d1b05f5a928cc48135d1c8b7f2e",
      "tree": "ceca515ce66fb883247119953c62c9dc7e52b7df",
      "parents": [
        "6a99ad4a2e1b1693ffe8e40cc0dddfc633ce2a50",
        "da7ddd3296505b4cb46685e1bbf7d0075b3cd4f1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:59 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: Pass the correct end of buffer to p9stat_read\n"
    },
    {
      "commit": "6a99ad4a2e1b1693ffe8e40cc0dddfc633ce2a50",
      "tree": "7125466673bfe462b3ffbaf85b31cb66906d22cd",
      "parents": [
        "952e1c6632ab5060a2323624d2908f31d62fc0a3"
      ],
      "author": {
        "name": "Jon Povey",
        "email": "jon.povey@racelogic.co.uk",
        "time": "Tue Jul 27 13:18:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:07 2010 -0700"
      },
      "message": "gpio: fix spurious printk when freeing a gpio\n\nWhen freeing a gpio that has not been exported, gpio_unexport() prints a\ndebug message when it should just fall through silently.\n\nExample spurious message:\n\n\tgpio_unexport: gpio0 status -22\n\nSigned-off-by: Jon Povey \u003cjon.povey@racelogic.co.uk\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nAcked-by: Uwe Kleine-K?nig \u003cu.kleine-koenig@pengutronix.de\u003e\nCc: Gregory Bean \u003cgbean@codeaurora.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "952e1c6632ab5060a2323624d2908f31d62fc0a3",
      "tree": "ca9bcd76a98269f9b264ad58fec12a329d5b96fd",
      "parents": [
        "2884fce165047db7df422e52a672970fa09c87b5"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@mvista.com",
        "time": "Tue Jul 27 13:18:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:06 2010 -0700"
      },
      "message": "edac: mpc85xx: fix coldplug/hotplug module autoloading\n\nThe MPC85xx EDAC driver is missing module device aliases, so the driver\nwon\u0027t load automatically on boot.  This patch fixes the issue by adding\nproper MODULE_DEVICE_TABLE() macros.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nCc: Doug Thompson \u003cdougthompson@xmission.com\u003e\nCc: Peter Tyser \u003cptyser@xes-inc.com\u003e\nCc: Dave Jiang \u003cdjiang@mvista.com\u003e\nCc: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2884fce165047db7df422e52a672970fa09c87b5",
      "tree": "9382e655a17b7be04178b0fa0d6978f88fd8ecb6",
      "parents": [
        "b82bab4bbe9efa7bc7177fc20620fff19bd95484"
      ],
      "author": {
        "name": "Rudolf Marek",
        "email": "rudolf.marek@sysgo.com",
        "time": "Tue Jul 27 13:18:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:06 2010 -0700"
      },
      "message": "drivers/rtc/rtc-rx8581.c: fix setdatetime\n\nFix the logic while writing new date/time to the chip.  The driver\nincorrectly wrote back register values to different registers and even\nwith wrong mask.  The patch adds clearing of the VLF register, which\nshould be cleared if all date/time values are set.\n\nSigned-off-by: Rudolf Marek \u003crudolf.marek@sysgo.com\u003e\nAcked-by: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nCc: Martyn Welch \u003cmartyn.welch@gefanuc.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b82bab4bbe9efa7bc7177fc20620fff19bd95484",
      "tree": "c033a090fbd3caa61f2f3b6ece52c0b4dffeb229",
      "parents": [
        "d15aa2cc641bd193596382357de917b32f1b40cb"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Jul 27 13:18:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:06 2010 -0700"
      },
      "message": "dynamic debug: move ddebug_remove_module() down into free_module()\n\nThe command\n\n\techo \"file ec.c +p\" \u003e/sys/kernel/debug/dynamic_debug/control\n\ncauses an oops.\n\nMove the call to ddebug_remove_module() down into free_module().  In this\nway it should be called from all error paths.  Currently, we are missing\nthe remove if the module init routine fails.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nReported-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nTested-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.32+]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03066f23452ff088ad8e2c8acdf4443043f35b51",
      "tree": "37f03df4e28de87339cec3b88e479073c8cee958",
      "parents": [
        "25848b3ec681c7018e3746dd850c1e8ed0a3dd6b"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Tue Jul 27 13:11:08 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Jul 27 13:11:17 2010 -0700"
      },
      "message": "ceph: use complete_all and wake_up_all\n\nThis fixes an issue triggered by running concurrent syncs. One of the syncs\nwould go through while the other would just hang indefinitely. In any case, we\nnever actually want to wake a single waiter, so the *_all functions should\nbe used.\n\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    }
  ],
  "next": "da7ddd3296505b4cb46685e1bbf7d0075b3cd4f1"
}
