)]}'
{
  "log": [
    {
      "commit": "1ae5dc342ac78d7a42965fd1f323815f6f5ef2c1",
      "tree": "d1955a7639e99832590df26466a34d5786a880ae",
      "parents": [
        "2b0b05ddc04b6d45e71cd36405df512075786f1e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 10 05:01:31 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 10 05:01:31 2010 -0700"
      },
      "message": "net: trans_start cleanups\n\nNow that core network takes care of trans_start updates, dont do it\nin drivers themselves, if possible. Drivers can avoid one cache miss\n(on dev-\u003etrans_start) in their start_xmit() handler.\n\nExceptions are NETIF_F_LLTX drivers\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb4361c1dc29cd870f664c004b1817106fbce0fa",
      "tree": "c31533210d738c9074b21b8f31fe0399b39545f0",
      "parents": [
        "309361e09ca9e9670dc8664e5d14125bf82078af",
        "fb9e2d887243499b8d28efcf80821c4f6a092395"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 06 08:34:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 06 08:34:06 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (37 commits)\n  smc91c92_cs: fix the problem of \"Unable to find hardware address\"\n  r8169: clean up my printk uglyness\n  net: Hook up cxgb4 to Kconfig and Makefile\n  cxgb4: Add main driver file and driver Makefile\n  cxgb4: Add remaining driver headers and L2T management\n  cxgb4: Add packet queues and packet DMA code\n  cxgb4: Add HW and FW support code\n  cxgb4: Add register, message, and FW definitions\n  netlabel: Fix several rcu_dereference() calls used without RCU read locks\n  bonding: fix potential deadlock in bond_uninit()\n  net: check the length of the socket address passed to connect(2)\n  stmmac: add documentation for the driver.\n  stmmac: fix kconfig for crc32 build error\n  be2net: fix bug in vlan rx path for big endian architecture\n  be2net: fix flashing on big endian architectures\n  be2net: fix a bug in flashing the redboot section\n  bonding: bond_xmit_roundrobin() fix\n  drivers/net: Add missing unlock\n  net: gianfar - align BD ring size console messages\n  net: gianfar - initialize per-queue statistics\n  ...\n"
    },
    {
      "commit": "ce6fbdefb68d46db88170494b277551f955b48e2",
      "tree": "518b920f15c6cb00717767b521f3f596babfe34d",
      "parents": [
        "ddc01b3b8ab224b346daf61976078b166f36b7e8"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Mar 29 05:35:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:03:18 2010 -0700"
      },
      "message": "drivers/net: Add missing unlock\n\nUnlock the lock before leaving the function.\n\nA simplified version of the semantic patch that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r exists@\nexpression E1;\nidentifier f;\n@@\n\nf (...) { \u003c+...\n* spin_lock_irqsave (E1,...);\n... when !\u003d E1\n* return ...;\n...+\u003e }\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "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": "4cd24eaf0c6ee7f0242e34ee77ec899f255e66b5",
      "tree": "99f57f6374a58022e1e5ed1cbc12699288c7eae1",
      "parents": [
        "8e5574211d96c0552f84c757718475fdb4021be7"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon Feb 08 04:30:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 11:38:58 2010 -0800"
      },
      "message": "net: use netdev_mc_count and netdev_mc_empty when appropriate\n\nThis patch replaces dev-\u003emc_count in all drivers (hopefully I didn\u0027t miss\nanything). Used spatch and did small tweaks and conding style changes when\nit was suitable.\n\nJirka\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89d71a66c40d629e3b1285def543ab1425558cd5",
      "tree": "45159e85418170fe36e4e023d9617693625d1740",
      "parents": [
        "bff1c09640b3006bca711e18ef08a5fb955ad9b5"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 13 05:34:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 11:48:18 2009 -0700"
      },
      "message": "net: Use netdev_alloc_skb_ip_align()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb74c2fcac05fced50cd11b8e8dcecede1d4d880",
      "tree": "f22fa8554982cf501a0503b77bf230751e9cd136",
      "parents": [
        "1ebb5a1aa9a1ede80a37684215971c6130ac91c8"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Sep 30 22:28:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 01 14:34:43 2009 -0700"
      },
      "message": "don\u0027t use __devexit_p to wrap sgiseeq_remove\n\nThe function sgiseeq_remove is defined using __exit, so don\u0027t use\n__devexit_p but __exit_p to wrap it.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: netdev@vger.kernel.org\nCc: linux-kernel@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a65a688182cd7f5b69bd6dd9022be96ea771642c",
      "tree": "f41d1a67b00654ff80371e37f1bc3f630ad4235f",
      "parents": [
        "27a242e92f77c955433ce0347533f401ecdcd0f3"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Tue Jul 21 11:25:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 18:01:04 2009 -0700"
      },
      "message": "net: move sgiseeq\u0027s probe function to .devinit.text\n\nA pointer to sgiseeq_probe is passed to the core via\nplatform_driver_register and so the function must not disappear when the\n.init sections are discarded.  Otherwise (if also having HOTPLUG\u003dy)\nunbinding and binding a device to the driver via sysfs will result in an\noops as does a device being registered late.\n\nAn alternative to this patch is using platform_driver_probe instead of\nplatform_driver_register plus removing the pointer to the probe function\nfrom the struct platform_driver.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nCc: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nCc: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ed106549d17474ca17a16057f4c0ed4eba5a7ca",
      "tree": "b98c09081509b3a9757339b6b66779e4126dfa29",
      "parents": [
        "0e8635a8e1f2d4a9e1bfc6c3b21419a5921e674f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 23 06:03:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 05 19:16:04 2009 -0700"
      },
      "message": "net: use NETDEV_TX_OK instead of 0 in ndo_start_xmit() functions\n\nThis patch is the result of an automatic spatch transformation to convert\nall ndo_start_xmit() return values of 0 to NETDEV_TX_OK.\n\nSome occurences are missed by the automatic conversion, those will be\nhandled in a seperate patch.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c2c6be186097aafd8f8a17927203b457545cc69",
      "tree": "71d29dd3f697c1ca369face09f07e7d42c2209c4",
      "parents": [
        "b4cf3421afce25655233cf66f6ec545baa8cb6ae"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Wed Apr 15 12:52:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 02:20:25 2009 -0700"
      },
      "message": "sgiseeq: convert to net_device_ops\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f15ea42b64941001a401cf855a0869e24f3a845",
      "tree": "27c7534ad70ebda6986491daeac0ebe0f1ca54ed",
      "parents": [
        "4cf1653aa90c6320dc8032443b5e322820aa28b1"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Wed Nov 12 23:38:36 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 12 23:38:36 2008 -0800"
      },
      "message": "netdevice: safe convert to netdev_priv() #part-3\n\nWe have some reasons to kill netdev-\u003epriv:\n1. netdev-\u003epriv is equal to netdev_priv().\n2. netdev_priv() wraps the calculation of netdev-\u003epriv\u0027s offset, obviously\n   netdev_priv() is more flexible than netdev-\u003epriv.\nBut we cann\u0027t kill netdev-\u003epriv, because so many drivers reference to it\ndirectly.\n\nThis patch is a safe convert for netdev-\u003epriv to netdev_priv(netdev).\nSince all of the netdev-\u003epriv is only for read.\nBut it is too big to be sent in one mail.\nI split it to 4 parts and make every part smaller than 100,000 bytes,\nwhich is max size allowed by vger.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "babcda74e9d96bb58fd9c6c5112dbdbff169e695",
      "tree": "fcbe5e70f1fff01ad49504171e964c387a5ad7f8",
      "parents": [
        "ab2910921064b657610a3b501358a305e13087ea"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 21:11:17 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 21:11:17 2008 -0800"
      },
      "message": "drivers/net: Kill now superfluous -\u003elast_rx stores.\n\nThe generic packet receive code takes care of setting\nnetdev-\u003elast_rx when necessary, for the sake of the\nbonding ARP monitor.\n\nDrivers need not do it any more.\n\nSome cases had to be skipped over because the drivers\nwere making use of the -\u003elast_rx value themselves.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e174961ca1a0b28f7abf0be47973ad57cb74e5f0",
      "tree": "e8f74ecd420a0e380a71670e5aec5c2a0c15640a",
      "parents": [
        "0c68ae2605dbcf67414d8d1f19af93be44b355fb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Oct 27 15:59:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 27 17:06:18 2008 -0700"
      },
      "message": "net: convert print_mac to %pM\n\nThis converts pretty much everything to print_mac. There were\na few things that had conflicts which I have just dropped for\nnow, no harm done.\n\nI\u0027ve built an allyesconfig with this and looked at the files\nthat weren\u0027t built very carefully, but it\u0027s a huge patch.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72abb46101fb5c47a9592914adb221b430ff26bd",
      "tree": "692680b1a571d4a87461b5ac228588d2b759deaa",
      "parents": [
        "a433686c73bf63242475ef7e611114f43dd06581"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Apr 18 13:50:44 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Apr 25 02:08:54 2008 -0400"
      },
      "message": "net drivers: fix platform driver hotplug/coldplug\n\nSince 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is\nprefixed with \"platform:\".  Add MODULE_ALIAS() to the hotpluggable network\nplatform drivers, to re-enable auto loading.\n\nNOTE: didn\u0027t change drivers/net/fs_enet/fs_enet-main.c \"old binding\" support.\nThat looks problematic in the first place (it even uses the ancient \"struct\ndevice_driver\" binding scheme for platform_bus!) and I suspect it will vanish\nsoonish when arch/powerpc rules the world.  Also, drivers/net/ne.c would have\nneeded more thought to sort out.\n\n[akpm@linux-foundation.org: fix sgiseeq.c]\n[dbrownell@users.sourceforge.net: more drivers, registration fixes]\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Scott Wood \u003cscottwood@freescale.com\u003e\nCc: Vitaly Bordug \u003cvitb@kernel.crashing.org\u003e\nCc: Dale Farnsworth \u003cdale@farnsworth.org\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Andrew Victor \u003candrew@sanpeople.com\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "a24a789cc6b0a736759bd221b0a32f9a240c2f6e",
      "tree": "459ceb37bbc49170cd308b0b83589764f9f2b727",
      "parents": [
        "bcc52894988ac8471667d84eb7d118af37763338"
      ],
      "author": {
        "name": "Thomas Bogendoerfer",
        "email": "tsbogend@alpha.franken.de",
        "time": "Sun Jan 13 00:08:47 2008 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:08:02 2008 -0800"
      },
      "message": "SGISEEQ: fix oops when doing ifconfig down; ifconfig up\n\nWhen doing init_ring checking whether a new skb needs to be allocated\nwas wrong.\n\nSigned-off-by: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "49b11bc3d43eb287fc9d78e1a892e97288980d49",
      "tree": "ce7605b5e8dc2edbea41336d479c537d52de8959",
      "parents": [
        "db17f39564539e71c9b3a63e7ed5313fe311d266"
      ],
      "author": {
        "name": "Thomas Bogendoerfer",
        "email": "tsbogend@alpha.franken.de",
        "time": "Wed Dec 19 13:42:36 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:07:56 2008 -0800"
      },
      "message": "SGISEEQ: use cached memory access to make driver work on IP28\n\n- Use inline functions for dma_sync_* instead of macros\n- added Kconfig change to make selection for similair SGI boxes easier\n\nSigned-off-by: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "43831b1581031991357385dd6c0762c06a3a62ab",
      "tree": "0b2dab44d0172d67cdbc869d392031324fc11318",
      "parents": [
        "b0cd2f9016f75eb8a9fdc45d32f9b41fb16d48c9"
      ],
      "author": {
        "name": "Thomas Bogendoerfer",
        "email": "tsbogend@alpha.franken.de",
        "time": "Sat Nov 24 13:29:19 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:04:28 2008 -0800"
      },
      "message": "SGISEEQ: use cached memory access to make driver work on IP28\n\nSGI IP28 machines would need special treatment (enable adding addtional\nwait states) when accessing memory uncached. To avoid this pain I changed\nthe driver to use only cached access to memory.\n\nSigned-off-by: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0795af5729b18218767fab27c44b1384f72dc9ad",
      "tree": "67c16df84aa6ec219340b8ea1b5cfb0e8150a216",
      "parents": [
        "95ea36275f3c9a1d3d04c217b4b576c657c4e70e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Oct 03 17:59:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:42 2007 -0700"
      },
      "message": "[NET]: Introduce and use print_mac() and DECLARE_MAC_BUF()\n\nThis is nicer than the MAC_FMT stuff.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09f75cd7bf13720738e6a196cc0107ce9a5bd5a0",
      "tree": "4c85b0b395abe7f88c87162fc22570e5de255cb1",
      "parents": [
        "ff8ac60948ba819b89e9c87083e8050fc2f89999"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Oct 03 17:41:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:16 2007 -0700"
      },
      "message": "[NET] drivers/net: statistics cleanup #1 -- save memory and shrink code\n\nWe now have struct net_device_stats embedded in struct net_device,\nand the default -\u003eget_stats() hook does the obvious thing for us.\n\nRun through drivers/net/* and remove the driver-local storage of\nstatistics, and driver-local -\u003eget_stats() hook where applicable.\n\nThis was just the low-hanging fruit in drivers/net; plenty more drivers\nremain to be updated.\n\n[ Resolved conflicts with napi_struct changes and fix sunqe build\n  regression... -DaveM ]\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99cd149efe824cf27c5d34506002a0fbfa831c0f",
      "tree": "8df785ae6c8b4d4416412e72f9a5c52875981c43",
      "parents": [
        "dc67369573eee33a4b1220d416cb7dd3501dccbc"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Sep 04 14:41:01 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:07 2007 -0700"
      },
      "message": "sgiseeq: replace use of dma_cache_wback_inv\n\nThe sgiseeq driver is one of the few remaining users of the ancient\ncache banging DMA API.  Replaced with the modern days DMA API.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e3efb05468128e834cf17d492822333c6e189ae4",
      "tree": "04aaf93bdfa6210dac5116d9e6359e663fff9fb8",
      "parents": [
        "c2cb71fafb4d514fbb8c9a8d663486a8f0400afa"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Wed Aug 22 16:03:52 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Aug 25 02:31:13 2007 -0400"
      },
      "message": "sgiseeq: Fix return type of sgiseeq_remove\n\nThe driver remove method needs to return an int not void.  This was just\nnever noticed because usually this driver is not being built as a module.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8c7b7faaa630fef7f68d8728cee1cce398cc9697",
      "tree": "844c5c5aad361b7c1e24f8d0b8f3195c4a4ad816",
      "parents": [
        "a7ab4b501f9b8a9dc4d5cee542db67b6ccd1088b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:08:12 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:08:12 2007 -0700"
      },
      "message": "[NET]: Kill eth_copy_and_sum().\n\nIt hasn\u0027t \"summed\" anything in over 7 years, and it\u0027s\njust a straight mempcy ala skb_copy_to_linear_data()\nso just get rid of it.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df9f54084f1faf611cedd846d38b0631f9d4e9a5",
      "tree": "a4e5f46b26a761d62d79d5b367e885cc8a88b4b6",
      "parents": [
        "129a84de2347002f09721cda3155ccfd19fade40"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Fri May 11 15:48:58 2007 +0100"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Fri May 11 17:00:29 2007 +0100"
      },
      "message": "Convert SGI IP22 and specific drivers to platform_device.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "78ee5b3cc88297bb98843c24b231e99f3f2886a0",
      "tree": "6fb146a1808e798841dd9ceb09ffd98fdeacfac9",
      "parents": [
        "18604c54854549ee0ad65e27ca9cb91c96af784c"
      ],
      "author": {
        "name": "Ladislav Michl",
        "email": "ladis@linux-mips.org",
        "time": "Wed Feb 28 01:18:35 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 11:00:56 2007 -0400"
      },
      "message": "Add support for Seeq 8003 on Challenge S Mezz board.\n\nThanks to Jö Fahlke for donating hardware.\n\nSigned-off-by: Ladislav Michl \u003cladis@linux-mips.org\u003e\n\nForward porting of Ladis\u0027 2.4 patch.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d626f62b11e00c16e81e4308ab93d3f13551812a",
      "tree": "fac4af6ced853755e12fc709d55f0c2bec51265d",
      "parents": [
        "2a123b86e2b242a4a6db990d2851d45e192f88e5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 27 18:55:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_copy_from_linear_data{_offset}\n\nTo clearly state the intent of copying from linear sk_buffs, _offset being a\noverly long variant but interesting for the sake of saving some bytes.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "4c13eb6657fe9ef7b4dc8f1a405c902e9e5234e0",
      "tree": "d338fad7a61824d8c14c079c0be437ea4ad83f01",
      "parents": [
        "029720f15dcd3c6c16824177cfc486083b229411"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 17:40:23 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:30 2007 -0700"
      },
      "message": "[ETH]: Make eth_type_trans set skb-\u003edev like the other *_type_trans\n\nOne less thing for drivers writers to worry about.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "92b0c4e240d0768f875bd08d01ec26d87b9546d1",
      "tree": "e2ab2a510ba93237cc259a53562dc7a2cf01998e",
      "parents": [
        "e9eb70c92143c8f03e456aa60d89204b3311e554"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Mon Feb 26 01:50:34 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Feb 27 04:21:25 2007 -0500"
      },
      "message": "sgiseeq: Don\u0027t include unnecessary headerfiles.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\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": "a4d4d5181d043ea835c15da6c85a5bbecbaded6e",
      "tree": "dcc0093113b8ae06eaa85e5e1b23fde22a34cb60",
      "parents": [
        "60a89ff6d2681029b3d46b5d23dccf2903a254b4"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Wed Mar 08 11:49:31 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Mar 11 20:32:17 2006 -0500"
      },
      "message": "[PATCH] Sparse: Cleanup sgiseeq sparse warnings.\n\n o Make sgiseeq_dump_rings static.\n o Delete unused sgiseeq_my_reset.\n o Move DEBUG define to beginning where it\u0027s easier to spot and will be\n   seen by \u003clinux/kernel.h\u003e as well.\n o Use NULL for pointer initialization.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "302a5c4b3d4d6aff7772a4b3431bb772586e6011",
      "tree": "0f08e4c1419dae13e86039b53db2271d57bde4e3",
      "parents": [
        "2891439e7378e35534d7eb32f77671dc4d61db4c"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Mon Oct 10 14:50:56 2005 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 18:03:47 2005 -0400"
      },
      "message": "[PATCH] sgiseeq: Configure PIO and DMA timing requests.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n\n drivers/net/sgiseeq.c       |   28 ++++++++++++++--------------\n include/asm-mips/sgi/hpc3.h |   40 ++++++++++++++++++++--------------------\n 2 files changed, 34 insertions(+), 34 deletions(-)\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "2891439e7378e35534d7eb32f77671dc4d61db4c",
      "tree": "d2cba6b9391f5488f2b6d8d6418b43e9ae3c2969",
      "parents": [
        "bc053d45cb0ca5daeaa69ae9ac43cdea42693f60"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Mon Oct 10 14:50:51 2005 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 18:03:47 2005 -0400"
      },
      "message": "[PATCH] sgiseeq: Fix resource handling.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n\n drivers/net/sgiseeq.c |    9 ++++-----\n 1 files changed, 4 insertions(+), 5 deletions(-)\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.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"
    }
  ]
}
