)]}'
{
  "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": "2ea5d35a49f5c89d1d2d677fe90c71ad5a6278b6",
      "tree": "3e5eb8efe966320b93ec948c8f95674d79912c5e",
      "parents": [
        "e4c570c4cb7a95dbfafa3d016d2739bf3fdfe319"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Mon Dec 14 18:00:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:27 2009 -0800"
      },
      "message": "ioc3/ioc4: various section fixes\n\nSeveral IOC3 and IOC4 drivers misuse the __devinit and __devexit section\nmarkers.  Use __init and __exit instead as appropriate, then add __devinit\nand __devexit where they really belong for PCI drivers.\n\nAlso make ioc4_serial_init static.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Pat Gefre \u003cpfg@sgi.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.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": "08adefd4791772d8b3fe23cc9d2554123e21dfa3",
      "tree": "5fcc85c50c21636b742cdb9517caef06b0ce151a",
      "parents": [
        "bfa0b1c3ca802bd9813987e861d932ddc1c8cf50"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Jan 06 14:41:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:13 2009 -0800"
      },
      "message": "ioc4: automatically load sgiioc4 subordinate module\n\nModify ioc4 to always load the sgiioc4 IDE module if the board carrying\nthe IOC4 hardware actually implements the IDE interface (not all boards\nbring this functionality off the IOC4 chip).  A drive hosted on the IDE\ninterface may contain the root filesystem, and sgiioc4 doesn\u0027t load\nautomatically as ioc4 owns the PCI device ID, not sgiioc4.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Michael Reed \u003cmdr@sgi.com\u003e\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@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": "6e574195b75543bc6a6240306313988b1952470c",
      "tree": "510fb98e64cee409cf1f443391cadb5dc1e53aa3",
      "parents": [
        "eecd58536a97502153d4a2bd6f05038f657a1ab3"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Apr 29 00:59:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:03 2008 -0700"
      },
      "message": "drivers/misc: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@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": "90d8dabf74179e6615bd4688a118e12ec29ab7aa",
      "tree": "e68d18238d7e07702c7ab2300f742c2d8cd4ebcb",
      "parents": [
        "e62aa046e1748b8ea0354951685478030392cf56"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed Nov 14 16:59:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:39 2007 -0800"
      },
      "message": "drivers/misc: Move misplaced pci_dev_put\u0027s\n\nMove pci_dev_put outside the loops in which it occurs.  Within the loop,\npci_dev_put is done implicitly by pci_get_device.\n\nThe problem was detected using the following semantic patch, and corrected\nby hand.\n\n@@\nexpression dev;\nexpression E;\n@@\n\n- pci_dev_put(dev)\n   ... when !\u003d dev \u003d E\n- pci_get_device(...,dev)\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52c9ae0ac7576c94f6a2371b44039e7ba12a0439",
      "tree": "45753628a889d476e527b15191a84f1208ea8895",
      "parents": [
        "24fa50961451b7b21081e4d16836952b17eb5fb3"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Sat Feb 10 01:44:46 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:25 2007 -0800"
      },
      "message": "[PATCH] IOC3/IOC4: PCI mem space resources\n\nThe SGI IOC3 and IOC4 PCI devices implement memory space apertures, not I/O\nspace apertures.  Use the appropriate region management functions.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nCc: Pat Gefre \u003cpfg@sgi.com\u003e\nCc: Stanislaw Skowronek \u003cskylark@linux-mips.org\u003e\nCc: Brent Casavant \u003cbcasavan@sgi.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "760fe9ad1692361770bb56fa5c69cf6b3354858c",
      "tree": "2423636bacc20af573bcee8c7f30e5af8ecd1cee",
      "parents": [
        "1d4d262769cd1894a0306b9c57e72f005cd9e75a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat Oct 28 10:38:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 28 11:30:53 2006 -0700"
      },
      "message": "[PATCH] ioc4: fix printk format warning\n\nFix printk format warning:\ndrivers/misc/ioc4.c:213: warning: long long int format, u64 arg (arg 3)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2099c99e3b24f86b131566aa9854249189ae9ea2",
      "tree": "e80fc89e59eb0e4e7f7c545d2d7f3816769a8683",
      "parents": [
        "016002312d50004908a79df37174b336e3682e18"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Oct 24 11:17:06 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 24 22:01:11 2006 -0700"
      },
      "message": "[PATCH] missing includes of io.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "59f148005cfd3d41537a4b872c266213d5fe4dc6",
      "tree": "1e769ca80218a39417f7d45759e1bd2a4dbf6452",
      "parents": [
        "107d5a72f2c6a6819b66eebcb0281c7a67b6baaa"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Oct 17 00:09:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 17 08:18:42 2006 -0700"
      },
      "message": "[PATCH] ioc4: Enable build on non-SN2\n\nThe SGI PCI-RT card, based on the SGI IOC4 chip, will be made available on\nAltix XE (x86_64) platforms in the near future.  As such it is now a\nmisnomer for the IOC4 base device driver to live under drivers/sn, and\nwould complicate builds for non-SN2.\n\nThis patch moves the IOC4 base driver code from drivers/sn to drivers/misc,\nand updates the associated Makefiles and Kconfig files to allow building on\nnon-SN2 configs.  Due to the resulting change in link order, it is now\nnecessary to use late_initcall() for IOC4 subdriver initialization.\n\n[akpm@osdl.org: __udivdi3 fix]\n[akpm@osdl.org: fix default in Kconfig]\nAcked-by: Pat Gefre \u003cpfg@sgi.com\u003e\nAcked-by: Jeremy Higdon \u003cjeremy@sgi.com\u003e\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "107d5a72f2c6a6819b66eebcb0281c7a67b6baaa",
      "tree": "d77ea3fad74cad5e56fd7231dec8ffb39f9880c3",
      "parents": [
        "4d99bfac9d5ce53b383d3c8279b917050be4e06c"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Oct 17 00:09:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 17 08:18:42 2006 -0700"
      },
      "message": "[PATCH] ioc4: Remove SN2 feature and config dependencies\n\nThe SGI PCI-RT card, based on the SGI IOC4 chip, will be made available on\nAltix XE (x86_64) platforms in the near future.  As such dependencies on\nSN2-specific features and config dependencies need to be removed.\n\nThis patch updates the Kconfig files to remove the config dependency, and\nupdates the IOC4 bus speed detection routine to use universally available\ntime interfaces instead of mmtimer.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "85bd84345f64cb953101ddd8ab1340dde351c579",
      "tree": "a03d111a4140b4513c2258970b363597d841867a",
      "parents": [
        "1e075d58d667eb919a5df428b593ea7133e13d9c"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Jun 29 02:24:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:20 2006 -0700"
      },
      "message": "[PATCH] remove devinit from ioc4 pci_driver\n\nDocumention/pci.txt states..\n\"The struct pci_driver shouldn\u0027t be marked with any of these tags.\"\n(Referring to __devinit and friends).\n\n(akpm: good documentation, that.  Link this driver into vmlinux with hotplug\nCPU disabled and it\u0027ll crash).\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Brent Casavant \u003cbcasavan@sgi.com\u003e\nCc: Pat Gefre \u003cpfg@sgi.com\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5befceb5cfecba49fdf61f8e0eb4d453200eac9",
      "tree": "d44d7b0375408895a686e274a4a336c271184d0a",
      "parents": [
        "862f5f0133f1c8a179dd93adc03d43f8f7e8bac5"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Fri Jun 23 02:05:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] SGI IOC4: Detect IO card variant\n\nThere are three different IO cards which an SGI IOC4 controller may find\nitself on.  One of these variants does not bring out the IDE and serial\nsignals, so we need to disable attaching the corresponding IOC4 subdrivers\nto such cards.\n\nCleans up message clutter emitted during device probing.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8683dc9990158c221e05959935e7dd50a956c574",
      "tree": "a68d126c603563982767b550e5332efd9c0d4121",
      "parents": [
        "96941026a51e9cb8c2d2be7499301b7fcd9ee225"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Wed May 03 19:55:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed May 03 20:05:41 2006 -0700"
      },
      "message": "[PATCH] Altix: correct ioc4 port order\n\nCurrently loading the ioc3 as a module will cause the ports to be numbered\nin reverse order.  This mod maintains the proper order of cards for port\nnumbering.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nCc: Pat Gefre \u003cpfg@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e586f32931d6c98431d54cd0430d4366195b0ba",
      "tree": "b93b207b81ae015166ac55e0534a6810c5a1ae3e",
      "parents": [
        "3ee68c4af3fd7228c1be63254b9f884614f9ebb2"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Tue Jan 17 12:24:39 2006 -0500"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Thu Jan 26 13:13:00 2006 -0800"
      },
      "message": "[IA64-SGI] sem2mutex ioc4.c\n\nConvert to use a single mutex instead of two rwsems as this isn\u0027t\nperformance critical.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "d4c477ca5448f19afaaf6c0cfd655009ea9e614d",
      "tree": "75571ad144ff904afbd39b1b24766461255396ac",
      "parents": [
        "e5d310b349b2cbcc0dab31139c92201f332695bb"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Jun 21 17:16:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:32 2005 -0700"
      },
      "message": "[PATCH] ioc4: PCI bus speed detection\n\nSeveral hardware features of SGI\u0027s IOC4 I/O controller chip require\ntiming-related driver calculations dependent upon the PCI bus speed.  This\npatch enables the core IOC4 driver code to detect the actual bus speed and\nstore a value that can later be used by the IOC4 subdrivers as needed.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nAcked-by: Pat Gefre \u003cpfg@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22329b511a97557b293583194037d1f4c71e1504",
      "tree": "925e6c4566371e7ffb66a54b631049b958c19eca",
      "parents": [
        "e400bae98499583767da58fb0a1b9ad3e24fcb86"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Jun 21 17:15:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:32 2005 -0700"
      },
      "message": "[PATCH] ioc4: Core driver rewrite\n\nThis series of patches reworks the configuration and internal structure\nof the SGI IOC4 I/O controller device drivers.\n\nThese changes are motivated by several factors:\n\n- The IOC4 chip PCI resources are of mixed use between functions (i.e.\n  multiple functions are handled in the same address range, sometimes\n  within the same register), muddling resource ownership and initialization\n  issues.  Centralizing this ownership in a core driver is desirable.\n\n- The IOC4 chip implements multiple functions (serial, IDE, others not\n  yet implemented in the mainline kernel) but is not a multifunction\n  PCI device.  In order to properly handle device addition and removal\n  as well as module insertion and deletion, an intermediary IOC4-specific\n  driver layer is needed to handle these operations cleanly.\n\n- All IOC4 drivers are currently enabled by a single CONFIG value.  As\n  not all systems need all IOC4 functions, it is desireable to enable\n  these drivers independently.\n\n- The current IOC4 core driver will trigger loading of all function-level\n  drivers, as it makes direct calls to them.  This situation should be\n  reversed (i.e. function-level drivers cause loading of core driver)\n  in order to maintain a clear and least-surprise driver loading model.\n\n- IOC4 hardware design necessitates some driver-level dependency on\n  the PCI bus clock speed.  Current code assumes a 66MHz bus, but the\n  speed should be autodetected and appropriate compensation taken.\n\nThis patch series effects the above changes by a newly and better designed\nIOC4 core driver with which the function-level drivers can register and\nderegister themselves upon module insertion/removal.  By tracking these\nmodules, device addition/removal is also handled properly.  PCI resource\nmanagement and ownership issues are centralized in this core driver, and\nIOC4-wide configuration actions such as bus speed detection are also\nhandled in this core driver.\n\nThis patch:\n\nThe SGI IOC4 I/O controller chip implements multiple functions, though it is\nnot a multi-function PCI device.  Additionally, various PCI resources of the\nIOC4 are shared by multiple hardware functions, and thus resource ownership by\ndriver is not clearly delineated.  Due to the current driver design, all core\nand subordinate drivers must be loaded, or none, which is undesirable if not\nall IOC4 hardware features are being used.\n\nThis patch reorganizes the IOC4 drivers so that the core driver provides a\nsubdriver registration service.  Through appropriate callbacks the subdrivers\ncan now handle device addition and removal, as well as module insertion and\ndeletion (though the IOC4 IDE driver requires further work before module\ndeletion will work).  The core driver now takes care of allocating PCI\nresources and data which must be shared between subdrivers, to clearly\ndelineate module ownership of these items.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nAcked-by: Pat Gefre \u003cpfg@sgi.com\nAcked-by: Jeremy Higdon \u003cjeremy@sgi.com\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"
    }
  ]
}
