)]}'
{
  "log": [
    {
      "commit": "6b35e40767c6c1ac783330109ae8e0c09ea6bc82",
      "tree": "e820d770894cb945c3070fa6739b0149b1bfa2f9",
      "parents": [
        "55a7c066041e7850948d29ed813f62821a9ec046"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Feb 04 23:50:12 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Feb 04 23:50:13 2008 +1100"
      },
      "message": "virtio: balloon driver\n\nAfter discussions with Anthony Liguori, it seems that the virtio\nballoon can be made even simpler.  Here\u0027s my attempt.\n\nThe device configuration tells the driver how much memory it should\ntake from the guest (ie. balloon size).  The guest feeds the page\nnumbers it has taken via one virtqueue.\n\nA second virtqueue feeds the page numbers the driver wants back: if\nthe device has the VIRTIO_BALLOON_F_MUST_TELL_HOST bit, then this\nqueue is compulsory, otherwise it\u0027s advisory (and the guest can simply\nfault the pages back in).\n\nThis driver can be enhanced later to deflate the balloon via a\nshrinker, oom callback or we could even go for a complete set of\nin-guest regulators.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3343660d8c62c6b00b2f15324ef3fcb6be207bfa",
      "tree": "06d86446da65fc1814edad944e43aeb62f092422",
      "parents": [
        "d50ed907dc3db5bf2dd0a05b4e199a65793a3788"
      ],
      "author": {
        "name": "Anthony Liguori",
        "email": "aliguori@us.ibm.com",
        "time": "Mon Nov 12 21:30:26 2007 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Feb 04 23:50:11 2008 +1100"
      },
      "message": "virtio: PCI device\n\nThis is a PCI device that implements a transport for virtio.  It allows virtio\ndevices to be used by QEMU based VMMs like KVM or Xen.\n\nSigned-off-by: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "c6fd47011b4bdebad3f1513bac75fe4895e332ee",
      "tree": "12224cdb2594be26e02291b142ba6e1e2c1c8122",
      "parents": [
        "15f9c8903cbdb02aee0f1bcf86a97c2e238b9a3d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Feb 04 23:50:05 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Feb 04 23:50:06 2008 +1100"
      },
      "message": "virtio: Allow virtio to be modular and used by modules\n\nThis is needed for the virtio PCI device to be compiled as a module.\n\nSigned-off-by: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "0a8a69dd77ddbd4513b21363021ecde7e1025502",
      "tree": "ed6d8f0756835390b4c0d9a172422f2e42a65523",
      "parents": [
        "b01d9f2863349b0e041b90c3c86a998ee0fed2b0"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Oct 22 11:03:40 2007 +1000"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 23 15:49:55 2007 +1000"
      },
      "message": "Virtio helper routines for a descriptor ringbuffer implementation\n\nThese helper routines supply most of the virtqueue_ops for hypervisors\nwhich want to use a ring for virtio.  Unlike the previous lguest\nimplementation:\n\n1) The rings are variable sized (2^n-1 elements).\n2) They have an unfortunate limit of 65535 bytes per sg element.\n3) The page numbers are always 64 bit (PAE anyone?)\n4) They no longer place used[] on a separate page, just a separate\n   cacheline.\n5) We do a modulo on a variable.  We could be tricky if we cared.\n6) Interrupts and notifies are suppressed using flags within the rings.\n\nUsers need only get the ring pages and provide a notify hook (KVM\nwants the guest to allocate the rings, lguest does it sanely).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Dor Laor \u003cdor.laor@qumranet.com\u003e\n"
    },
    {
      "commit": "ec3d41c4db4c21164332826ea8d812f94f2f6886",
      "tree": "9b947e900745cfcc4df7409c6ba5583428964215",
      "parents": [
        "47436aa4ad054c1c7c8231618e86ebd9305308dc"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Oct 22 11:03:36 2007 +1000"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 23 15:49:54 2007 +1000"
      },
      "message": "Virtio interface\n\nThis attempts to implement a \"virtual I/O\" layer which should allow\ncommon drivers to be efficiently used across most virtual I/O\nmechanisms.  It will no-doubt need further enhancement.\n\nThe virtio drivers add buffers to virtio queues; as the buffers are consumed\nthe driver \"interrupt\" callbacks are invoked.\n\nThere is also a generic implementation of config space which drivers can query\nto get setup information from the host.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Dor Laor \u003cdor.laor@qumranet.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    }
  ]
}
