)]}'
{
  "commit": "302a0d3ed721e4c30c6a2a37f64c60b50ffd33b9",
  "tree": "d8b168af72641484a578bb2b16be4e2c0fb5273f",
  "parents": [
    "3799ce4ab64f578eb818689a276e4f0c73d01fb5"
  ],
  "author": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@linux.vnet.ibm.com",
    "time": "Wed Dec 21 12:37:22 2011 +0530"
  },
  "committer": {
    "name": "Aneesh Kumar K.V",
    "email": "aneesh.kumar@linux.vnet.ibm.com",
    "time": "Wed Dec 21 12:37:22 2011 +0530"
  },
  "message": "hw/9pfs: replace iovec manipulation with QEMUIOVector\n\nThe v9fs_read() and v9fs_write() functions rely on iovec[] manipulation\ncode should be replaced with QEMUIOVector to avoid duplicating code.\nIn the future it may be possible to make the code even more concise by\nusing QEMUIOVector consistently across virtio and 9pfs.\n\nThe \"v\" format specifier for pdu_marshal() and pdu_unmarshal() is\ndropped since it does not actually pack/unpack anything.  The specifier\nwas also not implemented to update the offset variable and could only be\nused at the end of a format string, another sign that this shouldn\u0027t\nreally be a format specifier.  Instead, see the new\nv9fs_init_qiov_from_pdu() function.\n\nThis change avoids a possible iovec[] buffer overflow when indirect\nvrings are used since the number of vectors is now limited by the\nunderlying VirtQueueElement and cannot be out-of-bounds.\n\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@linux.vnet.ibm.com\u003e\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "36a862f1f107a189a6b74ac24d85b0078ba7845b",
      "old_mode": 33188,
      "old_path": "hw/9pfs/virtio-9p.c",
      "new_id": "46dc9f7340c7885667747c71f3acaeee5ea9b4b0",
      "new_mode": 33188,
      "new_path": "hw/9pfs/virtio-9p.c"
    }
  ]
}
