)]}'
{
  "commit": "56028d0861e48f7cc9c573d79f2d8a0a933a2bba",
  "tree": "fa42d19f235c585c6514337a26db9641780ac759",
  "parents": [
    "af585b921e5d1e919947c4b1164b59507fe7cd7b"
  ],
  "author": {
    "name": "Gleb Natapov",
    "email": "gleb@redhat.com",
    "time": "Sun Oct 17 18:13:42 2010 +0200"
  },
  "committer": {
    "name": "Avi Kivity",
    "email": "avi@redhat.com",
    "time": "Wed Jan 12 11:23:06 2011 +0200"
  },
  "message": "KVM: Retry fault before vmentry\n\nWhen page is swapped in it is mapped into guest memory only after guest\ntries to access it again and generate another fault. To save this fault\nwe can map it immediately since we know that guest is going to access\nthe page. Do it only when tdp is enabled for now. Shadow paging case is\nmore complicated. CR[034] and EFER registers should be switched before\ndoing mapping and then switched back.\n\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b5f4c1a36d65955bbbe5756a68fe0a7cb82faaac",
      "old_mode": 33188,
      "old_path": "arch/x86/include/asm/kvm_host.h",
      "new_id": "c3076bcf5ef7005de08691a8751d2b01f6823da2",
      "new_mode": 33188,
      "new_path": "arch/x86/include/asm/kvm_host.h"
    },
    {
      "type": "modify",
      "old_id": "4ab04de5a76af12fae67d60c9bf4bf8df0437f9e",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/mmu.c",
      "new_id": "b2c60986a7ce361f33bedb52235367b8ffb3dfc4",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/mmu.c"
    },
    {
      "type": "modify",
      "old_id": "c45376dd041af7ee69bf47acb49045757f2941f0",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/paging_tmpl.h",
      "new_id": "d6b281e989b183b715247d9d976da89bd08fab8c",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/paging_tmpl.h"
    },
    {
      "type": "modify",
      "old_id": "3cd4d091c2f3bfe2bb3781089b9b1840f7c9fae9",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/x86.c",
      "new_id": "71beb27597fd02aa9cd667e30e3f2e6345cd2023",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/x86.c"
    },
    {
      "type": "modify",
      "old_id": "857d63431cb71ab6879f960f843147a7ed0f4e4d",
      "old_mode": 33188,
      "old_path": "virt/kvm/async_pf.c",
      "new_id": "e97eae965a4c030af72935d9959fcdbab567e6ad",
      "new_mode": 33188,
      "new_path": "virt/kvm/async_pf.c"
    }
  ]
}
