)]}'
{
  "log": [
    {
      "commit": "098ef1c0ea7b1b3ff9d89364af5ebc5b672cf932",
      "tree": "2a7bb997f3476dc3dbec8b7148ea3868fb8f1665",
      "parents": [
        "d71a6d7332e5881a65249f4fb97b0db3c61dd5ec"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Tue Apr 29 01:02:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:24 2008 -0700"
      },
      "message": "nbd: delete superfluous test for __GNUC__\n\nSince \u003clinux/compiler.h\u003e already tests for __GNUC__, there\u0027s no point in nbd.h\nrepeating that test.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48cf6061b30205b29b306bf9bc22dd6f0b091461",
      "tree": "bba7827177587a17160c29392651aa27aa7f98fd",
      "parents": [
        "8c4dd6068221cd1d0d90490ace80eb4344914a8c"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "Laurent.Vivier@bull.net",
        "time": "Tue Apr 29 01:02:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:23 2008 -0700"
      },
      "message": "NBD: allow nbd to be used locally\n\nThis patch allows Network Block Device to be mounted locally (nbd-client to\nnbd-server over 127.0.0.1).\n\nIt creates a kthread to avoid the deadlock described in NBD tools\ndocumentation.  So, if nbd-client hangs waiting for pages, the kblockd thread\ncan continue its work and free pages.\n\nI have tested the patch to verify that it avoids the hang that always occurs\nwhen writing to a localhost nbd connection.  I have also tested to verify that\nno performance degradation results from the additional thread and queue.\n\nPatch originally from Laurent Vivier.\n\nSigned-off-by: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Laurent Vivier \u003cLaurent.Vivier@bull.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20a8143eaa3300a58326156eaf43e03db0fd2cb6",
      "tree": "ee12300f417f0ecbaa4879b62a19a09423de76b3",
      "parents": [
        "53a7a1bb438245cd2ef9674b9af3a5201d7d7657"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Fri Feb 08 04:21:51 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:41 2008 -0800"
      },
      "message": "NBD: remove limit on max number of nbd devices\n\nRemove the arbitrary 128 device limit for NBD.  nbds_max can now be set to\nany number.  In certain scenarios where devices are used sparsely we have\nrun into the 128 device limit.\n\nSigned-off-by: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7fdfd4065c264bddd2d9277470a6a99d34e01bef",
      "tree": "e2423a0338bf5d48f24bca1091e3069508f45f01",
      "parents": [
        "4b86a872561ad052bdc6f092a06807822d26beb1"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Tue Oct 16 23:27:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:55 2007 -0700"
      },
      "message": "NBD: allow hung network I/O to be cancelled\n\nAllow NBD I/O to be cancelled when a network outage occurs.  Previously, I/O\nwould just hang, and if enough I/O was hung in nbd, the system (at least\nuser-level) would completely hang until a TCP timeout (default, 15 minutes)\noccurred.\n\nThe patch introduces a new ioctl NBD_SET_TIMEOUT that allows a transmit\ntimeout value (in seconds) to be specified.  Any network send that exceeds the\ntimeout will be cancelled and the nbd connection will be shut down.  I\u0027ve\ntested with various timeout values and 6 seconds seems to be a good choice for\nthe timeout.  If the NBD_SET_TIMEOUT ioctl is not called, you get the old (I/O\nhang) behavior.\n\nSigned-off-by: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b39bb6548d60b9a18826134b5ccd5c3cef85fe2",
      "tree": "8521d13c8518d4baa0ecfe2f1031524edb47d4d9",
      "parents": [
        "792908225064b1d841a8990b9d1d1cfc4e0e5bb2"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Wed Dec 06 20:40:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:47 2006 -0800"
      },
      "message": "[PATCH] nbd: show nbd client pid in sysfs\n\nAllow nbd to expose the nbd-client daemon\u0027s PID in /sys/block/nbd\u003cx\u003e/pid.\n\nThis is helpful for tracking connection status of a device and for\ndetermining which nbd devices are currently in use.\n\nSigned-off-by: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c751c1dbb1289d220a8a175ba0df47706ce95a7e",
      "tree": "91072068ae634924575e01533367039e20e41e63",
      "parents": [
        "32e794015aa698fd6bf1ec21b713f900a707fb15"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Wed Oct 11 01:22:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:24 2006 -0700"
      },
      "message": "[PATCH] include linux/types.h in linux/nbd.h\n\nThe nbd header uses __be32 and such types but doesn\u0027t actually include the\nheader that defines these things (linux/types.h); so let\u0027s include it.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ad3bcf3146aa12f41262bb5dd1d9f1778e085b1",
      "tree": "ee96a92430d5684b81f22c7b7b142b416f1ebd44",
      "parents": [
        "21730eed11de42f22afcbd43f450a1872a0b5ea1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Jun 25 05:48:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:13 2006 -0700"
      },
      "message": "[PATCH] nbd: endian annotations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Paul Clements \u003cPaul.Clements@steeleye.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "90abbae2d35b3dc55fd39f8ab04acaf3da5cdc0a",
      "tree": "fff2d1966e8ac1bbf328fa156769722041a513a1",
      "parents": [
        "8e1515df578e4665b77d1e0eec3c8b041d159b23"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu May 04 02:55:50 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu May 04 02:55:50 2006 +0100"
      },
      "message": "Use __uXX types in user-visible structures in \u003clinux/nbd.h\u003e\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "82d4dc5adb0055393248ad4ab8de392fac708a12",
      "tree": "9827f519dc04c76138fac0ee90d1cc34ac9af24b",
      "parents": [
        "f85221dd74f2708b78a2aa54de59944e44206d0e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:13 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: drivers/block/nbd.c\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Clements \u003cPaul.Clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b2f0260c74324abca76ccaa42d426af163125e7",
      "tree": "881f76200dc3489b11497528feb72d6eae93bddb",
      "parents": [
        "bd6a59b22fd3bd044bb14978b885bcd042a10e8e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 06 00:09:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:20 2006 -0800"
      },
      "message": "[PATCH] nbd: fix TX/RX race condition\n\nJanos Haar of First NetCenter Bt.  reported numerous crashes involving the\nNBD driver.  With his help, this was tracked down to bogus bio vectors\nwhich in turn was the result of a race condition between the\nreceive/transmit routines in the NBD driver.\n\nThe bug manifests itself like this:\n\nCPU0\t\t\t\tCPU1\ndo_nbd_request\n\tadd req to queuelist\n\tnbd_send_request\n\t\tsend req head\n\t\tfor each bio\n\t\t\tkmap\n\t\t\tsend\n\t\t\t\tnbd_read_stat\n\t\t\t\t\tnbd_find_request\n\t\t\t\t\tnbd_end_request\n\t\t\tkunmap\n\nWhen CPU1 finishes nbd_end_request, the request and all its associated\nbio\u0027s are freed.  So when CPU0 calls kunmap whose argument is derived from\nthe last bio, it may crash.\n\nUnder normal circumstances, the race occurs only on the last bio.  However,\nif an error is encountered on the remote NBD server (such as an incorrect\nmagic number in the request), or if there were a bug in the server, it is\npossible for the nbd_end_request to occur any time after the request\u0027s\naddition to the queuelist.\n\nThe following patch fixes this problem by making sure that requests are not\nadded to the queuelist until after they have been completed transmission.\n\nIn order for the receiving side to be ready for responses involving\nrequests still being transmitted, the patch introduces the concept of the\nactive request.\n\nWhen a response matches the current active request, its processing is\ndelayed until after the tranmission has come to a stop.\n\nThis has been tested by Janos and it has been successful in curing this\nrace condition.\n\nFrom: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n\n  Here is an updated patch which removes the active_req wait in\n  nbd_clear_queue and the associated memory barrier.\n\n  I\u0027ve also clarified this in the comment.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: \u003cdjani22@dynamicweb.hu\u003e\nCc: Paul Clements \u003cPaul.Clements@SteelEye.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
