)]}'
{
  "log": [
    {
      "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": "e6f194d8f6f50da6837af637b2fd839c34185f7a",
      "tree": "f3c479a2bc24d49a150ff183e2614ee0f76cb366",
      "parents": [
        "7578634990fb47cc30083fbd812689aa6deacfc0",
        "b91421749a1840148d8c81637c03c0ace3f35269"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 22 11:36:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 22 11:36:49 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (60 commits)\n  [SCSI] libsas: make ATA functions selectable by a config option\n  [SCSI] bsg: unexport sg v3 helper functions\n  [SCSI] bsg: fix bsg_unregister_queue\n  [SCSI] bsg: make class backlinks\n  [SCSI] 3w-9xxx: add support for 9690SA\n  [SCSI] bsg: fix bsg_register_queue error path\n  [SCSI] ESP: Increase ESP_BUS_TIMEOUT to 275.\n  [SCSI] libsas: fix scr_read/write users and update the libata documentation\n  [SCSI] mpt fusion: update Kconfig help\n  [SCSI] scsi_transport_sas: add destructor for bsg\n  [SCSI] iscsi_tcp: buggered kmalloc()\n  [SCSI] qla2xxx: Update version number to 8.02.00-k2.\n  [SCSI] qla2xxx: Add ISP25XX support.\n  [SCSI] qla2xxx: Use pci_try_set_mwi().\n  [SCSI] qla2xxx: Use PCI-X/PCI-Express read control interfaces.\n  [SCSI] qla2xxx: Re-factor isp_operations to static structures.\n  [SCSI] qla2xxx: Validate mid-layer \u0027underflow\u0027 during check-condition handling.\n  [SCSI] qla2xxx: Correct setting of \u0027current\u0027 and \u0027supported\u0027 speeds during FDMI registration.\n  [SCSI] qla2xxx: Generalize iIDMA support.\n  [SCSI] qla2xxx: Generalize FW-Interface-2 support.\n  ...\n"
    },
    {
      "commit": "41e1703b9b88cf9b5e91cdd2f7dcded3ec3917cb",
      "tree": "a5bc5c4b61bfe3705758881d833f154b30695e14",
      "parents": [
        "df468820b6881fc14e50f6b2fcffd3e945417d68"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Sun Jul 22 10:06:50 2007 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Sun Jul 22 08:48:41 2007 -0500"
      },
      "message": "[SCSI] bsg: unexport sg v3 helper functions\n\nblk_fill_sghdr_rq, blk_unmap_sghdr_rq, and blk_complete_sghdr_rq were\nexported for bsg, however bsg was changed to support only sg v4.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "df468820b6881fc14e50f6b2fcffd3e945417d68",
      "tree": "d1c0adca77b728dae3f4653de0388202d4f5ee5a",
      "parents": [
        "39dca558a5b52b63e49bc234a7e887be092aa690"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Sat Jul 21 13:23:25 2007 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Sat Jul 21 08:58:41 2007 -0500"
      },
      "message": "[SCSI] bsg: fix bsg_unregister_queue\n\nscsi_sysfs_add_sdev ignores the bsg_register_queue failure, so\nbsg_unregister_queue must check whether the queue has a bsg device.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "39dca558a5b52b63e49bc234a7e887be092aa690",
      "tree": "31c3c412458e657fdbedc73f50b7de26c7ed0c4a",
      "parents": [
        "0e78d158b67fba3977f577f293c323359d80dd0e"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@steeleye.com",
        "time": "Fri Jul 20 18:22:17 2007 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Sat Jul 21 08:58:23 2007 -0500"
      },
      "message": "[SCSI] bsg: make class backlinks\n\nCurrently, bsg doesn\u0027t make class backlinks (a process whereby you\u0027d get\na link to bsg in the device directory in the same way you get one for\nsg).  This is because the bsg device is uninitialised, so the class\ndevice has nothing it can attach to.  The fix is to make the bsg device\npoint to the cdevice of the entity creating the bsg, necessitating\nchanging the bsg_register_queue() prototype into a form that takes the\ngeneric device.\n\nAcked-by: FUJITA Tomonori \u003ctomof@acm.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "6826ee4fdbe24c7aab56ce833ef94be81d190587",
      "tree": "4e14f18eec72bf421fde21abb3113880fe37c428",
      "parents": [
        "d73f5222a618a91452d41c29f5996ce3d9c63673"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@steeleye.com",
        "time": "Fri Jul 20 16:50:10 2007 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Sat Jul 21 08:53:33 2007 -0500"
      },
      "message": "[SCSI] bsg: fix bsg_register_queue error path\n\nunfortunately, if IS_ERR(class_dev) is true, that means class_dev isn\u0027t\nnull and the check in the error leg is pointless ... it\u0027s also asking\nfor trouble to request unregistration of a device we haven\u0027t actually\ncreated (although it works currently).  Fix by using explicit gotos and\nunregisters.\n\nAcked-by: FUJITA Tomonori \u003ctomof@acm.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "8350163a90f6003c9e60e8ebc0e00f654657645f",
      "tree": "8b6f2fe6c36e6b7e542530363f253a74cfc12e98",
      "parents": [
        "c2dea2d1fdbce86942dba0a968c523d8b7858bb5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Fri Jul 20 10:07:50 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jul 20 10:07:50 2007 +0200"
      },
      "message": "cfq: Write-only stuff in CFQ data structures\n\nThere are some leftover bits from the task cooperator patch, that was\nyanked out again. While it will get reintroduced, no point in having\nthis write-only stuff in the tree. So yank it.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c2dea2d1fdbce86942dba0a968c523d8b7858bb5",
      "tree": "c876b93785ee3b25c341be0dd5080a5176f27736",
      "parents": [
        "9a79b2274186fade17134929d4f85b70d59a3840"
      ],
      "author": {
        "name": "Vasily Tarasov",
        "email": "vtaras@openvz.org",
        "time": "Fri Jul 20 10:06:38 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jul 20 10:06:38 2007 +0200"
      },
      "message": "cfq: async queue allocation per priority\n\nIf we have two processes with different ioprio_class, but the same\nioprio_data, their async requests will fall into the same queue. I guess\nsuch behavior is not expected, because it\u0027s not right to put real-time\nrequests and best-effort requests in the same queue.\n\nThe attached patch fixes the problem by introducing additional *cfqq\nfields on cfqd, pointing to per-(class,priority) async queues.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "80ed71ce1a3369521c693ebf30abb9cfe1dc7e66",
      "tree": "f439b74804b10b04a34fe0c3f4c4597f1f7e890a",
      "parents": [
        "b02b6bc46571b21a545c9e697df1e226ff22bc81"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@steeleye.com",
        "time": "Thu Jul 19 10:15:10 2007 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Thu Jul 19 12:37:34 2007 -0500"
      },
      "message": "[SCSI] bsg: separate bsg and SCSI (so SCSI can be modular)\n\nThis patch moves the bsg registration into SCSI so that bsg no longer\nhas a dependency on the scsi_interface_register API.\n\nThis can be viewed as a temporary expedient until we can get universal\nbsg binding sorted out properly.  Also use the sdev bus_id as the\ngeneric bsg name (to avoid clashes with the queue name).\n\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "dd00cc486ab1c17049a535413d1751ef3482141c",
      "tree": "d90ff69ea06792b9284f2f2665c96624f121b88a",
      "parents": [
        "3b5ad0797c0e4049001f961a8b58f1d0ce532072"
      ],
      "author": {
        "name": "Yoann Padioleau",
        "email": "padator@wanadoo.fr",
        "time": "Thu Jul 19 01:49:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:50 2007 -0700"
      },
      "message": "some kmalloc/memset -\u003ekzalloc (tree wide)\n\nTransform some calls to kmalloc/memset to a single kzalloc (or kcalloc).\n\nHere is a short excerpt of the semantic patch performing\nthis transformation:\n\n@@\ntype T2;\nexpression x;\nidentifier f,fld;\nexpression E;\nexpression E1,E2;\nexpression e1,e2,e3,y;\nstatement S;\n@@\n\n x \u003d\n- kmalloc\n+ kzalloc\n  (E1,E2)\n  ...  when !\u003d \\(x-\u003efld\u003dE;\\|y\u003df(...,x,...);\\|f(...,x,...);\\|x\u003dE;\\|while(...) S\\|for(e1;e2;e3) S\\)\n- memset((T2)x,0,E1);\n\n@@\nexpression E1,E2,E3;\n@@\n\n- kzalloc(E1 * E2,E3)\n+ kcalloc(E1,E2,E3)\n\n[akpm@linux-foundation.org: get kcalloc args the right way around]\nSigned-off-by: Yoann Padioleau \u003cpadator@wanadoo.fr\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nAcked-by: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nAcked-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nAcked-by: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nAcked-by: Pierre Ossman \u003cdrzeus-list@drzeus.cx\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3d9071667752e5d419e59f76912ed3fb4a6bb9c",
      "tree": "e8787124dbe9bdd7e12d7c427c9ee6036cbe7783",
      "parents": [
        "6dfce901a450534d046b7950682243d5fb665783",
        "5d3a8cd34beb1521a2697c6ed7b647ef9bafdbf1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 15:26:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 15:26:31 2007 -0700"
      },
      "message": "Merge branch \u0027bsg\u0027 of git://git.kernel.dk/data/git/linux-2.6-block\n\n* \u0027bsg\u0027 of git://git.kernel.dk/data/git/linux-2.6-block:\n  bsg: fix missing space in version print\n  Don\u0027t define empty struct bsg_class_device if !CONFIG_BLK_DEV_BSG\n  bsg: Kconfig updates\n  bsg: minor cleanup\n  bsg: device hash table cleanup\n  bsg: fix initialization error handling bugs\n  bsg: mark FUJITA Tomonori as bsg maintainer\n  bsg: convert to dynamic major\n  bsg: address various review comments\n"
    },
    {
      "commit": "f4480240f700587c15507b7815e75989b16825b2",
      "tree": "96eac4ec200cf49cb1cbbdf185befca34d83b629",
      "parents": [
        "c6d4d63489f2e3ce38c80e7073952f0c58d4c2bc"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Jul 17 04:03:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:03 2007 -0700"
      },
      "message": "unregister_blkdev(): return void\n\nPut WARN_ON and fixed all callers of unregister_blkdev().  Now we can make\nunregister_blkdev return void.\n\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "294462a5c6c4fb9a6ced9cb5a368ff335f1b656e",
      "tree": "a73c650050ec3b84b09a87d349a738113be3c093",
      "parents": [
        "62239ac2b301abc397e70986649666cfb7835907"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Jul 17 04:03:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:03 2007 -0700"
      },
      "message": "unregister_blkdev(): do WARN_ON on failure\n\nWhen unregister_blkdev() has failed, something wrong happened.  This patch\nadds WARN_ON to notify of such badness.\n\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94f6030ca792c57422f04a73e7a872d8325946d3",
      "tree": "0197f24d82b1706f1b0521f2cf68feeff64123df",
      "parents": [
        "81cda6626178cd55297831296ba8ecedbfd8b52d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Jul 17 04:03:29 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:02 2007 -0700"
      },
      "message": "Slab allocators: Replace explicit zeroing with __GFP_ZERO\n\nkmalloc_node() and kmem_cache_alloc_node() were not available in a zeroing\nvariant in the past.  But with __GFP_ZERO it is possible now to do zeroing\nwhile allocating.\n\nUse __GFP_ZERO to remove the explicit clearing of memory via memset whereever\nwe can.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d3a8cd34beb1521a2697c6ed7b647ef9bafdbf1",
      "tree": "3bfa98575d89ffc1f30ef0b7a94f0abebae5e848",
      "parents": [
        "13bd59a111760bb7cba8dcf17b6b55a0d99d3592"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 15:10:09 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 15:10:09 2007 +0200"
      },
      "message": "bsg: fix missing space in version print\n\nTomo introduced a bug in his commit, removing the space between\n\"driver\" and \"version\" in the init printk.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "319a7b7fb98f6927d6eedeb627f72f54c377f9ce",
      "tree": "75a1ac4fb6ac83678d5744709b5e1fdfc9756824",
      "parents": [
        "0ed081ce203b0fd9a44763b70f41e36596f9b431"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 17 12:22:09 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 12:22:09 2007 +0200"
      },
      "message": "bsg: Kconfig updates\n\n- add the detailed explanation.\n- remove \u0027default y\u0027.\n- make \u0027EXPERIMENTAL\u0027 keyword visible to the user in menu.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0ed081ce203b0fd9a44763b70f41e36596f9b431",
      "tree": "0c38268308d14d67a697812bd3cf4623a65c3626",
      "parents": [
        "1c1133e1ff850279d604581af31a400c830b0393"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 17 12:21:35 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 12:21:35 2007 +0200"
      },
      "message": "bsg: minor cleanup\n\n- fix MODULE_DESCRIPTION typo.\n- unify MODULE_DESCRIPTION and bsg_version.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1c1133e1ff850279d604581af31a400c830b0393",
      "tree": "4bb102eed5593273405db2171a69ed86692db5ae",
      "parents": [
        "9b9f770cef0037fd0e4d623f31ddfa8acda38205"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 17 12:21:15 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 12:21:15 2007 +0200"
      },
      "message": "bsg: device hash table cleanup\n\n- kill unused bsg_list_idx macro.\n- add bsg_dev_idx_hash() that returns an appropriate hlist_head.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9b9f770cef0037fd0e4d623f31ddfa8acda38205",
      "tree": "a0b8937223df1e5a519375d1fa797157b4a930a2",
      "parents": [
        "5cdf7f7678493996a835ef2e627976de8f9d1f40"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 17 12:20:46 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 12:20:46 2007 +0200"
      },
      "message": "bsg: fix initialization error handling bugs\n\nThis fixes the following bugs and cleans up the initialization code:\n\n- cdev_del is missing.\n- unregister_chrdev_region should be used instead of unregister_chrdev.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "46f6ef4afc14ae1426883a973c18735cfcd70d8f",
      "tree": "2e05e160899c50a36e3872e6a31581b78cc5bd57",
      "parents": [
        "25fd164303cd69eb5adfe7668d2c146dcd866163"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 08:56:10 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 08:56:10 2007 +0200"
      },
      "message": "bsg: convert to dynamic major\n\n240 was hardcoded, that was clearly a dumb mistake. Convert bsg\nto use alloc_chrdev_region() to retrieve a dynamic major.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "25fd164303cd69eb5adfe7668d2c146dcd866163",
      "tree": "89d1d7a529a499b7adf3ed1986798f7d5b48bd05",
      "parents": [
        "a5fcaa210626a79465321e344c91a6a7dc3881fa"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 08:52:29 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 17 08:52:29 2007 +0200"
      },
      "message": "bsg: address various review comments\n\nThis address most of the comments made by Andrew. The two remaining\nare conversion to idr, and dynamic major.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "29417b899a77aaba1c060f5e123db4f50006f58a",
      "tree": "9862fdf04a4560787921b33a73952dd6aab1b816",
      "parents": [
        "a54890d7a6f37a4658294cbce650af4d1fabb8c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 16:52:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 16:53:22 2007 -0700"
      },
      "message": "Make BLK_DEV_BSG depend strictly on SCSI\u003dy\n\nThe SCSI code can be compiled modular, but BLK_DEV_BSG currently cannot,\nand depends on the SCSI layer.  So make sure that it depends on the SCSI\nlayer being compiled in, not just available as a module.\n\nNoticed by Jeff Garzik and S.Çağlar Onur.\n\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: S.Çağlar Onur \u003ccaglar@pardus.org.tr\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abce891a10559343d8ac9f79b46d78afdba63a40",
      "tree": "4aff21669025c0dbe9f8fc7cbdd727613c554526",
      "parents": [
        "10b275ddfd05ccb414cfe0cc56a0f47ff20fe807"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 11:18:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 11:18:23 2007 -0700"
      },
      "message": "Fix new generic block device SG compile\n\nWe had a merge issue with the \"dentry\" field going away from the\nkobject, and being replaced by a sysfs_dirent field (named \"sd\")\ninstead.  That broke the BSG compile.\n\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "58ff411e0d21592565ac9ab34f33a434f26e018b",
      "tree": "aeebc3f17d5f9ff67a18648a1352917e8731faae",
      "parents": [
        "15d10b611fa94b52f004a08a1d4cf7b39de3cba3"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 16 08:52:17 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:47 2007 +0200"
      },
      "message": "bsg: Kconfig updates\n\nThis updates bsg entry in Kconfig:\n\n- bsg supports sg v4\n- bsg depends on SCSI\n- it might be better to mark it experimental for a while\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "15d10b611fa94b52f004a08a1d4cf7b39de3cba3",
      "tree": "39b1e114689b71d37677e9733428b355d52d4e44",
      "parents": [
        "2c9ecdf40af0554ee9a2b1cbbbbdbc77f90a40e1"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 16 08:52:16 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:47 2007 +0200"
      },
      "message": "bsg: add SCSI transport-level request support\n\nThis enables bsg to handle SCSI transport-level request like SAS\nmanagement protocol (SMP).\n\n- add BSG_SUB_PROTOCOL_{SCSI_CMD, SCSI_TMF, SCSI_TRANSPORT} definitions.\n- SCSI transport-level requests skip blk_verify_command().\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2c9ecdf40af0554ee9a2b1cbbbbdbc77f90a40e1",
      "tree": "6cbf0efc9c2da5a4efdab62f78db968eb3555ef0",
      "parents": [
        "abae1fde63fcdd2a3abaa0d7930938d8326f83d2"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 16 08:52:15 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:47 2007 +0200"
      },
      "message": "bsg: add bidi support\n\nbsg uses the rq-\u003enext_rq pointer for a bidi request.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "abae1fde63fcdd2a3abaa0d7930938d8326f83d2",
      "tree": "4b61cd4e13b511229193549162607894badab984",
      "parents": [
        "efba1a31f3f8fe9672eb96cd26e97fb96891f1c0"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 16 08:52:14 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "add a struct request pointer to the request structure\n\nThis adds a struct request pointer to the request structure for the\nsecond data phase (bidi for now). A request queue supporting bidi\nrequests sets QUEUE_FLAG_BIDI. This prevents sending bidi requests to\na non-bidi queue.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "efba1a31f3f8fe9672eb96cd26e97fb96891f1c0",
      "tree": "052f4c58f618ef73cd2542425f618ac9b78410e7",
      "parents": [
        "e7d72173248c29c6f9ba14e40374266e1b954964"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Jun 07 13:24:06 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "bsg: fix the deadlock on discarding done commands\n\nThe previous commit introduced a deadlock in discarding commands,\nbecause we forget to unlock the bd spinlock.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e7d72173248c29c6f9ba14e40374266e1b954964",
      "tree": "5f4d14d210ca3d49d209942be0ce60e65a433ce7",
      "parents": [
        "4cf0723ac89b5f2189da2ad07ef875de26b83c77"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue May 08 15:32:03 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "bsg: fix a blocking read bug\n\nThis patch fixes a bug that read() returns ENODATA even with a\nblocking file descriptor when there are no commands pending.\n\nThis also includes some cleanups.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4cf0723ac89b5f2189da2ad07ef875de26b83c77",
      "tree": "24af887ee01094740f4e3c672bd614b9d5db69bc",
      "parents": [
        "292b7f27129272c9ec0ee5fa56abb6f9061b1d83"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Mar 30 11:19:39 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "bsg: minor bug fixes\n\nThis fixes the following minor issues:\n\n- add EXPORT_SYMBOL_GPL for bsg_register_queue and\nbsg_unregister_queue.\n\n- shut up gcc warnings\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003caxboe@nelson.home.kernel.dk\u003e\n"
    },
    {
      "commit": "292b7f27129272c9ec0ee5fa56abb6f9061b1d83",
      "tree": "58cfad3604e271fa40e23640170c4737c217c28b",
      "parents": [
        "4e2872d6b0252d33f28ea67f33704208ca781978"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Wed Mar 28 13:29:58 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "improve bsg device allocation\n\nThis patch addresses on two issues on bsg device allocation.\n\n- the current maxium number of bsg devices is 256. It\u0027s too small if\nwe allocate bsg devices to all SCSI devices, transport entities, etc.\nThis increses the maxium number to 32768 (taken from the sg driver).\n\n- SCSI devices are dynamically added and removed. Currently, bsg can\u0027t\nhandle it well since bsd_device-\u003eminor is simply increased.\n\nThis is dependent on the patchset that I posted yesterday:\n\nhttp://marc.info/?l\u003dlinux-scsi\u0026m\u003d117440208726755\u0026w\u003d2\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4e2872d6b0252d33f28ea67f33704208ca781978",
      "tree": "f65f01929d9a262d57e779705ff3cc643ad0ffd0",
      "parents": [
        "d351af01b9307566135cb0f355ca65d0952c10b5"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Wed Mar 28 13:29:24 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "bind bsg to all SCSI devices\n\nThis patch binds bsg to all SCSI devices (their request queues) like\nthe current sg driver does. We can send SCSI commands to non disk and\ncdrom scsi devices like OSD via bsg.\n\nThis patch removes bsg_register_queue from blk_register_queue so bsg\ndevices aren\u0027t bound to non SCSI block devices. If they want bsg, I\u0027ll\nsend a patch to do that.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d351af01b9307566135cb0f355ca65d0952c10b5",
      "tree": "6d6b964e5d6474f427907ca259e6c6ac76ed9d90",
      "parents": [
        "45e79a3acdcf54113b3d7b23e9e64e6541dbfeb5"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 09 12:40:35 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:46 2007 +0200"
      },
      "message": "bsg: bind bsg to request_queue instead of gendisk\n\nThis patch binds bsg devices to request_queue instead of gendisk. Any\nobjects (like transport entities) can define own request_handler and\ncreate own bsg device.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "45e79a3acdcf54113b3d7b23e9e64e6541dbfeb5",
      "tree": "b8e7598b26ce446577e162189e635f6b87b10a5b",
      "parents": [
        "7e75d73080d822d2bbbd5b0f7f293719dd1f9109"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Jul 09 12:39:20 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "bsg: add a request_queue argument to scsi_cmd_ioctl()\n\nbsg uses scsi_cmd_ioctl() for some SCSI/sg ioctl\ncommands. scsi_cmd_ioctl() gets a request queue from a gendisk\narguement. This prevents bsg being bound to SCSI devices that don\u0027t\nhave a gendisk (like OSD). This adds a request_queue argument to\nscsi_cmd_ioctl(). The SCSI/sg ioctl commands doesn\u0027t use a gendisk so\nit\u0027s safe for any SCSI devices to use scsi_cmd_ioctl().\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7e75d73080d822d2bbbd5b0f7f293719dd1f9109",
      "tree": "e4f352255de5dd985727486c4f922c38d5414782",
      "parents": [
        "264a0472183ce7ad05eea3360f5907880a1e5e78"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Wed Jan 24 09:05:54 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "bsg: simplify __bsg_alloc_command failpath\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "264a0472183ce7ad05eea3360f5907880a1e5e78",
      "tree": "ca66b08269fb08691059a4122e28ecfa3d90ef4f",
      "parents": [
        "5309cb38de65eddd5f7e125da750accf949f29e8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 23 16:30:17 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "bsg: add cheasy error checks for sysfs stuff\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5309cb38de65eddd5f7e125da750accf949f29e8",
      "tree": "911ee4e9d2c47ccd682505c8eb7d9e39ec889f8a",
      "parents": [
        "3862153b673516b2efa0447b9b3778f47ac8f8c8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 23 16:24:41 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "Add queue resizing support\n\nJust get rid of the preallocated command map, use the slab cache\nto get/free commands instead.\n\nOriginal patch from FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e,\nchanged by me to not use a mempool.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2ef7086a207d3d899ae88602a135fe1c24e1811f",
      "tree": "02ca9b8870b5635b90d7d19eaf7f4da600cfa9bd",
      "parents": [
        "b711afa6959e5c8f457f1687b5d4a485c7974f32"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Dec 20 11:26:11 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "bsg: silence a bogus gcc warning\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b711afa6959e5c8f457f1687b5d4a485c7974f32",
      "tree": "296c36a94b7077e3dab3d7e788a2851e0cbc3bf0",
      "parents": [
        "1594a3f0eb526c73bc3915e8da13f2abf0ea1acd"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Dec 20 11:25:23 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:45 2007 +0200"
      },
      "message": "bsg: style cleanup\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "10e8855b945193a62801429af3aab9f7e27ef56a",
      "tree": "cb58b35ad27f0c9ee6b7d1adab5ce6ca3a5bc918",
      "parents": [
        "70e36eceaf897da11aa0b4d82b46ca66e65a05f1"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Wed Dec 20 11:20:57 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "bsg: add SG_IO to SG v4\n\nThis adds SG_IO support to SG v4.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "70e36eceaf897da11aa0b4d82b46ca66e65a05f1",
      "tree": "c3d54741408168732e1695e42f03e6ecf8c89743",
      "parents": [
        "45977d0e87ac988d04fccfb89221727aaf8d78a4"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Wed Dec 20 11:20:15 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "bsg: replace SG v3 with SG v4\n\nThis patch replaces SG v3 in bsg with SG v4 (except for SG_IO).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "337ad41deae1b56e56731246322a93251df86e79",
      "tree": "961e38d42e8e7c99c4b48317e48010fa2446332e",
      "parents": [
        "9e69fbb5373f7c081acdf2b75d7bac7e95023dd1"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Wed Dec 20 11:18:54 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "block: export blk_verify_command for SG v4\n\nblk_fill_sghdr_rq doesn\u0027t work for SG v4 so verify_command needed to\nbe exported.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9e69fbb5373f7c081acdf2b75d7bac7e95023dd1",
      "tree": "09a6a738edc45acca50a3a94b3bdbea79c099992",
      "parents": [
        "ac6b91b8035bd269a1fd42474f907d107c074805"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Wed Dec 20 11:18:22 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "bsg: minor cleanups\n\nThis just kills linux/config.h and dprintk warnings.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ac6b91b8035bd269a1fd42474f907d107c074805",
      "tree": "275d86f1bd2ee22be7355f3cd4e0b9e3472b99d8",
      "parents": [
        "3d6392cfbd7dc11f23058e3493683afab4ac13a3"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Wed Dec 20 11:17:43 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "block: changes for blk_rq_unmap_user new API\n\nThis converts block/scsi_ioctl.c use blk_rq_unmap_user new\nAPI. blk_unmap_sghdr_rq is too simple and it might be better to remove\nit.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "3d6392cfbd7dc11f23058e3493683afab4ac13a3",
      "tree": "70c2b65c479f5feb7a5214a4a4930d489a069b1f",
      "parents": [
        "8f41958bdd577731f7411c9605cfaa9db6766809"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 09 12:38:05 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 08:52:44 2007 +0200"
      },
      "message": "bsg: support for full generic block layer SG v3\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "70cee26e020c1d74ff559c991b96c7b19fa4173b",
      "tree": "a2d73f170c8d7db29eaca27dbc06b6c6218a8f55",
      "parents": [
        "fd11d171e51a5b81c176d856d5df5612117e1a45"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias.kaehlcke@gmail.com",
        "time": "Tue Jul 10 12:26:24 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 13:43:32 2007 +0200"
      },
      "message": "Use list_for_each_entry() instead of list_for_each() in the block device\n\nelevator\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias.kaehlcke@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "16ed002f224738366c1809023ec70a71ae51421c",
      "tree": "6e87314b2758d776a8a46650d860f4c0793d69ec",
      "parents": [
        "15c31be4d5bd2402c6f5a288d56a24edc9252b71"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@linux01.gwdg.de",
        "time": "Tue Jul 10 12:24:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 13:43:27 2007 +0200"
      },
      "message": "Use menuconfigs instead of menus, so the whole menu can be disabled at once\n\ninstead of going through all options.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "15c31be4d5bd2402c6f5a288d56a24edc9252b71",
      "tree": "0fca6e97186080d83ff3f36bb359bcb4ef06a9e2",
      "parents": [
        "72d3a38ee083a96c09032e608a4c7e047ce26760"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 13:43:25 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 13:43:25 2007 +0200"
      },
      "message": "cfq-iosched: fix async queue behaviour\n\nWith the cfq_queue hash removal, we inadvertently got rid of the\nasync queue sharing. This was not intentional, in fact CFQ purposely\nshares the async queue per priority level to get good merging for\nasync writes.\n\nSo put some logic in cfq_get_queue() to track the shared queues.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f4b09303d00212ead0619db58d8ec8a0a7a94882",
      "tree": "43f37ba1c6afe058eac7cdd345cea04ff7b1a851",
      "parents": [
        "554988d6fe369719ae5b41255c577569ecf47c30"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Jun 19 09:18:13 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:03:33 2007 +0200"
      },
      "message": "[BLOCK] drop unnecessary bvec rewinding from flush_dry_bio_endio\n\nBarrier bios are completed twice - once after the barrier write itself\nis done and again after the whole sequence is complete.\nflush_dry_bio_endio() is for the first completion.  It doesn\u0027t really\ncomplete the bio.  It rewinds bvec and resets bio so that it can be\ncompleted again when the whole barrier sequence is complete.\n\nThe bvec rewinding code has the following problems.\n\n1. The rewinding code is wrong because filesystems may pass bvec with\n   non zero bv_offset.\n\n2. The block layer doesn\u0027t guarantee anything about the state of\n   bvec array on request completion.  bv_offset and len are updated\n   iff __end_that_request_first() completes the bvec partially.\n\nBecause of #2, #1 doesn\u0027t really matter (nobody cares whether bvec is\nre-wound correctly or not) but then again by not doing unwinding at\nall, we\u0027ll always give back the same bvec to the caller as full bvec\ncompletion doesn\u0027t alter bvecs and the final completion is always full\ncompletion.\n\nDrop unnecessary rewinding code.\n\nThis is spotted by Neil Brown.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "32eef964110985c5845472e07fa0a18838a970c4",
      "tree": "69a96d9757c72800e3d6479927e00316a4483361",
      "parents": [
        "7deeed13170e634adc4552ff94588d6301a3da83"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 19 09:09:27 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:03:32 2007 +0200"
      },
      "message": "blk_hw_contig_segment(): bad segment size checks\n\nTwo bugs in there:\n\n- The virt oversize check should use the current bio hardware back\n  size and the next bio front size, not the same bio. Spotted by\n  Neil Brown.\n\n- The segment size check should add hw front sizes, not total bio\n  sizes. Spotted by James Bottomley\n\nAcked-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bc90ba093af2e5022b9d055a2148b54a6aa35bc9",
      "tree": "d426fe3c3ef027ba4b159a4c15b5df6ba7700dce",
      "parents": [
        "e126c7b6bbb0c5b5fc3ecf2fd1ae67c803b747cc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jun 15 13:24:28 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jun 15 16:12:20 2007 -0700"
      },
      "message": "block: always requeue !fs requests at the front\n\nSCSI marks internal commands with REQ_PREEMPT and push it at the front\nof the request queue using blk_execute_rq().  When entering suspended\nor frozen state, SCSI devices are quiesced using\nscsi_device_quiesce().  In quiesced state, only REQ_PREEMPT requests\nare processed.  This is how SCSI blocks other requests out while\nsuspending and resuming.  As all internal commands are pushed at the\nfront of the queue, this usually works.\n\nUnfortunately, this interacts badly with ordered requeueing.  To\npreserve request order on requeueing (due to busy device, active EH or\nother failures), requests are sorted according to ordered sequence on\nrequeue if IO barrier is in progress.\n\nThe following sequence deadlocks.\n\n1. IO barrier sequence issues.\n\n2. Suspend requested.  Queue is quiesced with part or all of IO\n   barrier sequence at the front.\n\n3. During suspending or resuming, SCSI issues internal command which\n   gets deferred and requeued for some reason.  As the command is\n   issued after the IO barrier in #1, ordered requeueing code puts the\n   request after IO barrier sequence.\n\n4. The device is ready to process requests again but still is in\n   quiesced state and the first request of the queue isn\u0027t\n   REQ_PREEMPT, so command processing is deadlocked -\n   suspending/resuming waits for the issued request to complete while\n   the request can\u0027t be processed till device is put back into\n   running state by resuming.\n\nThis can be fixed by always putting !fs requests at the front when\nrequeueing.\n\nThe following thread reports this deadlock.\n\n  http://thread.gmane.org/gmane.linux.kernel/537473\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: David Greaves \u003cdavid@dgreaves.com\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ce7ad7b2d11fae2c3d285a6a0caea9322c0b8fc",
      "tree": "87d7423635821dae9f26d14c62f3314ec7bb3b17",
      "parents": [
        "86ce18d7b7925bfd6b64c061828ca2a857ee83b8"
      ],
      "author": {
        "name": "Kristen Carlson Accardi",
        "email": "kristen.c.accardi@intel.com",
        "time": "Wed May 23 13:57:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 23 20:14:12 2007 -0700"
      },
      "message": "genhd: send async notification on media change\n\nSend an uevent to user space to indicate that a media change event has\noccurred.\n\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "86ce18d7b7925bfd6b64c061828ca2a857ee83b8",
      "tree": "b753b7fd6d195aa7ed9eebc5a3917c5f20786260",
      "parents": [
        "352823160613b65fdaa558be486720a71f75ed86"
      ],
      "author": {
        "name": "Kristen Carlson Accardi",
        "email": "kristen.c.accardi@intel.com",
        "time": "Wed May 23 13:57:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 23 20:14:11 2007 -0700"
      },
      "message": "genhd: expose AN to user space\n\nAllow user space to determine if a disk supports Asynchronous Notification of\nmedia changes.  This is done by adding a new sysfs file \"capability_flags\",\nwhich is documented in (insert file name).  This sysfs file will export all\ndisk capabilities flags to user space.  We also define a new flag to define\nthe media change notification capability.\n\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f653c34dd3d8bde2c918316fd5ba2e2c4f95afcf",
      "tree": "9902c2ab3960211f1e6de00be759fd25b9fef34d",
      "parents": [
        "de7860c3f3272086a4c3a1b4280b11ffae7c32be"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 15 19:30:07 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 15 10:44:15 2007 -0700"
      },
      "message": "ll_rw_blk: fix gcc 4.2 warning on current_io_context()\n\ncurrent_io_context() is both static and exported with EXPORT_SYMBOL().\nAs there are no users outside of ll_rw_blk.c itself, just kill the\nexport.\n\nProblem reported by Martin Michlmayr \u003ctbm@cyrius.com\u003e\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d89d87965dcbe6fe4f96a2a7e8421b3a75f634d1",
      "tree": "8e87952d6e016192220aa090a8121e357a951d8f",
      "parents": [
        "129a84de2347002f09721cda3155ccfd19fade40"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Tue May 01 09:53:42 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri May 11 13:28:37 2007 +0200"
      },
      "message": "When stacked block devices are in-use (e.g. md or dm), the recursive calls\n\nto generic_make_request can use up a lot of space, and we would rather they\ndidn\u0027t.\n\nAs generic_make_request is a void function, and as it is generally not\nexpected that it will have any effect immediately, it is safe to delay any\ncall to generic_make_request until there is sufficient stack space\navailable.\n\nAs -\u003ebi_next is reserved for the driver to use, it can have no valid value\nwhen generic_make_request is called, and as __make_request implicitly\nassumes it will be NULL (ELEVATOR_BACK_MERGE fork of switch) we can be\ncertain that all callers set it to NULL.  We can therefore safely use\nbi_next to link pending requests together, providing we clear it before\nmaking the real call.\n\nSo, we choose to allow each thread to only be active in one\ngeneric_make_request at a time.  If a subsequent (recursive) call is made,\nthe bio is linked into a per-thread list, and is handled when the active\ncall completes.\n\nAs the list of pending bios is per-thread, there are no locking issues to\nworry about.\n\nI say above that it is \"safe to delay any call...\".  There are, however,\nsome behaviours of a make_request_fn which would make it unsafe.  These\ninclude any behaviour that assumes anything will have changed after a\nrecursive call to generic_make_request.\n\nThese could include:\n - waiting for that call to finish and call it\u0027s bi_end_io function.\n   md use to sometimes do this (marking the superblock dirty before\n   completing a write) but doesn\u0027t any more\n - inspecting the bio for fields that generic_make_request might\n   change, such as bi_sector or bi_bdev.  It is hard to see a good\n   reason for this, and I don\u0027t think anyone actually does it.\n - inspecing the queue to see if, e.g. it is \u0027full\u0027 yet.  Again, I\n   think this is very unlikely to be useful, or to be done.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: \u003cdm-devel@redhat.com\u003e\n\nAlasdair G Kergon \u003cagk@redhat.com\u003e said:\n\n I can see nothing wrong with this in principle.\n\n For device-mapper at the moment though it\u0027s essential that, while the bio\n mappings may now get delayed, they still get processed in exactly\n the same order as they were passed to generic_make_request().\n\n My main concern is whether the timing changes implicit in this patch\n will make the rare data-corrupting races in the existing snapshot code\n more likely. (I\u0027m working on a fix for these races, but the unfinished\n patch is already several hundred lines long.)\n\n It would be helpful if some people on this mailing list would test\n this patch in various scenarios and report back.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9a9136e270af14da506f66bcafcc506b86a86498",
      "tree": "b4d0a6877d92635134b7a944d0032fbc43227fd2",
      "parents": [
        "3960208f9ca0cf6bdb31c21c59ac0526303f8b34",
        "7bb2acb76e8168ca5d0bde5a5a56585a11b3525a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:54:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:54:17 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (25 commits)\n  sound: convert \"sound\" subdirectory to UTF-8\n  MAINTAINERS: Add cxacru website/mailing list\n  include files: convert \"include\" subdirectory to UTF-8\n  general: convert \"kernel\" subdirectory to UTF-8\n  documentation: convert the Documentation directory to UTF-8\n  Convert the toplevel files CREDITS and MAINTAINERS to UTF-8.\n  remove broken URLs from net drivers\u0027 output\n  Magic number prefix consistency change to Documentation/magic-number.txt\n  trivial: s/i_sem /i_mutex/\n  fix file specification in comments\n  drivers/base/platform.c: fix small typo in doc\n  misc doc and kconfig typos\n  Remove obsolete fat_cvf help text\n  Fix occurrences of \"the the \"\n  Fix minor typoes in kernel/module.c\n  Kconfig: Remove reference to external mqueue library\n  Kconfig: A couple of grammatical fixes in arch/i386/Kconfig\n  Correct comments in genrtc.c to refer to correct /proc file.\n  Fix more \"deprecated\" spellos.\n  Fix \"deprecated\" typoes.\n  ...\n\nFix trivial comment conflict in kernel/relay.c.\n"
    },
    {
      "commit": "8bb7844286fb8c9fce6f65d8288aeb09d03a5e0d",
      "tree": "f4e305edaedbde05774bb1e4acd89a9475661d2e",
      "parents": [
        "f37bc2712b54ec641e0c0c8634f1a4b61d9956c0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 09 02:35:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Add suspend-related notifications for CPU hotplug\n\nSince nonboot CPUs are now disabled after tasks and devices have been\nfrozen and the CPU hotplug infrastructure is used for this purpose, we need\nspecial CPU hotplug notifications that will help the CPU-hotplug-aware\nsubsystems distinguish normal CPU hotplug events from CPU hotplug events\nrelated to a system-wide suspend or resume operation in progress.  This\npatch introduces such notifications and causes them to be used during\nsuspend and resume transitions.  It also changes all of the\nCPU-hotplug-aware subsystems to take these notifications into consideration\n(for now they are handled in the same way as the corresponding \"normal\"\nones).\n\n[oleg@tv-sign.ru: cleanups]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28e53bddf814485699a4142bc056fd37d4e11dd4",
      "tree": "5182090c4cc2186eedbda3cb90ed82a2836f6ff6",
      "parents": [
        "5830c5902138f80b0a097b797200c739466beedd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed May 09 02:34:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:53 2007 -0700"
      },
      "message": "unify flush_work/flush_work_keventd and rename it to cancel_work_sync\n\nflush_work(wq, work) doesn\u0027t need the first parameter, we can use cwq-\u003ewq\n(this was possible from the very beginnig, I missed this).  So we can unify\nflush_work_keventd and flush_work.\n\nAlso, rename flush_work() to cancel_work_sync() and fix all callers.\nPerhaps this is not the best name, but \"flush_work\" is really bad.\n\n(akpm: this is why the earlier patches bypassed maintainers)\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e,\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19a75d83ffeab004cfcfac64024ad3997bac7220",
      "tree": "1a4c3d299527989cde6d87e18dd189cfb35749a8",
      "parents": [
        "a9df62c7585e6caa1e7d2425b2b14460ec3afc20"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed May 09 02:33:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:51 2007 -0700"
      },
      "message": "kblockd: use flush_work\n\nSwitch the kblockd flushing from a global flush to a more specific\nflush_work().\n\n(akpm: bypassed maintainers, sorry.  There are other patches which depend on\nthis)\n\nCc: \"Maciej W. Rozycki\" \u003cmacro@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dd2a345f8f002845636dbf5d2d768bb5cd8a5f59",
      "tree": "9ddbe34d18cf97496f4d3d582ed127fee0d96a01",
      "parents": [
        "0e7d18b57c39bedcbd181e3c06d13572b33e5380"
      ],
      "author": {
        "name": "Dave Gilbert",
        "email": "linux@treblig.org",
        "time": "Wed May 09 02:33:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:48 2007 -0700"
      },
      "message": "Display all possible partitions when the root filesystem failed to mount\n\nDisplay all possible partitions when the root filesystem is not mounted.\nThis helps to track spell\u0027o\u0027s and missing drivers.\n\nUpdated to work with newer kernels.\n\nExample output:\n\nVFS: Cannot open root device \"foobar\" or unknown-block(0,0)\nPlease append a correct \"root\u003d\" boot option; here are the available partitions:\n0800    8388608 sda driver: sd\n  0801     192748 sda1\n  0802    8193150 sda2\n0810    4194304 sdb driver: sd\nKernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)\n\n[akpm@linux-foundation.org: cleanups, fix printk warnings]\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nCc: Dave Gilbert \u003clinux@treblig.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59c51591a0ac7568824f541f57de967e88adaa07",
      "tree": "243d20eb0a26b76d5d312f39ec5a1ff60e036711",
      "parents": [
        "02a3e59a088749c08b0293ee1535f5bf48f5926c"
      ],
      "author": {
        "name": "Michael Opdenacker",
        "email": "michael@free-electrons.com",
        "time": "Wed May 09 08:57:56 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed May 09 08:57:56 2007 +0200"
      },
      "message": "Fix occurrences of \"the the \"\n\nSigned-off-by: Michael Opdenacker \u003cmichael@free-electrons.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "02a93208edec0d655c9f18613d830dc6afeda7d4",
      "tree": "3a48dbae348c02d4b108cb3fcc5f1600ad3dd53a",
      "parents": [
        "18062a91d2ddc40e19fc674afeb7cad58cfa23ab",
        "821de3a27bf33f11ec878562577c586cd5f83c64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:34:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:34:52 2007 -0700"
      },
      "message": "Merge branch \u0027for-2.6.22\u0027 of git://git.kernel.dk/data/git/linux-2.6-block\n\n* \u0027for-2.6.22\u0027 of git://git.kernel.dk/data/git/linux-2.6-block:\n  [PATCH] ll_rw_blk: fix missing bounce in blk_rq_map_kern()\n  [PATCH] splice: always call into page_cache_readahead()\n  [PATCH] splice(): fix interaction with readahead\n"
    },
    {
      "commit": "c6a632a2b610c1bc123f1d258d688e8fe5cc70dd",
      "tree": "b43e9dffcc1ad012955483f22141676f199f6930",
      "parents": [
        "e97cb3e28ce2fdd3b06a65f67d00462d86929008"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Tue May 08 00:26:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:03 2007 -0700"
      },
      "message": "as: fix antic_expire check\n\nFix units mismatch (jiffies vs msecs) in as-iosched.c, spotted by Xiaoning\nDing \u003cdingxn@cse.ohio-state.edu\u003e.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\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": "821de3a27bf33f11ec878562577c586cd5f83c64",
      "tree": "e18a967de53b5f5eb0c44ee59f1960b5169fd5bf",
      "parents": [
        "86aa5ac53e478c94ee39a15b6eadde1ed1317be3"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue May 08 19:12:23 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 08 19:12:23 2007 +0200"
      },
      "message": "[PATCH] ll_rw_blk: fix missing bounce in blk_rq_map_kern()\n\nI think we might just need the blk_map_kern users now. For the async\nexecute I added the bounce code already and the block SG_IO has it\natleady. I think the blk_map_kern bounce code got dropped because we\nthought the correct gfp_t would be passed in. But I think all we need is\nthe patch below and all the paths are take care of. The patch is not\ntested. Patch was made against scsi-misc.\n\nThe last place that is sending non sg commands may just be md/dm-emc.c\nbut that is is just waiting on alasdair to take some patches that fix\nthat and a bunch of junk in there including adding bounce support. If\nthe patch below is ok though and dm-emc finally gets converted then it\nwill have sg and bonce buffer support.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0a31bd5f2bbb6473ef9d24f0063ca91cfa678b64",
      "tree": "a945e829bf6bf7a93bf844b2ee9f2a3a2fa17c5d",
      "parents": [
        "5af60839909b8e3b28ca7cd7912fa0b23475617f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:49:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:55 2007 -0700"
      },
      "message": "KMEM_CACHE(): simplify slab cache creation\n\nThis patch provides a new macro\n\nKMEM_CACHE(\u003cstruct\u003e, \u003cflags\u003e)\n\nto simplify slab creation. KMEM_CACHE creates a slab with the name of the\nstruct, with the size of the struct and with the alignment of the struct.\nAdditional slab flags may be specified if necessary.\n\nExample\n\nstruct test_slab {\n\tint a,b,c;\n\tstruct list_head;\n} __cacheline_aligned_in_smp;\n\ntest_slab_cache \u003d KMEM_CACHE(test_slab, SLAB_PANIC)\n\nwill create a new slab named \"test_slab\" of the size sizeof(struct\ntest_slab) and aligned to the alignment of test slab.  If it fails then we\npanic.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f98393a64ca1392130724c3acb4e3f325801d2b6",
      "tree": "b02838bdf84156ac923bb37b6cf5f5ed6aaa3d48",
      "parents": [
        "0a27a14a62921b438bb6f33772690d345a089be6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sun May 06 14:49:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:55 2007 -0700"
      },
      "message": "mm: remove destroy_dirty_buffers from invalidate_bdev()\n\nRemove the destroy_dirty_buffers argument from invalidate_bdev(), it hasn\u0027t\nbeen used in 6 years (so akpm says).\n\nfind * -name \\*.[ch] | xargs grep -l invalidate_bdev |\nwhile read file; do\n\tquilt add $file;\n\tsed -ie \u0027s/invalidate_bdev(\\([^,]*\\),[^)]*)/invalidate_bdev(\\1)/g\u0027 $file;\ndone\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4f7a307dc6e4d8bfeb56f7cf7231b08cb845687c",
      "tree": "3bf90522c87fcb32373cb2a5ff25b1ead33405f5",
      "parents": [
        "fabb5c4e4a474ff0f7d6c1d3466a1b79bbce5f49",
        "7297824581755593535fc97d2c8b6c47e2dc2db6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat May 05 13:30:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat May 05 13:30:44 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (87 commits)\n  [SCSI] fusion: fix domain validation loops\n  [SCSI] qla2xxx: fix regression on sparc64\n  [SCSI] modalias for scsi devices\n  [SCSI] sg: cap reserved_size values at max_sectors\n  [SCSI] BusLogic: stop using check_region\n  [SCSI] tgt: fix rdma transfer bugs\n  [SCSI] aacraid: fix aacraid not finding device\n  [SCSI] aacraid: Correct SMC products in aacraid.txt\n  [SCSI] scsi_error.c: Add EH Start Unit retry\n  [SCSI] aacraid: [Fastboot] Panics for AACRAID driver during \u0027insmod\u0027 for kexec test.\n  [SCSI] ipr: Driver version to 2.3.2\n  [SCSI] ipr: Faster sg list fetch\n  [SCSI] ipr: Return better qc_issue errors\n  [SCSI] ipr: Disrupt device error\n  [SCSI] ipr: Improve async error logging level control\n  [SCSI] ipr: PCI unblock config access fix\n  [SCSI] ipr: Fix for oops following SATA request sense\n  [SCSI] ipr: Log error for SAS dual path switch\n  [SCSI] ipr: Enable logging of debug error data for all devices\n  [SCSI] ipr: Add new PCI-E IDs to device table\n  ...\n"
    },
    {
      "commit": "823bccfc4002296ba88c3ad0f049e1abd8108d30",
      "tree": "5338ae0b32409446af4cd00c5107d9405d5bf0b6",
      "parents": [
        "2609e7b9bebfd433254c02538ba803dc516ff674"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 13 13:15:19 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 02 18:57:59 2007 -0700"
      },
      "message": "remove \"struct subsystem\" as it is no longer needed\n\nWe need to work on cleaning up the relationship between kobjects, ksets and\nktypes.  The removal of \u0027struct subsystem\u0027 is the first step of this,\nespecially as it is not really needed at all.\n\nThanks to Kay for fixing the bugs in this patch.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "07e44708059010aa26c6a4c8ee6ff11743d04d4e",
      "tree": "06a249ed6100af3d89623237d2af5430d5fc0525",
      "parents": [
        "2a12dcd71a5e0667b33f7b47bcac95c71d551840",
        "597bc485d6906359ad667fc8ead5e5f0ede03a0a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:09:27 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:09:27 2007 +0200"
      },
      "message": "Merge branch \u0027cfq\u0027 into for-linus\n"
    },
    {
      "commit": "2a12dcd71a5e0667b33f7b47bcac95c71d551840",
      "tree": "8e0a8cb3eeef023bade8217693b289e5db22a846",
      "parents": [
        "5972511b77809cb7c9ccdb79b825c54921c5c546"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 26 14:41:53 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:08:17 2007 +0200"
      },
      "message": "[PATCH] elevator: elv_list_lock does not need irq disabling\n\nIt\u0027s never grabbed from irq context, so just make it plain spin_lock().\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "597bc485d6906359ad667fc8ead5e5f0ede03a0a",
      "tree": "f59303df8b17f51781adedc6320c9a14130a650e",
      "parents": [
        "4e521c27eee33cebd618c26649e2c93803004647"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 24 21:23:53 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:23 2007 +0200"
      },
      "message": "cfq-iosched: speedup cic rb lookup\n\nWe often lookup the same queue many times in succession, so cache\nthe last looked up queue to avoid browsing the rbtree.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4e521c27eee33cebd618c26649e2c93803004647",
      "tree": "0ad4b1e5df66da0848074cda47a79f7d7dae75f5",
      "parents": [
        "91fac317a34859986a2359a5a5c0e37dc17a9c3d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 24 21:17:33 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:23 2007 +0200"
      },
      "message": "ll_rw_blk: add io_context private pointer\n\nTo be used by as/cfq as they see fit.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "91fac317a34859986a2359a5a5c0e37dc17a9c3d",
      "tree": "353b8e5d3415e6244b8d2de67020bbbc94f2032c",
      "parents": [
        "cc19747977824ece6aa1c56a29e974fef5ec2b32"
      ],
      "author": {
        "name": "Vasily Tarasov",
        "email": "vtaras@openvz.org",
        "time": "Wed Apr 25 12:29:51 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:23 2007 +0200"
      },
      "message": "cfq-iosched: get rid of cfqq hash\n\ncfq hash is no more necessary.  We always can get cfqq from io context.\ncfq_get_io_context_noalloc() function is introduced, because we don\u0027t\nwant to allocate cic on merging and checking may_queue.  In order to\nidentify sync queue we\u0027ve used hash key \u003d CFQ_KEY_ASYNC. Since hash is\neliminated we need to use other criterion: sync flag for queue is added.\nIn all places where we dig in rb_tree we\u0027re in current context, so no\nadditional locking is required.\n\nAdvantages of this patch: no additional memory for hash, no seeking in\nhash, code is cleaner. But it is necessary now to seek cic in per-ioc\nrbtree, but it is faster:\n- most processes work only with few devices\n- most systems have only few block devices\n- it is a rb-tree\n\nSigned-off-by: Vasily Tarasov \u003cvtaras@openvz.org\u003e\n\nChanges by me:\n\n- Merge into CFQ devel branch\n- Get rid of cfq_get_io_context_noalloc()\n- Fix various bugs with dereferencing cic-\u003ecfqq[] with offset other\n  than 0 or 1.\n- Fix bug in cfqq setup, is_sync condition was reversed.\n- Fix bug where only bio_sync() is used, we need to check for a READ too\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "cc19747977824ece6aa1c56a29e974fef5ec2b32",
      "tree": "bbb07231a1323ddd007a11eb2683188492d2e26e",
      "parents": [
        "3ed9a2965c47636bc0ebafab31a39f1c105492ca"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 20 20:45:39 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:23 2007 +0200"
      },
      "message": "cfq-iosched: tighten queue request overlap condition\n\nFor tagged devices, allow overlap of requests if the idle window\nisn\u0027t enabled on the current active queue.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "3ed9a2965c47636bc0ebafab31a39f1c105492ca",
      "tree": "952c5f93f93b88c747f6e1fb15b87a973e7c5b8b",
      "parents": [
        "1be92f2fc7b563db3a8909d2d1c6a6520aeca323"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Apr 23 08:33:33 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:23 2007 +0200"
      },
      "message": "cfq-iosched: improve sync vs async workloads\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1be92f2fc7b563db3a8909d2d1c6a6520aeca323",
      "tree": "b3a7fa91a9483315cd86f423925946b3c38cc3c7",
      "parents": [
        "20e493a8d03b3b2f51b619a453f7bbbebedd6bda"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 19 14:32:26 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: never allow an async queue idling\n\nWe don\u0027t enable it by default, don\u0027t let it get enabled during\nruntime.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "20e493a8d03b3b2f51b619a453f7bbbebedd6bda",
      "tree": "766d1cccd84acac99a806f181a6f68682f5f0aec",
      "parents": [
        "6084cdda0ea4561feb68e00a8c50068bba98006d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Apr 23 08:26:36 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: get rid of -\u003edispatch_slice\n\nWe can track it fairly accurately locally, let the slice handling\ntake care of the rest.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6084cdda0ea4561feb68e00a8c50068bba98006d",
      "tree": "dbd67a2f12793c279bab18931389b9e45f33c3f7",
      "parents": [
        "edd75ffd92a5b7f6244431e8ff6c32b846f9ba86"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Apr 23 08:25:00 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: don\u0027t pass unused preemption variable around\n\nWe don\u0027t use it anymore in the slice expiry handling.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "edd75ffd92a5b7f6244431e8ff6c32b846f9ba86",
      "tree": "a6b8d9be552f7eeb36a66693339d3ea840f2904e",
      "parents": [
        "67e6b49e39e9b9bf5ce1351ef21dad391856183f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 19 12:03:34 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: get rid of -\u003ecur_rr and -\u003ecfq_list\n\nIt\u0027s only used for preemption now that the IDLE and RT queues also\nuse the rbtree. If we pass an \u0027add_front\u0027 variable to\ncfq_service_tree_add(), we can set -\u003erb_key to 0 to force insertion\nat the front of the tree.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "67e6b49e39e9b9bf5ce1351ef21dad391856183f",
      "tree": "d76faecedf52358b30d2e4de8cc0d0f0946763a3",
      "parents": [
        "498d3aa2b4f791059acd8c942ee8fa15c2ce36c2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 20 14:18:00 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: slice offset should take ioprio into account\n\nUse the max_slice-cur_slice as the multipler for the insertion offset.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "498d3aa2b4f791059acd8c942ee8fa15c2ce36c2",
      "tree": "4223b993fe6eb11a0ab57cec3961c237605362a2",
      "parents": [
        "67060e37994444ee9c0bd2413c8baa6cc58e7adb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 26 12:54:48 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "[PATCH] cfq-iosched: style cleanups and comments\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "67060e37994444ee9c0bd2413c8baa6cc58e7adb",
      "tree": "bdb012bf9a3527c73cc73fc43069c0abeb767b75",
      "parents": [
        "0c534e0a463e2eeafc97ba25ab23c14f3cdf2bdb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 18 20:13:32 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: sort IDLE queues into the rbtree\n\nSame treatment as the RT conversion, just put the sorted idle\nbranch at the end of the tree.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0c534e0a463e2eeafc97ba25ab23c14f3cdf2bdb",
      "tree": "20f3b12b05a853e9e52eaabead16a195d519501b",
      "parents": [
        "cc09e2990fdd96d25fdbb9db6bc9b4c82d9e4a3c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 18 20:01:57 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:22 2007 +0200"
      },
      "message": "cfq-iosched: sort RT queues into the rbtree\n\nCurrently CFQ does a linked insert into the current list for RT\nqueues. We can just factor the class into the rb insertion,\nand then we don\u0027t have to treat RT queues in a special way. It\u0027s\nfaster, too.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "cc09e2990fdd96d25fdbb9db6bc9b4c82d9e4a3c",
      "tree": "89c538c6182335592a981ded03fc120b616aef47",
      "parents": [
        "d9e7620e60bc6648c3dcabbc8d1a320b69c846f9"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 26 12:53:50 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:21 2007 +0200"
      },
      "message": "[PATCH] cfq-iosched: speed up rbtree handling\n\nFor cases where the rbtree is mainly used for sorting and min retrieval,\na nice speedup of the rbtree code is to maintain a cache of the leftmost\nnode in the tree.\n\nAlso spotted in the CFS CPU scheduler code.\n\nImproved by Alan D. Brunelle \u003cAlan.Brunelle@hp.com\u003e by updating the\nleftmost hint in cfq_rb_first() if it isn\u0027t set, instead of only\nupdating it on insert.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d9e7620e60bc6648c3dcabbc8d1a320b69c846f9",
      "tree": "450d0f92533184d85ac00ab1625460fe0be4cda7",
      "parents": [
        "1afba0451c83cbff622a08f2d86fbb2e680dfd5f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 20 14:27:50 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:21 2007 +0200"
      },
      "message": "cfq-iosched: rework the whole round-robin list concept\n\nDrawing on some inspiration from the CFS CPU scheduler design, overhaul\nthe pending cfq_queue concept list management. Currently CFQ uses a\ndoubly linked list per priority level for sorting and service uses.\nKill those lists and maintain an rbtree of cfq_queue\u0027s, sorted by when\nto service them.\n\nThis unfortunately means that the ionice levels aren\u0027t as strong\nanymore, will work on improving those later. We only scale the slice\ntime now, not the number of times we service. This means that latency\nis better (for all priority levels), but that the distinction between\nthe highest and lower levels aren\u0027t as big.\n\nThe diffstat speaks for itself.\n\n cfq-iosched.c |  363 +++++++++++++++++---------------------------------\n 1 file changed, 125 insertions(+), 238 deletions(-)\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1afba0451c83cbff622a08f2d86fbb2e680dfd5f",
      "tree": "7da7b97114b73d6d9788cf8663cd3aa28433c0dd",
      "parents": [
        "6d048f5310aa2dda2b5acd947eab3598c25e269f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 17 12:47:55 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:21 2007 +0200"
      },
      "message": "cfq-iosched: minor updates\n\n- Move the queue_new flag clear to when the queue is selected\n- Only select the non-first queue in cfq_get_best_queue(), if there\u0027s\n  a substantial difference between the best and first.\n- Get rid of -\u003ebusy_rr\n- Only select a close cooperator, if the current queue is known to take\n  a while to \"think\".\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6d048f5310aa2dda2b5acd947eab3598c25e269f",
      "tree": "4f0dbcd21b82dd015a908139fb4de3601b3d834a",
      "parents": [
        "1e3335de05da3dfbe48b8caa03db1834a2133256"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 25 12:44:27 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:21 2007 +0200"
      },
      "message": "cfq-iosched: development update\n\n- Implement logic for detecting cooperating processes, so we\n  choose the best available queue whenever possible.\n\n- Improve residual slice time accounting.\n\n- Remove dead code: we no longer see async requests coming in on\n  sync queues. That part was removed a long time ago. That means\n  that we can also remove the difference between cfq_cfqq_sync()\n  and cfq_cfqq_class_sync(), they are now indentical. And we can\n  kill the on_dispatch array, just make it a counter.\n\n- Allow a process to go into the current list, if it hasn\u0027t been\n  serviced in this scheduler tick yet.\n\nPossible future improvements including caching the cfqq lookup\nin cfq_close_cooperator(), so we don\u0027t have to look it up twice.\ncfq_get_best_queue() should just use that last decision instead\nof doing it again.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1e3335de05da3dfbe48b8caa03db1834a2133256",
      "tree": "3783ea1ef788f564a78754906dc508ac66595b75",
      "parents": [
        "b9099ff63c75216d6ca10bce5a1abcd9293c27e6"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Feb 14 19:59:49 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:01:21 2007 +0200"
      },
      "message": "cfq-iosched: improve preemption for cooperating tasks\n\nWhen testing the syslet async io approach, I discovered that CFQ\nsometimes didn\u0027t perform as well as expected. cfq_should_preempt()\nneeds to better check for cooperating tasks, so fix that by allowing\npreemption of an equal priority queue if the recently queued request\nis as good a candidate for IO as the one we are currently waiting for.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5044eed48886b105a123333fe7ca97c6bd496120",
      "tree": "76233c2b177d9be75d3e1278b89ea5d3f7d87fcf",
      "parents": [
        "a23cf14b161b8deeb0f701d577a0e8be6365e247"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 25 11:53:48 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Apr 25 08:41:48 2007 -0700"
      },
      "message": "cfq-iosched: fix alias + front merge bug\n\nThere\u0027s a really rare and obscure bug in CFQ, that causes a crash in\ncfq_dispatch_insert() due to rq \u003d\u003d NULL.  One example of the resulting\noops is seen here:\n\n\thttp://lkml.org/lkml/2007/4/15/41\n\nNeil correctly diagnosed the situation for how this can happen: if two\nconcurrent requests with the exact same sector number (due to direct IO\nor aliasing between MD and the raw device access), the alias handling\nwill add the request to the sortlist, but next_rq remains NULL.\n\nRead the more complete analysis at:\n\n\thttp://lkml.org/lkml/2007/4/25/57\n\nThis looks like it requires md to trigger, even though it should\npotentially be possible to due with O_DIRECT (at least if you edit the\nkernel and doctor some of the unplug calls).\n\nThe fix is to move the -\u003enext_rq update to when we add a request to the\nrbtree. Then we remove the possibility for a request to exist in the\nrbtree code, but not have -\u003enext_rq correctly updated.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a993800655ee516b6f6a6fc4c2ee13fedfb0590b",
      "tree": "023b362b4b30bddf2232ade83d162a84ac88f74b",
      "parents": [
        "46fcc86dd71d70211e965102fb69414c90381880"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 20 08:55:52 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Apr 20 22:56:29 2007 -0700"
      },
      "message": "cfq-iosched: fix sequential write regression\n\nWe have a 10-15% performance regression for sequential writes on TCQ/NCQ\nenabled drives in 2.6.21-rcX after the CFQ update went in.  It has been\nreported by Valerie Clement \u003cvalerie.clement@bull.net\u003e and the Intel\ntesting folks.  The regression is because of CFQ\u0027s now more aggressive\nqueue control, limiting the depth available to the device.\n\nThis patches fixes that regression by allowing a greater depth when only\none queue is busy.  It has been tested to not impact sync-vs-async\nworkloads too much - we still do a lot better than 2.6.20.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44ec95425c1d9dce6e4638c29e4362cfb44814e7",
      "tree": "6af593dc23a2f7cdb9a0d3ecc46d37aae640c0d8",
      "parents": [
        "1079a2d251f24a7d9e7576217f5f738bc4218337"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Feb 20 11:01:57 2007 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Tue Apr 17 18:09:56 2007 -0400"
      },
      "message": "[SCSI] sg: cap reserved_size values at max_sectors\n\nThis patch (as857) modifies the SG_GET_RESERVED_SIZE and\nSG_SET_RESERVED_SIZE ioctls in the sg driver, capping the values at\nthe device\u0027s request_queue\u0027s max_sectors value.  This will permit\ncdrecord to obtain a legal value for the maximum transfer length,\nfixing Bugzilla #7026.\n\nThe patch also caps the initial reserved_size value.  There\u0027s no\nreason to have a reserved buffer larger than max_sectors, since it\nwould be impossible to use the extra space.\n\nThe corresponding ioctls in the block layer are modified similarly,\nand the initial value for the reserved_size is set as large as\npossible.  This will effectively make it default to max_sectors.\nNote that the actual value is meaningless anyway, since block devices\ndon\u0027t have a reserved buffer.\n\nFinally, the BLKSECTGET ioctl is added to sg, so that there will be a\nuniform way for users to determine the actual max_sectors value for\nany raw SCSI transport.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nAcked-by: Douglas Gilbert \u003cdougg@torque.net\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "2363cc0264c42636e9e7622f78dde5c2f66beb8e",
      "tree": "33136de9f38ad6cfc7ce9b6d4d10f1227239a05b",
      "parents": [
        "c75fd0ee6e1750e6e527ed1d4aeee66739d9ad79"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Apr 04 19:08:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Apr 04 21:12:47 2007 -0700"
      },
      "message": "[PATCH] remove protection of LANANA-reserved majors\n\nRevert all this.  It can cause device-mapper to receive a different major from\nearlier kernels and it turns out that the Amanda backup program (via GNU tar,\napparently) checks major numbers on files when performing incremental backups.\n\nWhich is a bit broken of Amanda (or tar), but this feature isn\u0027t important\nenough to justify the churn.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ffb96c587fa2af0d690dc3548a4a781c477bfb7",
      "tree": "e813df1932a8f2ed55f9f5d5f35407a878620680",
      "parents": [
        "f772b3d9ca135087a70406d8466e57d1cf29237e"
      ],
      "author": {
        "name": "Thibaut VARENE",
        "email": "T-Bone@parisc-linux.org",
        "time": "Thu Mar 15 12:59:19 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 27 08:53:04 2007 +0200"
      },
      "message": "make elv_register() output atomic\n\nBooting 2.6.21-rc3-g45592145 I noticed the following on one of my\nmachines in the bootlog:\n\nio scheduler noop registered\u003c6\u003eTime: jiffies clocksource has been installed.\n\nio scheduler deadline registered (default)\n\nLooking at block/elevator.c, it appears that elv_register() uses two\nconsecutive printks in a non-atomic way, leading to the above glitch. The\nattached trivial patch fixes this issue, by using a single printk.\n\nSigned-off-by: Thibaut VARENE \u003cvarenet@parisc-linux.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f772b3d9ca135087a70406d8466e57d1cf29237e",
      "tree": "aeb26fbd7af4a522f267cd50e1ad227e54091ea0",
      "parents": [
        "703071b5b93d88d5acb0edd5b9dd86c69ad970f2"
      ],
      "author": {
        "name": "Vasily Tarasov",
        "email": "vtaras@openvz.org",
        "time": "Tue Mar 27 08:52:47 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 27 08:52:47 2007 +0200"
      },
      "message": "block: blk_max_pfn is somtimes wrong\n\nThere is a small problem in handling page bounce.\n\nAt the moment blk_max_pfn equals max_pfn, which is in fact not maximum\npossible _number_ of a page frame, but the _amount_ of page frames.  For\nexample for the 32bit x86 node with 4Gb RAM, max_pfn \u003d 0x100000, but not\n0xFFFF.\n\nrequest_queue structure has a member q-\u003ebounce_pfn and queue needs bounce\npages for the pages _above_ this limit.  This routine is handled by\nblk_queue_bounce(), where the following check is produced:\n\n\tif (q-\u003ebounce_pfn \u003e\u003d blk_max_pfn)\n\t\treturn;\n\nAssume, that a driver has set q-\u003ebounce_pfn to 0xFFFF, but blk_max_pfn\nequals 0x10000.  In such situation the check above fails and for each bio\nwe always fall down for iterating over pages tied to the bio.\n\nI want to notice, that for quite a big range of device drivers (ide, md,\n...) such problem doesn\u0027t happen because they use BLK_BOUNCE_ANY for\nbounce_pfn.  BLK_BOUNCE_ANY is defined as blk_max_pfn \u003c\u003c PAGE_SHIFT, and\nthen the check above doesn\u0027t fail.  But for other drivers, which obtain\nreuired value from drivers, it fails.  For example sata_nv uses\nATA_DMA_MASK or dev-\u003edma_mask.\n\nI propose to use (max_pfn - 1) for blk_max_pfn.  And the same for\nblk_max_low_pfn.  The patch also cleanses some checks related with\nbounce_pfn.\n\nSigned-off-by: Vasily Tarasov \u003cvtaras@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6d740cd5b18bc8128e70f98cfde8c74ebd21cea1",
      "tree": "c3283d3e98b04b66f1d8b15ff76dc7362ea12d2d",
      "parents": [
        "d5c1682f9f8f4aa064f81fda67ea7b91fd829512"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Feb 20 13:58:18 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 20 17:10:16 2007 -0800"
      },
      "message": "[PATCH] lockdep: annotate BLKPG_DEL_PARTITION\n\n\u003e\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e[ INFO: possible recursive locking detected ]\n\u003e2.6.19-1.2909.fc7 #1\n\u003e---------------------------------------------\n\u003eanaconda/587 is trying to acquire lock:\n\u003e (\u0026bdev-\u003ebd_mutex){--..}, at: [\u003cc05fb380\u003e] mutex_lock+0x21/0x24\n\u003e\n\u003ebut task is already holding lock:\n\u003e (\u0026bdev-\u003ebd_mutex){--..}, at: [\u003cc05fb380\u003e] mutex_lock+0x21/0x24\n\u003e\n\u003eother info that might help us debug this:\n\u003e1 lock held by anaconda/587:\n\u003e #0:  (\u0026bdev-\u003ebd_mutex){--..}, at: [\u003cc05fb380\u003e] mutex_lock+0x21/0x24\n\u003e\n\u003estack backtrace:\n\u003e [\u003cc0405812\u003e] show_trace_log_lvl+0x1a/0x2f\n\u003e [\u003cc0405db2\u003e] show_trace+0x12/0x14\n\u003e [\u003cc0405e36\u003e] dump_stack+0x16/0x18\n\u003e [\u003cc043bd84\u003e] __lock_acquire+0x116/0xa09\n\u003e [\u003cc043c960\u003e] lock_acquire+0x56/0x6f\n\u003e [\u003cc05fb1fa\u003e] __mutex_lock_slowpath+0xe5/0x24a\n\u003e [\u003cc05fb380\u003e] mutex_lock+0x21/0x24\n\u003e [\u003cc04d82fb\u003e] blkdev_ioctl+0x600/0x76d\n\u003e [\u003cc04946b1\u003e] block_ioctl+0x1b/0x1f\n\u003e [\u003cc047ed5a\u003e] do_ioctl+0x22/0x68\n\u003e [\u003cc047eff2\u003e] vfs_ioctl+0x252/0x265\n\u003e [\u003cc047f04e\u003e] sys_ioctl+0x49/0x63\n\u003e [\u003cc0404070\u003e] syscall_call+0x7/0xb\n\nAnnotate BLKPG_DEL_PARTITION\u0027s bd_mutex locking and add a little comment\nclarifying the bd_mutex locking, because I confused myself and initially\nthought the lock order was wrong too.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b446b60e4eb5e5457120c4728ada871b1209c1d0",
      "tree": "1fcff840a5cfb61399b9eac843d5b74e9e6b45e0",
      "parents": [
        "f4fa27c16ba9b6910c5b815e5c13a7e8249277f0"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Feb 20 13:57:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 20 17:10:13 2007 -0800"
      },
      "message": "[PATCH] rework reserved major handling\n\nSeveral people have reported failures in dynamic major device number handling\ndue to the recent changes in there to avoid handing out the local/experimental\nmajors.\n\nRolf reports that this is due to a gcc-4.1.0 bug.\n\nThe patch refactors that code a lot in an attempt to provoke the compiler into\nbehaving.\n\nCc: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8e14b950c9a9e2ec703df610e00ae8581040517",
      "tree": "3bef683bd128255a1178054fb43a1c8cb26fe9d0",
      "parents": [
        "3171470565cb422f295b18a92d0a9137a3ad5266"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Sat Feb 17 20:08:22 2007 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Feb 17 20:08:22 2007 +0100"
      },
      "message": "update I/O sched Kconfig help texts - CFQ is now default, not AS.\n\nChange I/O scheduler description to correctly show CFQ as being the default\nscheduler and not the anticipatory scheduler that previously was default.\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "2b8693c0617e972fc0b2fd1ebf8de97e15b656c3",
      "tree": "3eb7dfbc8d5e4031e4992bdd566e211f5ada71f3",
      "parents": [
        "5dfe4c964a0dd7bb3a1d64a4166835a153146207"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:45 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 3\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fdf892be32d84a1745fa0aee5fc60517421b8038",
      "tree": "35adb4e95219273ed681e0fa332a86b15cde731e",
      "parents": [
        "215122e1110f97a3f478829049b9840cf8fdde57"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Feb 12 00:51:44 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:27 2007 -0800"
      },
      "message": "[PATCH] register_blkdev(): don\u0027t hand out the LOCAL/EXPERIMENTAL majors\n\nAs pointed out in http://bugzilla.kernel.org/show_bug.cgi?id\u003d7922, dynamic\nblockdev major allocation can hand out majors which LANANA has defined as\nbeing for local/experimental use.\n\nCc: Torben Mathiasen \u003cdevice@lanana.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Tomas Klas \u003ctomas.klas@mepatek.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "9ede209e83693cf3f6b64f61ab4b65f2f809cb50"
}
