)]}'
{
  "commit": "b83b5f2ef9753713c2fb64ff4cae7cb1e080624e",
  "tree": "80f91c01a7ce5080df54288dce1c4ecb54600138",
  "parents": [
    "5df6a1855b62dc653515d919e48c5b6f00c48f32"
  ],
  "author": {
    "name": "Brian Kress",
    "email": "kressb@moose.net",
    "time": "Tue Jun 23 11:49:25 2015 -0400"
  },
  "committer": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@redhat.com",
    "time": "Tue Jul 07 13:10:26 2015 +0100"
  },
  "message": "vmxnet3: Fix incorrect small packet padding\n\nWhen running ESXi under qemu there is an issue with the ESXi guest\ndiscarding packets that are too short.  The guest discards any packets\nunder the normal minimum length for an ethernet packet (60).  This\nresults in odd behaviour where other hosts or VMs on other hosts can\ncommunicate with the ESXi guest just fine (since there\u0027s a physical NIC\nsomewhere doing padding), but VMs on the host and the host itself cannot\nbecause the ARP request packets are too small for the ESXi host to\naccept.\n\nSomeone in the past thought this was worth fixing, and added code to the\nvmxnet3 qemu emulation such that if it is receiving packets smaller than\n60 bytes to pad the packet out to 60. Unfortunately this code is wrong\n(or at least in the wrong place). It does so BEFORE before taking into\naccount the vnet_hdr at the front of the packet added by the tap device.\nAs a result, it might add padding, but it never adds enough.\nSpecifically it adds 10 less (the length of the vnet_hdr) than it needs\nto.\n\nThe following (hopefully \"obviously correct\") patch simply swaps the\norder of processing the vnet header and the padding.  With this patch an\nESXi guest is able to communicate with the host or other local VMs.\n\nSigned-off-by: Brian Kress \u003ckressb@moose.net\u003e\nReviewed-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nReviewed-by: Dmitry Fleytman \u003cdmitry@daynix.com\u003e\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "104a0f599b03b7456fe331f7829279593ffd372f",
      "old_mode": 33188,
      "old_path": "hw/net/vmxnet3.c",
      "new_id": "706e0606a9868da7c3264cf44e487f1e68697b11",
      "new_mode": 33188,
      "new_path": "hw/net/vmxnet3.c"
    }
  ]
}
