)]}'
{
  "log": [
    {
      "commit": "48f15b93b2c9f4ec9b8af08ab78f7a27db7c8378",
      "tree": "8fc5a20c743fe7e223502a08b9b15d31912ef7de",
      "parents": [
        "2f56debd77a8f52f1ac1d3c3d89cc7ce5e083230"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Sat Feb 23 15:23:50 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:15 2008 -0800"
      },
      "message": "NBD: make nbd default to deadline I/O scheduler\n\nNBD doesn\u0027t work well with CFQ (or AS) schedulers, so let\u0027s default to\nsomething else.\n\nThe two problems I have experienced with nbd and cfq are:\n\n1) nbd hangs with cfq on RHEL 5 (2.6.18) -- this may well have been\n   fixed\n\n   There\u0027s a similar debian bug that has been filed as well:\n\n   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d447638\n\n   There have been posts to nbd-general mailing list about problems with\n   cfq and nbd also.\n\n2) nbd performs about 10% better (the last time I tested) with deadline\n   vs.  cfq (the overhead of cfq doesn\u0027t provide much advantage to nbd [not\n   being a real disk], and you end up going through the I/O scheduler on\n   the nbd server anyway, so it makes sense that deadline is better with\n   nbd)\n\nSigned-off-by: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\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": "097c94a4e8bde978c8d12683d9a34048e9139e4b",
      "tree": "1a90401134c5543dd78135f372842c9f5b232b58",
      "parents": [
        "1c5093ba036b5e1a4befdcd6036d241178a720a8"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Dec 11 17:44:06 2007 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:36:37 2008 +0100"
      },
      "message": "blk_end_request: changing nbd (take 4)\n\nThis patch converts nbd to use blk_end_request interfaces.\nRelated \u0027uptodate\u0027 arguments are converted to \u0027error\u0027.\n\nCc: Paul Clements \u003cPaul.Clements@steeleye.com\u003e\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "edfaa7c36574f1bf09c65ad602412db9da5f96bf",
      "tree": "d591b80ff9229e4845e41d68e2f4c5aadb017027",
      "parents": [
        "09f82ea92822a7bbb7e816508abbda47ed54a77f"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Mon May 21 22:08:01 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:36 2008 -0800"
      },
      "message": "Driver core: convert block from raw kobjects to core devices\n\nThis moves the block devices to /sys/class/block. It will create a\nflat list of all block devices, with the disks and partitions in one\ndirectory. For compatibility /sys/block is created and contains symlinks\nto the disks.\n\n  /sys/class/block\n  |-- sda -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda\n  |-- sda1 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1\n  |-- sda10 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10\n  |-- sda5 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5\n  |-- sda6 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6\n  |-- sda7 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7\n  |-- sda8 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8\n  |-- sda9 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9\n  `-- sr0 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0\n\n  /sys/block/\n  |-- sda -\u003e ../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda\n  `-- sr0 -\u003e ../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "91cf45f02af5c871251165d000c3f42a2a0b0552",
      "tree": "0e4c0a9f624732d47a46301a394e799dab48afe0",
      "parents": [
        "62768e28d606c10ba54217f908123de34dad9374"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 12 18:10:39 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 12 18:10:39 2007 -0800"
      },
      "message": "[NET]: Add the helper kernel_sock_shutdown()\n\n...and fix a couple of bugs in the NBD, CIFS and OCFS2 socket handlers.\n\nLooking at the sock-\u003eop-\u003eshutdown() handlers, it looks as if all of them\ntake a SHUT_RD/SHUT_WR/SHUT_RDWR argument instead of the\nRCV_SHUTDOWN/SEND_SHUTDOWN arguments.\nAdd a helper, and then define the SHUT_* enum to ensure that kernel users\nof shutdown() don\u0027t get confused.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nAcked-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d489202ea2d5460a0fe638854eb3d3e63aa902fb",
      "tree": "8f12d378a17e91fce9a6e59c5e0e169d972e60ec",
      "parents": [
        "e9534b3fd7843d1bd5a7a1fe2474a09f72d41ab8"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Sat Oct 20 02:18:21 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 20 02:18:21 2007 +0200"
      },
      "message": "remove unused return within void return function\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "ba25f9dcc4ea6e30839fcab5a5516f2176d5bfed",
      "tree": "3123c03b25dd5c0cd24b6ab4fc16731217838157",
      "parents": [
        "9a2e70572e94e21e7ec4186702d045415422bda0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Oct 18 23:40:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:43 2007 -0700"
      },
      "message": "Use helpers to obtain task pid in printks\n\nThe task_struct-\u003epid member is going to be deprecated, so start\nusing the helpers (task_pid_nr/task_pid_vnr/task_pid_nr_ns) in\nthe kernel.\n\nThe first thing to start with is the pid, printed to dmesg - in\nthis case we may safely use task_pid_nr(). Besides, printks produce\nmore (much more) than a half of all the explicit pid usage.\n\n[akpm@linux-foundation.org: git-drm went and changed lots of stuff]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\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": "4b86a872561ad052bdc6f092a06807822d26beb1",
      "tree": "4a7af69e0a6d8b74f17c0034b173bc45896d8f08",
      "parents": [
        "dff4982f5cd4e30e2a140a3bca95d8814115bf5b"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Tue Oct 16 23:27:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:55 2007 -0700"
      },
      "message": "NBD: set uninitialized devices to size 0\n\nThis fixes errors with utilities (such as LVM\u0027s vgscan) that try to scan all\ndevices.  Previously this would generate read errors when uninitialized nbd\ndevices were scanned:\n\n# vgscan\n   Reading all physical volumes.  This may take a while...\n   /dev/nbd0: read failed after 0 of 1024 at 0: Input/output error\n   /dev/nbd0: read failed after 0 of 1024 at 509804544: Input/output error\n   /dev/nbd0: read failed after 0 of 2048 at 0: Input/output error\n   /dev/nbd1: read failed after 0 of 1024 at 509804544: Input/output error\n   /dev/nbd1: read failed after 0 of 2048 at 0: Input/output error\n\n From now on, uninitialized nbd devices will have size zero, which\nprevents these errors.\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": "0cbc591bf884a5662b2fbb21b5c09fa1c1c7b579",
      "tree": "23b5e92aaa2d8c74a4501d39275431b272341cac",
      "parents": [
        "d2c9740b499f959ed513375b6e35c2ab161921cb"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "nbd: change a parameter\u0027s type to remove a memcpy call\n\nThis memcpy looks so strange, in fact it\u0027s merely a pointer dereference, so I\nchange the parameter\u0027s type to refer it more directly, this could make the\nmemcpy not needed anymore.\n\nIn the function nbd_read_stat where nbd_find_request is only once called, the\nparameter served should be transformed accordingly.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\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": "d2c9740b499f959ed513375b6e35c2ab161921cb",
      "tree": "a7add684a7cf1dcfd5ff8d3ce60e071fca55cf80",
      "parents": [
        "04fc8bbcf5eb25fa2aec290b302a9878dde20168"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "nbd: use list_for_each_entry_safe to make it more consolidated and readable\n\nThus the traverse of the loop may delete nodes, use the safe version.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\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": "6c92e699b56287da582ccb12a64b959b6d6109ba",
      "tree": "ac8c9f26640ff8b35cd96f8222f8ce84ba2c53e5",
      "parents": [
        "bc1c56fde6dd1c85e2047c276456c07bd4508b5c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Aug 16 13:43:12 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Fixup rq_for_each_segment() indentation\n\nRemove one level of nesting where appropriate.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5705f7021748a69d84d6567e68e8851dab551464",
      "tree": "5a6dbc8fc6055c0334f4a97540e36a7844b9c482",
      "parents": [
        "9dfa52831e96194b8649613e3131baa2c109f7dc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 25 12:35:59 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Introduce rq_for_each_segment replacing rq_for_each_bio\n\nEvery usage of rq_for_each_bio wraps a usage of\nbio_for_each_segment, so these can be combined into\nrq_for_each_segment.\n\nWe define \"struct req_iterator\" to hold the \u0027bio\u0027 and \u0027index\u0027 that\nare needed for the double iteration.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\nVarious compile fixes by me...\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "be0ef957c9eed4ebae873ee3fbcfb9dfde486dec",
      "tree": "db0f0f9b029c2fbaddf74de0417658ae35bf6c5c",
      "parents": [
        "3e1ac130d08b0c7066615fe60fe1e7212c8eaf6a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Jul 15 23:41:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:50 2007 -0700"
      },
      "message": "nbd.c: sock_xmit: cleanup signal related code\n\nsock_xmit() re-implements sigprocmask() and dequeue_signal_lock().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-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": "e654bc4393e85e326993256d80b9710a4d6411ff",
      "tree": "bf30413fd62f778e4c9abd8bc92e7a399ac37e53",
      "parents": [
        "9cff3b383dad193b0762c27278a16237e10b53dc"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Wed Jun 20 13:53:23 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:03:34 2007 +0200"
      },
      "message": "[PATCH] fix request-\u003ecmd \u003d\u003d INT cases\n\n - I have unearthed very old bugs in stale drivers that still\n   used request-\u003ecmd as a READ|WRITE int\n - This patch is maybe a proof that these drivers have not been\n   used for a long time. Should they be removed completely?\n\nDrivers that currently do not work for sure:\n drivers/acorn/block/fd1772.c |    2 +-\n drivers/acorn/block/mfmhd.c  |    8 ++++----\n drivers/cdrom/aztcd.c        |    2 +-\n drivers/cdrom/cm206.c        |    2 +-\n drivers/cdrom/gscd.c         |    2 +-\n drivers/cdrom/mcdx.c         |    2 +-\n drivers/cdrom/optcd.c        |    2 +-\n drivers/cdrom/sjcd.c         |    2 +-\n\nDrivers with cosmetic fixes only:\n  b/drivers/block/amiflop.c\n  b/drivers/block/nbd.c\n  b/drivers/ide/legacy/hd.c\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "84963048ca8093e0aa71ac90c2a5fe7af5f617c3",
      "tree": "336e616e2e51bcf74010d33dc331484f30676fca",
      "parents": [
        "b8cb34481edfee6692c83d3b283e29820e840280"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed May 09 02:33:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:49 2007 -0700"
      },
      "message": "nbd: check the return value of sysfs_create_file\n\n[akpm@linux-foundation.org: fix it]\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\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": "17506041de973bdc718b9a255d822e571b12b421",
      "tree": "ae01f1c22b7c43c57426bf40ed6ef3ba2d5e5d48",
      "parents": [
        "e9536ae7205d255bc94616b72910fc6e16c861fe"
      ],
      "author": {
        "name": "Josef Sipek",
        "email": "jsipek@fsl.cs.sunysb.edu",
        "time": "Fri Dec 08 02:37:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:47 2006 -0800"
      },
      "message": "[PATCH] struct path: convert nbd\n\nSigned-off-by: Josef Sipek \u003cjsipek@fsl.cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.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": "4aff5e2333c9a1609662f2091f55c3f6fffdad36",
      "tree": "b73d8c2b7c1bdc03d3313c108da7dfc95ee95525",
      "parents": [
        "77ed74da26f50fa28471571ee7a2251b77526d84"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Aug 10 08:44:47 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:23:37 2006 +0200"
      },
      "message": "[PATCH] Split struct request -\u003eflags into two parts\n\nRight now -\u003eflags is a bit of a mess: some are request types, and\nothers are just modifiers. Clean this up by splitting it into\n-\u003ecmd_type and -\u003ecmd_flags. This allows introduction of generic\nLinux block message types, useful for sending generic Linux commands\nto block devices.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "f0df33bcab4b687f0f18b9ebd69d374642e46a0e",
      "tree": "808ecf0e290eb67063fd1d42af53ed611b486590",
      "parents": [
        "e4b57e0842621f597d744b193ea325d62724596b"
      ],
      "author": {
        "name": "Michal Feix",
        "email": "michal.feix@firma.seznam.cz",
        "time": "Sun Jul 30 03:03:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 31 13:28:39 2006 -0700"
      },
      "message": "[PATCH] nbd: Abort request on data reception failure\n\nWhen reading from nbd device, we need to receive all the data after\nreceiving reply packet from the server - otherwise such request will never\nbe ended.\n\nIf socket is closed right after accepting reply control packet and in the\nmiddle of waiting for read data, nbd_read_stat() returns NULL and\nnbd_end_request() is not called.\n\nThis patch fixes it.\n\nSigned-off-by: Michal Feix \u003cmichal@feix.cz\u003e\nAcked-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": "e4b57e0842621f597d744b193ea325d62724596b",
      "tree": "0cb75aac6d4452d95dfe8ab1931bed45b1246bb9",
      "parents": [
        "8e185d83398b2708f50207bc12d0e0a70bd70767"
      ],
      "author": {
        "name": "Michal Feix",
        "email": "michal@feix.cz",
        "time": "Sun Jul 30 03:03:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 31 13:28:39 2006 -0700"
      },
      "message": "[PATCH] nbd: Check magic before doing anything else\n\nWe should check magic sequence in reply packet before trying to find\nrequest with it\u0027s request handle.  This also solves the problem with\n\"Unexpected reply\" message beeing logged, when packet with invalid magic is\nreceived.\n\nSigned-off-by: Michal Feix \u003cmichal@feix.cz\u003e\nAcked-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": "9c7a41691f37a1538a88e5eb9b0b73df1f834542",
      "tree": "b18c4358c56ec2d3866206660ce0be966489a1c8",
      "parents": [
        "f47634b276db6956998350e5fc26a0673fdb125c"
      ],
      "author": {
        "name": "Ingo van Lil",
        "email": "inguin@gmx.de",
        "time": "Sat Jul 01 04:36:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 01 09:56:04 2006 -0700"
      },
      "message": "[PATCH] drivers/block/nbd.c compile fix\n\nThe Network Block Device driver doesn\u0027t compile if NDEBUG is defined.\n\nSigned-off-by: Ingo van Lil \u003cinguin@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce7b0f46bbf4bff8daab2dd3d878b9e72a623d09",
      "tree": "7a860cf52fbf1ff768197702af60a8329d296dff",
      "parents": [
        "96192ff1a9d0c6ef365d21667080259d83ea2f5b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n\nAnd remove the now unneeded number field.\nAlso fixes all drivers that set these fields.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ff23eca3e8f613034e0d20ff86f6a89b62f5a14e",
      "tree": "826285f5daa660001d38cac6baaf34411fd40131",
      "parents": [
        "8ab5e4c15b53e147c08031a959d9f776823dbe73"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree\n\nAlso fixes up all files that #include it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8ab5e4c15b53e147c08031a959d9f776823dbe73",
      "tree": "b851d4c1fdbd396379279e4475f7f778a667a208",
      "parents": [
        "7c69ef79741910883d5543caafa06aca3ebadbd1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:07 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_remove() function from the kernel tree\n\nRemoves the devfs_remove() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "95dc112a5770dc670a1b45a3d9ee346fdd2b2697",
      "tree": "899cd99bdc928ade94ddc7b003b0de7d275cac48",
      "parents": [
        "0e6c62da7cd929b0389fc4a7e41464bb738647dc"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:06 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree\n\nRemoves the devfs_mk_dir() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "dbf492d6c1a1bf5a8bda40274f479119f4c42ca4",
      "tree": "21f63aa351d91c6991f41a9b9d04c7d543837c51",
      "parents": [
        "83cc5ed3c4c65fc4c3729a5cec2111ede1ebf85e"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sun Jun 25 05:47:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:06 2006 -0700"
      },
      "message": "[PATCH] nbd: kill obsolete changelog, add GPL\n\nnbd abuses file header as a changelog (and obsolete one, too), and fails to\nmention GPL.  This fixes it.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: \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": "5b7b18ccdeb17dcc4a2ddbf4ce87094c7365f4b9",
      "tree": "cf60c476ba42f3e8aad609d0248b61074f5d65be",
      "parents": [
        "1aef821a6b3aeca8c19d06aee012ed9db617d1e3"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Mar 25 03:07:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:52 2006 -0800"
      },
      "message": "[PATCH] drivers/block/nbd.c: don\u0027t defer compile error to runtime\n\nIf we can detect a problem at compile time, the compilation should fail.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.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": "9fa37fd1627ec804e57ae0388555719b03b39f20",
      "tree": "869e4b4d8feb2e3ce240fa32cfa549ab61115153",
      "parents": [
        "a885c8c4316e1c1d2d2c8755da3f3d14f852528d"
      ],
      "author": {
        "name": "taneli.vahakangas@netsonic.fi",
        "email": "taneli.vahakangas@netsonic.fi",
        "time": "Sun Jan 08 01:03:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:54 2006 -0800"
      },
      "message": "[PATCH] nbd: remove duplicate assignment\n\n      \u003cstuartm@connecttech.com\u003e\n\nSent by Paul Clements \u003cpaul.clements@steeleye.com\u003e, who needs to read\nDocumentation/SubmittingPatches..\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d99cf9d679a520d67f81d805b7cb91c68e1847f0",
      "tree": "415aefe6d168df27c006fcc53b1ea5242eabaaea",
      "parents": [
        "7ed40918a386afc2e14a6d3da563ea6d13686c25",
        "e650c305ec3178818b317dad37a6d9c7fa8ba28d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "message": "Merge branch \u0027post-2.6.15\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\nManual fixup for merge with Jens\u0027 \"Suspend support for libata\", commit\nID 9b847548663ef1039dd49f0eb4463d001e596bc3.\n\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": "8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2",
      "tree": "a478b9acef5c66242a964154f7ad3a0ea750ef0f",
      "parents": [
        "64100099ed22f71cce656c5c2caecf5c9cf255dc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "message": "[BLOCK] add @uptodate to end_that_request_last() and @error to rq_end_io_fn()\n\nadd @uptodate argument to end_that_request_last() and @error\nto rq_end_io_fn().  there\u0027s no generic way to pass error code\nto request completion function, making generic error handling\nof non-fs request difficult (rq-\u003eerrors is driver-specific and\neach driver uses it differently).  this patch adds @uptodate\nto end_that_request_last() and @error to rq_end_io_fn().\n\nfor fs requests, this doesn\u0027t really matter, so just using the\nsame uptodate argument used in the last call to\nend_that_request_first() should suffice.  imho, this can also\nhelp the generic command-carrying request jens is working on.\n\nSigned-off-by: tejun heo \u003chtejun@gmail.com\u003e\nSigned-Off-By: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "40be0c28b33ff0821594a3fa7126354dfe6eccd1",
      "tree": "a62e93e866a2c7fdbe732adb634a6bba294beded",
      "parents": [
        "4750e2c0c59e0c84c6c036b3d96ebd88365ae7ee"
      ],
      "author": {
        "name": "Lars Marowsky-Bree",
        "email": "lmb@suse.de",
        "time": "Sun May 01 08:59:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:59:07 2005 -0700"
      },
      "message": "[PATCH] nbd: Don\u0027t create all MAX_NBD devices by default all the time\n\nThis patches adds the \"nbds_max\" parameter to the nbd kernel module, which\nlimits the number of nbds allocated.  Previously, always all 128 entries\nwere allocated unconditionally, which used to waste resources and\nneedlessly flood the hotplug system with events.  (Defaults to 16 now.)\n\nSigned-off-by: Lars Marowsky-Bree \u003clmb@suse.de\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"
    }
  ]
}
