)]}'
{
  "commit": "42cc8fa620cbc73e349e96d84cf46469e828ec34",
  "tree": "e17f4c3bd50bed2edb0791b6b8fc4faa18658f9c",
  "parents": [
    "eb47d7c5d96060040931c42773ee07e61e547af9"
  ],
  "author": {
    "name": "Jan Kiszka",
    "email": "jan.kiszka@siemens.com",
    "time": "Wed Jun 15 15:17:26 2011 +0200"
  },
  "committer": {
    "name": "Avi Kivity",
    "email": "avi@redhat.com",
    "time": "Sun Jun 19 15:57:56 2011 +0300"
  },
  "message": "kvm: x86: Save/restore FPU OP, IP and DP\n\nThese FPU states are properly maintained by KVM but not yet by TCG. So\nfar we unconditionally set them to 0 in the guest which may cause\nstate corruptions, though not with modern guests.\n\nTo avoid breaking backward migration, use a conditional subsection that\nis only written if any of the three fields is non-zero. The guest\u0027s\nFNINIT clears them frequently, and cleared IA32_MISC_ENABLE MSR[2]\nreduces the probability of non-zero values further so that this\nsubsection is not expected to restrict migration in any common scenario.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9c3340da3fc2725021581ba9cd71b356d555a41b",
      "old_mode": 33188,
      "old_path": "target-i386/cpu.h",
      "new_id": "cdf68ffd9933e7b9f9624e2a457b290c10979f69",
      "new_mode": 33188,
      "new_path": "target-i386/cpu.h"
    },
    {
      "type": "modify",
      "old_id": "1ae2d61740e1206b00d63e110cce3b5b7719d8ff",
      "old_mode": 33188,
      "old_path": "target-i386/kvm.c",
      "new_id": "16e821385c3acc7eb80d6eb075e5532833b90dd5",
      "new_mode": 33188,
      "new_path": "target-i386/kvm.c"
    },
    {
      "type": "modify",
      "old_id": "bbeae8852c6978df163791d9d03cced3f6d2ab06",
      "old_mode": 33188,
      "old_path": "target-i386/machine.c",
      "new_id": "d22a731789d344c0455a5f8cd610638daa6e958f",
      "new_mode": 33188,
      "new_path": "target-i386/machine.c"
    }
  ]
}
