)]}'
{
  "log": [
    {
      "commit": "6880e7cb35bfde5c8ef65cc846e0df54808f982f",
      "tree": "465b1e8bd7461b363a1e79b9c6007221d4c30a00",
      "parents": [
        "c1b7151a5ef4f35fb116d1a2689c5280938b0e8d"
      ],
      "author": {
        "name": "Sebastian Siewior",
        "email": "netdev@ml.breakpoint.cc",
        "time": "Wed Oct 17 10:52:22 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Oct 17 20:11:28 2007 -0400"
      },
      "message": "gianfar: remove orphan struct.\n\nstruct net_device_stats is no longer used in driver\u0027s private\nstruct but in struct net_device.\n\nCc: Li Yang \u003cleoli@freescale.com\u003e\nSigned-off-by: Sebastian Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "bf1e9a080d7766bd65b8d8eb837ecde8b03dcc31",
      "tree": "3081072cbfb9ff3afad4cce26f412f53565e787b",
      "parents": [
        "10096974adb6d62b9f8cf65c266632ea73040936"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Fri Aug 10 14:05:20 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:50:26 2007 -0700"
      },
      "message": "Clean up duplicate includes in drivers/net/\n\nThis patch cleans up duplicate includes in\n\t drivers/net/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "bea3348eef27e6044b6161fd04c3152215f96411",
      "tree": "f0990b263e5ce42505d290a4c346fe990bcd4c33",
      "parents": [
        "dde4e47e8fe333a5649a3fa0e7db1fa7c08d6158"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Oct 03 16:41:36 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:47:45 2007 -0700"
      },
      "message": "[NET]: Make NAPI polling independent of struct net_device objects.\n\nSeveral devices have multiple independant RX queues per net\ndevice, and some have a single interrupt doorbell for several\nqueues.\n\nIn either case, it\u0027s easier to support layouts like that if the\nstructure representing the poll is independant from the net\ndevice itself.\n\nThe signature of the -\u003epoll() call back goes from:\n\n\tint foo_poll(struct net_device *dev, int *budget)\n\nto\n\n\tint foo_poll(struct napi_struct *napi, int budget)\n\nThe caller is returned the number of RX packets processed (or\nthe number of \"NAPI credits\" consumed if you want to get\nabstract).  The callee no longer messes around bumping\ndev-\u003equota, *budget, etc. because that is all handled in the\ncaller upon return.\n\nThe napi_struct is to be embedded in the device driver private data\nstructures.\n\nFurthermore, it is the driver\u0027s responsibility to disable all NAPI\ninstances in it\u0027s -\u003estop() device close handler.  Since the\nnapi_struct is privatized into the driver\u0027s private data structures,\nonly the driver knows how to get at all of the napi_struct instances\nit may have per-device.\n\nWith lots of help and suggestions from Rusty Russell, Roland Dreier,\nMichael Chan, Jeff Garzik, and Jamal Hadi Salim.\n\nBug fixes from Thomas Graf, Roland Dreier, Peter Zijlstra,\nJoseph Fannin, Scott Wood, Hans J. Koch, and Michael Chan.\n\n[ Ported to current tree and all drivers converted.  Integrated\n  Stephen\u0027s follow-on kerneldoc additions, and restored poll_list\n  handling to the old style to fix mutual exclusion issues.  -DaveM ]\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3c12873c36005263286cf5660663c8c10f9d2b5",
      "tree": "8b51ae1aec834ece23271e6b569d7c4189422ad5",
      "parents": [
        "0cefeebaf3da39d768bffcf62460fe2088e824ef"
      ],
      "author": {
        "name": "Kapil Juneja",
        "email": "Kapil.Juneja@freescale.com",
        "time": "Fri May 11 18:25:11 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Jul 08 22:16:38 2007 -0400"
      },
      "message": "gianfar: add support for SGMII\n\nAdd code for initialising and configuring TBI interface and\nprogramming it for connecting to on-chip SERDES (Lynx PHY)\nin case of SGMII mode selected through HRCW at reset.\n\nalso add defines for TBI register configuration. TBI\ninterface is programmed towards the SERDES.\n\nrefactored mdio read/write functions to differentiate\nprogramming local interface MII regs (e.g., for TBI) from\nalways programming the mdio master (TSEC1, for programming\nthe PHYs).\n\nSigned-off-by: Kapil Juneja \u003cKapil.Juneja@freescale.com\u003e\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Kim Phillips \u003ckim.phillips@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e8a2b6a4207332a2d59628a12cece9e8c1d769e4",
      "tree": "31028a18413517ed3024450c20cd2e919441b437",
      "parents": [
        "cabdfb373ae74036225826ce260c16a8e260eb0b"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Fri Dec 01 12:01:06 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:33:11 2006 -0500"
      },
      "message": "[PATCH] PHY: Add support for configuring the PHY connection interface\n\nMost PHYs connect to an ethernet controller over a GMII or MII\ninterface.  However, a growing number are connected over\ndifferent interfaces, such as RGMII or SGMII.\n\nThe ethernet driver will tell the PHY what type of connection it\nis by setting it manually, or passing it in through phy_connect\n(or phy_attach).\n\nChanges include:\n* Updates to documentation\n* Updates to PHY Lib consumers\n* Changes to PHY Lib to add interface support\n* Some minor changes to whitespace in phy.h\n* gianfar driver now detects interface and passes appropriate\n  value to PHY Lib\nSigned-off-by: Andrew Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.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": "7282d491ecaee9883233a0e27283c4c79486279a",
      "tree": "172ffa70716f5493db57976ceef7652120b3332f",
      "parents": [
        "76fd85937097a0c2ec8ab23bf21dc10992d1c398"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 14:30:00 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 14:30:00 2006 -0400"
      },
      "message": "drivers/net: const-ify ethtool_ops declarations\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.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": "fef6108d4556917c45cd9ba397c1c7597f3990e1",
      "tree": "f35566dd3ddbda7cc84fc8a03aa3aebeea7dc746",
      "parents": [
        "f18b95c3e2ab0f75b23a5aabab0bc8f99bd6bbf3"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Thu Apr 20 16:44:29 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Apr 20 17:55:06 2006 -0400"
      },
      "message": "[PATCH] Fix locking in gianfar\n\nThis patch fixes several bugs in the gianfar driver, including a major one\nwhere spinlocks were horribly broken:\n\n* Split gianfar locks into two types: TX and RX\n* Made it so gfar_start() now clears RHALT\n* Fixed a bug where calling gfar_start_xmit() with interrupts off would\ncorrupt the interrupt state\n* Fixed a bug where a frame could potentially arrive, and never be handled\n(if no more frames arrived\n* Fixed a bug where the rx_work_limit would never be observed by the rx\ncompletion code\n* Fixed a bug where the interrupt handlers were not actually protected by\ntheir spinlocks\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "cc8c6e379ca30a18cb18553abeb15fe19120bf7b",
      "tree": "b3b43e6496a364bba9121036c97e02af4b9cb8d2",
      "parents": [
        "3e710bfa6d92e777050f19a52b4fbbb7eeffb3a0"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Wed Feb 01 15:18:03 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Feb 07 02:04:33 2006 -0500"
      },
      "message": "[PATCH] gianfar: Fix sparse warnings\n\nFixed sparse warnings mainly due to lack of __iomem.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "504ddff4c0b8e31fa2a2775d6d484faeb126a265",
      "tree": "d785d62ace5cd35252038864d2c09b0b58f647f8",
      "parents": [
        "cceb904f9b804f18250214fcd988eca72864970c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jan 05 22:45:43 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Jan 09 10:54:47 2006 -0500"
      },
      "message": "[PATCH] drivers/net/gianfar.h: \"extern inline\" -\u003e \"static inline\"\n\n\"extern inline\" doesn\u0027t make much sense.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "7f7f53168dbee6d6a462acea666fddd18aad4f08",
      "tree": "9c59f9b4b7c06f70b48197408f37398e54b4771e",
      "parents": [
        "fed5eccdcf542742786701b2514b5cb7ab282b93"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Fri Nov 11 12:38:59 2005 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Nov 18 13:31:26 2005 -0500"
      },
      "message": "[PATCH] Gianfar update and sysfs support\n\nThis seems to have gotten lost, so I\u0027ll resend.\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\n\n* Added sysfs support to gianfar for modifying FIFO and stashing parameters\n* Updated driver to support 10 Mbit, full duplex operation\n* Improved comments throughout\n* Cleaned up and optimized offloading code\n* Fixed a bug where rx buffers were being improperly mapped and unmapped\n* (only manifested if cache-coherency was off)\n* Added support for using the eTSEC exact-match MAC registers\n* Bumped the version to 1.3\n* Added support for distinguishing between reduced 100 and 10 Mbit modes\n* Modified default coalescing values to lower latency\n* Added documentation\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "4c8d3d997ef3c0594350fba716529905b314287e",
      "tree": "8439efcf2aa645a0e9bebd9e40d138c95d279671",
      "parents": [
        "c1986ee9bea3d880bcf0d3f1a31e055778f306c7"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@gate.crashing.org",
        "time": "Sun Nov 13 16:06:30 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:10 2005 -0800"
      },
      "message": "[PATCH] Update email address for Kumar\n\nChanged jobs and the Freescale address is no longer valid.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "733482e445ca4450cf41381b1c95e2b8c7145114",
      "tree": "d31a2fdaeb8e439fc348a781c780a035d794266d",
      "parents": [
        "c1a0f5e3c01d28b6782457bee5ae5ace3a9958ec"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olh@suse.de",
        "time": "Tue Nov 08 21:34:55 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:57 2005 -0800"
      },
      "message": "[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason\n\nThis patch removes almost all inclusions of linux/version.h.  The 3\n#defines are unused in most of the touched files.\n\nA few drivers use the simple KERNEL_VERSION(a,b,c) macro, which is\nunfortunatly in linux/version.h.\n\nThere are also lots of #ifdef for long obsolete kernels, this was not\ntouched.  In a few places, the linux/version.h include was move to where\nthe LINUX_VERSION_CODE was used.\n\nquilt vi `find * -type f -name \"*.[ch]\"|xargs grep -El \u0027(UTS_RELEASE|LINUX_VERSION_CODE|KERNEL_VERSION|linux/version.h)\u0027|grep -Ev \u0027(/(boot|coda|drm)/|~$)\u0027`\n\nsearch pattern:\n/UTS_RELEASE\\|LINUX_VERSION_CODE\\|KERNEL_VERSION\\|linux\\/\\(utsname\\|version\\).h\n\nSigned-off-by: Olaf Hering \u003colh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb40dcbb0fcebe1df08ba261483fcc38b307d063",
      "tree": "aefeb8db397de215cf1ff1c5ff7a581cee2b2b4b",
      "parents": [
        "acc4b985a6f8f22a0e826692894a4af234764001"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Fri Sep 23 22:54:21 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Sep 23 22:54:21 2005 -0400"
      },
      "message": "[netdrvr gianfar] use new phy layer\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "0bbaf069f053957e8d733784e18a2992afd1dd3c",
      "tree": "5fd2250138b0486aaa5b135e70afe551b92d8374",
      "parents": [
        "be83668a253149d99085ca4afe6cd8dc8a43fcd0"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@freescale.com",
        "time": "Mon Jun 20 10:54:21 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Jun 27 00:40:33 2005 -0400"
      },
      "message": "[PATCH] gianfar: Add support enhanced TSEC features on the MPC 8548\n\nJeff,\n\nJust incase this got lost in the recent netdev mailing list transition\nhere is a nicer version of Andy\u0027s patch for gianfar.\n\n- kumar\n\n* TCP/IP/UDP checksumming and verification\n* VLAN tag insertion/extraction\n* Larger multicast hash-table\n* Padding to align IP headers\n\nAlso added:\n* msg lvl support\n* Some whitespace cleanup\n\nSigned-off-by: Andy Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Kumar Gala \u003ckumar.gala@freescale.com\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"
    }
  ]
}
