)]}'
{
  "log": [
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "f3c737de8f57b5ce756010c2175f7d574194b30d",
      "tree": "fa741dba43d33b83f66c7f912e983feae594d40f",
      "parents": [
        "42dad7647aec49b3ad20dd0cb832b232a6ae514f"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.ne",
        "time": "Thu Apr 23 08:37:58 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "umem: fix request_queue lock warning\n\nThe umem driver issues two warnings on boot, due to blk_plug_device() and\nblk_remove_plug() being called without q-\u003equeue_lock held.  Starting with\ne48ec690 (block: extend queue_flag bitops), the queue_flag_* functions\nwarn if q-\u003equeue_lock doesn\u0027t appear to be locked.  In fact, q-\u003equeue_lock\nis NULL (though that apparently isn\u0027t otherwise a problem as the driver is\nusing card-\u003elock for everything).\n\nAlthough blk_init_queue() with take a request_fn_proc and spinlock_t*,\nthere isn\u0027t a corresponding init helper that takes a make_request_fn.\nSetting queue_lock to \u0026card-\u003elock explicitly seems to work fine for me.\nThe warning goes away and the device appears to behave.\n\n[    1.531881] v2.3 : Micro Memory(tm) PCI memory board block driver\n[    1.538136] umem 0000:02:01.0: PCI INT A -\u003e GSI 20 (level, low) -\u003e IRQ 20\n[    1.545018] umem 0000:02:01.0: Micro Memory(tm) controller found (PCI Mem Module (Battery Backup))\n[    1.554176] umem 0000:02:01.0: CSR 0xfc9ffc00 -\u003e 0xffffc200013d0c00 (0x100)\n[    1.561279] umem 0000:02:01.0: Size 1048576 KB, Battery 1 Disabled (FAILURE), Battery 2 Disabled (FAILURE)\n[    1.571114] umem 0000:02:01.0: Window size 16777216 bytes, IRQ 20\n[    1.577304] umem 0000:02:01.0: memory NOT initialized. Consider over-writing whole device.\n[    1.585989]  umema:\u003c4\u003e------------[ cut here ]------------\n[    1.591775] WARNING: at include/linux/blkdev.h:492 blk_plug_device+0x6d/0x106()\n[    1.592025] Hardware name: H8SSL\n[    1.592025] Modules linked in:\n[    1.592025] Pid: 1, comm: swapper Not tainted 2.6.29 #8\n[    1.592025] Call Trace:\n[    1.592025]  [\u003cffffffff8023c994\u003e] warn_slowpath+0xd3/0xf2\n[    1.592025]  [\u003cffffffff8025a5b5\u003e] ? save_trace+0x3f/0x9b\n[    1.592025]  [\u003cffffffff8025a68b\u003e] ? add_lock_to_list+0x7a/0xba\n[    1.592025]  [\u003cffffffff8025e609\u003e] ? validate_chain+0xb3b/0xce8\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff8025ef04\u003e] ? __lock_acquire+0x74e/0x7b9\n[    1.592025]  [\u003cffffffff8025a70e\u003e] ? get_lock_stats+0x34/0x5e\n[    1.592025]  [\u003cffffffff8025a746\u003e] ? put_lock_stats+0xe/0x27\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff803ad165\u003e] blk_plug_device+0x6d/0x106\n[    1.592025]  [\u003cffffffff80441575\u003e] mm_make_request+0x46/0x59\n[    1.592025]  [\u003cffffffff803ac2d9\u003e] generic_make_request+0x335/0x3cf\n[    1.592025]  [\u003cffffffff8027fcc7\u003e] ? mempool_alloc_slab+0x11/0x13\n[    1.592025]  [\u003cffffffff8027fdce\u003e] ? mempool_alloc+0x45/0x101\n[    1.592025]  [\u003cffffffff8025a746\u003e] ? put_lock_stats+0xe/0x27\n[    1.592025]  [\u003cffffffff803adda5\u003e] submit_bio+0x10a/0x119\n[    1.592025]  [\u003cffffffff802c8d00\u003e] submit_bh+0xe5/0x109\n[    1.592025]  [\u003cffffffff802cbf43\u003e] block_read_full_page+0x2aa/0x2cb\n[    1.592025]  [\u003cffffffff802cf4c4\u003e] ? blkdev_get_block+0x0/0x4c\n[    1.592025]  [\u003cffffffff805c90a8\u003e] ? _spin_unlock_irq+0x36/0x51\n[    1.592025]  [\u003cffffffff80286836\u003e] ? __lru_cache_add+0x92/0xb2\n[    1.592025]  [\u003cffffffff802cf008\u003e] blkdev_readpage+0x13/0x15\n[    1.592025]  [\u003cffffffff8027de06\u003e] read_cache_page_async+0x90/0x134\n[    1.592025]  [\u003cffffffff802ceff5\u003e] ? blkdev_readpage+0x0/0x15\n[    1.592025]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.592025]  [\u003cffffffff8027deb8\u003e] read_cache_page+0xe/0x45\n[    1.592025]  [\u003cffffffff802f5170\u003e] read_dev_sector+0x2e/0x93\n[    1.592025]  [\u003cffffffff802f5f44\u003e] adfspart_check_ICS+0x28/0x16c\n[    1.592025]  [\u003cffffffff8025d427\u003e] ? trace_hardirqs_on+0xd/0xf\n[    1.592025]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.592025]  [\u003cffffffff802f59c5\u003e] rescan_partitions+0x168/0x2fb\n[    1.592025]  [\u003cffffffff802ceae9\u003e] __blkdev_get+0x259/0x336\n[    1.592025]  [\u003cffffffff803ca1e2\u003e] ? kobject_put+0x47/0x4b\n[    1.592025]  [\u003cffffffff802cebd1\u003e] blkdev_get+0xb/0xd\n[    1.592025]  [\u003cffffffff802f5773\u003e] register_disk+0xc4/0x12b\n[    1.592025]  [\u003cffffffff803b2a7b\u003e] add_disk+0xc3/0x12d\n[    1.592025]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.592025]  [\u003cffffffff808a1e73\u003e] mm_init+0x129/0x1a5\n[    1.592025]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.592025]  [\u003cffffffff80209056\u003e] _stext+0x56/0x130\n[    1.592025]  [\u003cffffffff80274932\u003e] ? register_irq_proc+0xae/0xca\n[    1.592025]  [\u003cffffffff802f0000\u003e] ? proc_pid_lookup+0xb4/0x18b\n[    1.592025]  [\u003cffffffff8087f975\u003e] kernel_init+0x132/0x18b\n[    1.592025]  [\u003cffffffff8020d17a\u003e] child_rip+0xa/0x20\n[    1.592025]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.592025]  [\u003cffffffff8087f843\u003e] ? kernel_init+0x0/0x18b\n[    1.592025]  [\u003cffffffff8020d170\u003e] ? child_rip+0x0/0x20\n[    1.592025] ---[ end trace 7150b3b86da74e1e ]---\n[    1.889858] ------------[ cut here ]------------[ve_plug+0x5f/0x91()\n[    1.893848] Hardware name: H8SSL\n[    1.893848] Modules linked in:\n[    1.893848] Pid: 1, comm: swapper Tainted: G        W  2.6.29 #8\n[    1.893848] Call Trace:\n[    1.893848]  [\u003cffffffff8023c994\u003e] warn_slowpath+0xd3/0xf2\n[    1.893848]  [\u003cffffffff805c8411\u003e] ? trace_hardirqs_on_thunk+0x3a/0x3f\n[    1.893848]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.893848]  [\u003cffffffff80254245\u003e] ? __atomic_notifier_call_chain+0x0/0xb2\n[    1.893848]  [\u003cffffffff805c90a3\u003e] ? _spin_unlock_irq+0x31/0x51\n[    1.893848]  [\u003cffffffff805c90bf\u003e] ? _spin_unlock_irq+0x4d/0x51\n[    1.893848]  [\u003cffffffff8044157d\u003e] ? mm_make_request+0x4e/0x59\n[    1.893848]  [\u003cffffffff8025a70e\u003e] ? get_lock_stats+0x34/0x5e\n[    1.893848]  [\u003cffffffff8025a75d\u003e] ? put_lock_stats+0x25/0x27\n[    1.893848]  [\u003cffffffff80441504\u003e] ? mm_unplug_device+0x25/0x50\n[    1.893848]  [\u003cffffffff803acf23\u003e] blk_remove_plug+0x5f/0x91\n[    1.893848]  [\u003cffffffff8044150f\u003e] mm_unplug_device+0x30/0x50\n[    1.893848]  [\u003cffffffff803ab74a\u003e] blk_unplug+0x78/0x7d\n[    1.893848]  [\u003cffffffff803ab75c\u003e] blk_backing_dev_unplug+0xd/0xf\n[    1.893848]  [\u003cffffffff802c853c\u003e] block_sync_page+0x4a/0x4c\n[    1.893848]  [\u003cffffffff8027da1c\u003e] sync_page+0x44/0x4d\n[    1.893848]  [\u003cffffffff805c66fd\u003e] __wait_on_bit_lock+0x42/0x8a\n[    1.893848]  [\u003cffffffff8027d9d8\u003e] ? sync_page+0x0/0x4d\n[    1.893848]  [\u003cffffffff8027d9c4\u003e] __lock_page+0x64/0x6b\n[    1.893848]  [\u003cffffffff802508db\u003e] ? wake_bit_function+0x0/0x2a\n[    1.893848]  [\u003cffffffff8027de4a\u003e] read_cache_page_async+0xd4/0x134\n[    1.893848]  [\u003cffffffff802ceff5\u003e] ? blkdev_readpage+0x0/0x15\n[    1.893848]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.893848]  [\u003cffffffff8027deb8\u003e] read_cache_page+0xe/0x45\n[    1.893848]  [\u003cffffffff802f5170\u003e] read_dev_sector+0x2e/0x93\n[    1.893848]  [\u003cffffffff802f5f44\u003e] adfspart_check_ICS+0x28/0x16c\n[    1.893848]  [\u003cffffffff8025d427\u003e] ? trace_hardirqs_on+0xd/0xf\n[    1.893848]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.893848]  [\u003cffffffff802f59c5\u003e] rescan_partitions+0x168/0x2fb\n[    1.893848]  [\u003cffffffff802ceae9\u003e] __blkdev_get+0x259/0x336\n[    1.893848]  [\u003cffffffff803ca1e2\u003e] ? kobject_put+0x47/0x4b\n[    1.893848]  [\u003cffffffff802cebd1\u003e] blkdev_get+0xb/0xd\n[    1.893848]  [\u003cffffffff802f5773\u003e] register_disk+0xc4/0x12b\n[    1.893848]  [\u003cffffffff803b2a7b\u003e] add_disk+0xc3/0x12d\n[    1.893848]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.893848]  [\u003cffffffff808a1e73\u003e] mm_init+0x129/0x1a5\n[    1.893848]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.893848]  [\u003cffffffff80209056\u003e] _stext+0x56/0x130\n[    1.893848]  [\u003cffffffff80274932\u003e] ? register_irq_proc+0xae/0xca\n[    1.893848]  [\u003cffffffff802f0000\u003e] ? proc_pid_lookup+0xb4/0x18b\n[    1.893848]  [\u003cffffffff8087f975\u003e] kernel_init+0x132/0x18b\n[    1.893848]  [\u003cffffffff8020d17a\u003e] child_rip+0xa/0x20\n[    1.893848]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.893848]  [\u003cffffffff8087f843\u003e] ? kernel_init+0x0/0x18b\n[    1.893848]  [\u003cffffffff8020d170\u003e] ? child_rip+0x0/0x20\n[    1.893848] ---[ end trace 7150b3b86da74e1f ]---\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "284901a90a9e0b812ca3f5f852cbbfb60d10249d",
      "tree": "06c1b5a0f83c90cfb662f756e7781977ce739ce8",
      "parents": [
        "6afd142fd0dfba497246d0fab236c20a7b4bf778"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Mon Apr 06 19:01:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:11 2009 -0700"
      },
      "message": "dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)\n\nReplace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)\n\nSigned-off-by: Yang Hongyang\u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a35528a8346f6e6fd32ed7e51f04d1fa4ca2c01",
      "tree": "9caaf8645b573687bbcf3a16b5aa7dd233fed46e",
      "parents": [
        "8a59f5d2526593c6bc1a0754c3a16ccc9ed41ce3"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Mon Apr 06 19:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:10 2009 -0700"
      },
      "message": "dma-mapping: replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64)\n\nReplace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64)\n\nSigned-off-by: Yang Hongyang\u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "458cf5e9b666c251b04cb5242fb19fd5114645ba",
      "tree": "8fd0de032105104467d15cd7cb991e5181ff3f03",
      "parents": [
        "2fdd82bd8852ec8ebad5c69c45138da25c6f9273"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Dec 17 20:24:20 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Dec 18 08:29:28 2007 +0100"
      },
      "message": "Cleanup umem driver: fix most checkpatch warnings, conform to kernel\ncoding style.\n\n  linux-2.6.24-rc5-git3\u003e checkpatch.pl-next  patches/block-umem-ckpatch.patch\n  total: 0 errors, 5 warnings, 530 lines checked\n\nAll of these are line-length warnings.\n\nOnly change in generated object file is due to not initializing a\nstatic global variable to 0.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "794e64d5e9c7f088378e093a48eb36a30091d82d",
      "tree": "426bc4ab1d11a9846a7b88d005db40583704db01",
      "parents": [
        "76832d8416430d6dd0575579ca1e00d1a790f4cb"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Mon Dec 10 15:49:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 10 19:43:55 2007 -0800"
      },
      "message": "Fix NULL dereference in umem.c\n\nFix NULL dereference in umem.c\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nTested-by: Dave Chinner \u003cdgc@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": "cb3503ca54dc34e8dc3b823a6bd52c0807c102f4",
      "tree": "8dda771ef5f286e657edc87f8e5932ed040c5f3e",
      "parents": [
        "4e953a216265f8646360fa909bdc87ea4bf446b3"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 27 07:49:39 2007 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:59 2007 +0200"
      },
      "message": "drivers/block/umem: use DRIVER_NAME where appropriate\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4e953a216265f8646360fa909bdc87ea4bf446b3",
      "tree": "7ee287e00404496b221f69664dad6d2169c3fdf1",
      "parents": [
        "ee4a7b6874469244ed0e3b8fde20028e0bb52642"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 27 07:41:50 2007 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:59 2007 +0200"
      },
      "message": "drivers/block/umem: trim trailing whitespace\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ee4a7b6874469244ed0e3b8fde20028e0bb52642",
      "tree": "c5643ff2221c502676529fea7a7748b10951cc23",
      "parents": [
        "4e0af881afee2b399854b1cdfdbe37e6ab6a09ca"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 27 07:40:33 2007 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:59 2007 +0200"
      },
      "message": "drivers/block/umem: minor cleanups\n\n* tab-align DRIVER_*, pci_driver entries\n\n* reduced wasted memory by killing unused struct cardinfo members\n\n* move free_irq() call above resource unmap, to fix tiny window where\n  irq handler may access recently-unmapped memory\n\n* propagate pci_enable_device() return value\n\n* use pci_request_regions, pci_release_regions() for resource reservation\n\n* call pci_disable_device() in pci_driver::remove()\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4e0af881afee2b399854b1cdfdbe37e6ab6a09ca",
      "tree": "84fd69a82b717996614c99cf29e342fbbfc8b5cd",
      "parents": [
        "3084f0c6105a71e43225c36b4d97c1407988a242"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 27 06:41:25 2007 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:59 2007 +0200"
      },
      "message": "drivers/block/umem: use dev_printk()\n\ndev_printk() gives us a consistent prefix (driver name + PCI bus id),\nwhich allows us to eliminate the hand-rolled one.\n\nAlso allows us to eliminate card-\u003ecard_number, which was used solely in\nprintk() calls.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3084f0c6105a71e43225c36b4d97c1407988a242",
      "tree": "3c8add2abeebbfaf707d4255317671feed094ae0",
      "parents": [
        "ed155a95a4eb7d8dae61b64ab394314c5195e414"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 27 06:25:06 2007 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:59 2007 +0200"
      },
      "message": "drivers/block/umem: move private include away from include/linux\n\nMove include/linux/umem.h to drivers/block, as umem.c is the only user,\nand its not an exported header.\n\nMove the PCI_{VENDOR,DEVICE}_ID_* constants to include/linux/pci_ids.h.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6712ecf8f648118c3363c142196418f89a510b90",
      "tree": "347d39a7d5a7ed96d3b1afecd28de2a0f98b98c9",
      "parents": [
        "5bb23a688b2de23d7765a1dd439d89c038378978"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:47:43 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Drop \u0027size\u0027 argument from bio_endio and bi_end_io\n\nAs bi_end_io is only called once when the reqeust is complete,\nthe \u0027size\u0027 argument is now redundant.  Remove it.\n\nNow there is no need for bio_endio to subtract the size completed\nfrom bi_size.  So don\u0027t do that either.\n\nWhile we are at it, change bi_end_io to return void.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "eea9befaccb8d43ce89585d612159761c978f056",
      "tree": "d5db0bd4493f726d4900f13e930d25283e2c9ebe",
      "parents": [
        "5705f7021748a69d84d6567e68e8851dab551464"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 16 13:31:26 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Fix various abuse of bio fields in umem.c\n\numem.c:\n  advances bi_idx and bi_sector to track where it is up to.\n   But it is only ever doing this on one bio, so the updated\n   fields can easily be kept elsewhere (current_*).\n  updates bi_size, but never uses the updated values, so\n   this isn\u0027t needed.\n  reuses bi_phys_segments to count how many iovecs have been\n   completely.  As the completion happens sequentiually, we\n   can store this information outside the bio too.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\ndiff .prev/drivers/block/umem.c ./drivers/block/umem.c\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5874c18b105cc7a24972191b7f08a93b1205a425",
      "tree": "a7bef9c6e006a42f1550aa1d99aa5a92223efae7",
      "parents": [
        "51ea208c37a216816e44d31fbdf2c1f1b59e860e"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Fri Jul 13 07:39:46 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 14:39:07 2007 +0200"
      },
      "message": "umem: Fix match of pci_ids in umem driver\n\nthe pci device list for umem was not using PCI_DEVICE, so the\nsubvendor/subdevice fields were not set to ANY, so matching\ndidn\u0027t work properly.\n\nChange to use PCI_DEVICE.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "51ea208c37a216816e44d31fbdf2c1f1b59e860e",
      "tree": "b2d799bd7b611c7f5be272f04c7570ab86c62de0",
      "parents": [
        "a3e4da548328bd2bbd6265819aa19397926e5b05"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Fri Jul 13 07:38:48 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jul 16 14:39:06 2007 +0200"
      },
      "message": "umem: Remove references to dead CONFIG_MM_MAP_MEMORY variable\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@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": "5a243e0e97edce27c12f87354fd987526ba1ce95",
      "tree": "25911ba3555cefaab804a607988763fe28f6770c",
      "parents": [
        "9540f75b2bcfcc29ddcd839c3547a5f380bef323"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Feb 28 20:11:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Mar 01 14:53:36 2007 -0800"
      },
      "message": "[PATCH] Fix failure paths in modules init in umem.c\n\nIf register_blkdev() or alloc-disk fail in mm_init() after\npci_register_driver() succeeds, then mm_pci_driver is not unregistered\nproperly:\n\nCc: Philip Guo \u003cpg@cs.stanford.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@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": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d12e780e003f93433d49ce78cfedf4b4c52adc5",
      "tree": "6748550400445c11a306b132009f3001e3525df8",
      "parents": [
        "da482792a6d1a3fbaaa25fae867b343fb4db3246"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 14:55:46 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 15:10:12 2006 +0100"
      },
      "message": "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers\n\nMaintain a per-CPU global \"struct pt_regs *\" variable which can be used instead\nof passing regs around manually through all ~1800 interrupt handlers in the\nLinux kernel.\n\nThe regs pointer is used in few places, but it potentially costs both stack\nspace and code to pass it around.  On the FRV arch, removing the regs parameter\nfrom all the genirq function results in a 20% speed up of the IRQ exit path\n(ie: from leaving timer_interrupt() to leaving do_IRQ()).\n\nWhere appropriate, an arch may override the generic storage facility and do\nsomething different with the variable.  On FRV, for instance, the address is\nmaintained in GR28 at all times inside the kernel as part of general exception\nhandling.\n\nHaving looked over the code, it appears that the parameter may be handed down\nthrough up to twenty or so layers of functions.  Consider a USB character\ndevice attached to a USB hub, attached to a USB controller that posts its\ninterrupts through a cascaded auxiliary interrupt controller.  A character\ndevice driver may want to pass regs to the sysrq handler through the input\nlayer which adds another few layers of parameter passing.\n\nI\u0027ve build this code with allyesconfig for x86_64 and i386.  I\u0027ve runtested the\nmain part of the code on FRV and i386, though I can\u0027t test most of the drivers.\nI\u0027ve also done partial conversion for powerpc and MIPS - these at least compile\nwith minimal configurations.\n\nThis will affect all archs.  Mostly the changes should be relatively easy.\nTake do_IRQ(), store the regs pointer at the beginning, saving the old one:\n\n\tstruct pt_regs *old_regs \u003d set_irq_regs(regs);\n\nAnd put the old one back at the end:\n\n\tset_irq_regs(old_regs);\n\nDon\u0027t pass regs through to generic_handle_irq() or __do_IRQ().\n\nIn timer_interrupt(), this sort of change will be necessary:\n\n\t-\tupdate_process_times(user_mode(regs));\n\t-\tprofile_tick(CPU_PROFILING, regs);\n\t+\tupdate_process_times(user_mode(get_irq_regs()));\n\t+\tprofile_tick(CPU_PROFILING);\n\nI\u0027d like to move update_process_times()\u0027s use of get_irq_regs() into itself,\nexcept that i386, alone of the archs, uses something other than user_mode().\n\nSome notes on the interrupt handling in the drivers:\n\n (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in\n     the input_dev struct.\n\n (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does\n     something different depending on whether it\u0027s been supplied with a regs\n     pointer or not.\n\n (*) Various IRQ handler function pointers have been moved to type\n     irq_handler_t.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)\n"
    },
    {
      "commit": "f2b9ecc41654256ae8829193d3380935833ae976",
      "tree": "45033534396fbf5428f118d4e301dc1273da6cf3",
      "parents": [
        "5c1fdf4150c3b4e486020d0ada787469900d66ed"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Tue Oct 03 01:16:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:19 2006 -0700"
      },
      "message": "[PATCH] pr_debug: umem: repair nonexistant bh pr_debug reference\n\numem: repair nonexistant bh pr_debug reference\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69ab3912d1b4dbf27ea1a383cb5731251fc0e109",
      "tree": "d0e68c828d8f49483d4bfaccbe4d98c1b339ee94",
      "parents": [
        "3cca53b02a5bab0f407b1add2f84c22c20243a79"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 19:29:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 13:58:49 2006 -0700"
      },
      "message": "[PATCH] irq-flags: drivers/block Use the new IRQF_ constants\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "ce7b0f46bbf4bff8daab2dd3d878b9e72a623d09",
      "tree": "7a860cf52fbf1ff768197702af60a8329d296dff",
      "parents": [
        "96192ff1a9d0c6ef365d21667080259d83ea2f5b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n\nAnd remove the now unneeded number field.\nAlso fixes all drivers that set these fields.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "910638ae7ed4be27d6af55f6c9b5bf54b838e78b",
      "tree": "5eda3cfd0e312c8b0916f6d5eb1cd98225e67891",
      "parents": [
        "60c904ae5bded8bb71f7bff7d63f2a6959d2a8e4"
      ],
      "author": {
        "name": "Matthias Gehre",
        "email": "M.Gehre@gmx.de",
        "time": "Tue Mar 28 01:56:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:07 2006 -0800"
      },
      "message": "[PATCH] Replace 0xff.. with correct DMA_xBIT_MASK\n\nReplace all occurences of 0xff..  in calls to function pci_set_dma_mask()\nand pci_set_consistant_dma_mask() with the corresponding DMA_xBIT_MASK from\nlinux/dma-mapping.h.\n\nSigned-off-by: Matthias Gehre \u003cM.Gehre@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1312f40e11c57edb5c3250f1b782cef8e3efea82",
      "tree": "0aae9e7fe6211d83212991e84789fcd7e9908ced",
      "parents": [
        "6f325a13442d4e4a6c93d06d8e6deff79b6540b1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 12 11:02:03 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:20 2006 -0500"
      },
      "message": "[PATCH] regularize blk_cleanup_queue() use\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "74adb52797a7cde217a8ceeaf254a5441a42a72c",
      "tree": "805ec25448f1c4bf88b35ade8c2885687a6dc66a",
      "parents": [
        "dfa08592ca0440d793ecc8dfc6277dd2aa4b8dda"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Fri Feb 03 03:04:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:05 2006 -0800"
      },
      "message": "[PATCH] umem: check pci_set_dma_mask return value correctly\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9bfab8cec652c80b4864b4d9247520dca042c2df",
      "tree": "d76d008e653949d7b9ead359d44c3662e99cd194",
      "parents": [
        "d1d6da8f9fb9a0633a2f36b84b292752d78f7d31"
      ],
      "author": {
        "name": "Richard Knutsson",
        "email": "ricknu-0@student.ltu.se",
        "time": "Wed Nov 30 00:59:34 2005 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jan 09 12:13:22 2006 -0800"
      },
      "message": "[PATCH] drivers/block: Replace pci_module_init() with pci_register_driver()\n\nReplace obsolete pci_module_init() with pci_register_driver().\n\nSigned-off-by: Richard Knutsson \u003cricknu-0@student.ltu.se\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a885c8c4316e1c1d2d2c8755da3f3d14f852528d",
      "tree": "e4f4e7a7657c0944d11c259f8f17ffcd6b2da0f5",
      "parents": [
        "5b0ed2c64d8fdafb5fcfb3baabdd288628b1ff9b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Jan 08 01:02:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:54 2006 -0800"
      },
      "message": "[PATCH] Add block_device_operations.getgeo block device method\n\nHDIO_GETGEO is implemented in most block drivers, and all of them have to\nduplicate the code to copy the structure to userspace, as well as getting\nthe start sector.  This patch moves that to common code [1] and adds a\n-\u003egetgeo method to fill out the raw kernel hd_geometry structure.  For many\ndrivers this means -\u003eioctl can go away now.\n\n[1] the s390 block drivers are odd in this respect.  xpram sets -\u003estart\n    to 4 always which seems more than odd, and the dasd driver shifts\n    the start offset around, probably because of it\u0027s non-standard\n    sector size.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: \u003cmike.miller@hp.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "46308c0bbbb066305e0798a2fa03328467a3c7d6",
      "tree": "5b6ca3d20a2008edecfb1cf101428cc2c4eceab5",
      "parents": [
        "80ce45fd961ba8c951adc9857bfda87102b1f5b1"
      ],
      "author": {
        "name": "Domen Puncer",
        "email": "domen@coderock.org",
        "time": "Sat Sep 10 00:27:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:33 2005 -0700"
      },
      "message": "[PATCH] janitor: block/umem: replace PRINTK with pr_debug\n\nRemoved unused dprintk, replaced PRINTK with pr_debug.\n\nSigned-off-by: Maximilian Attems \u003cjanitor@sternwelten.at\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
