)]}'
{
  "log": [
    {
      "commit": "60903f2c6616939afd0335b49697beeb7219657e",
      "tree": "99825b33f85dbb00f649f9c6e863861a8368ef0e",
      "parents": [
        "ee74baa7d83e9e0c2fdaff8122ee9cefd06cddc5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Jan 02 00:35:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jan 03 18:38:10 2007 -0800"
      },
      "message": "[NET] drivers/net/loopback.c: convert to module_init()\n\nThis patch converts drivers/net/loopback.c to using module_init().\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "58f539740b1ccfc5ef4e509ec2efe82621b546e3",
      "tree": "f0e24b555808ce919528a0c5950e188768e97f23",
      "parents": [
        "78d79423179c0efc7ec34b55d287e7be4ca07da6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Oct 20 00:32:41 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 20 00:32:41 2006 -0700"
      },
      "message": "[NET]: Can use __get_cpu_var() instead of per_cpu() in loopback driver.\n\nAs BHs are off in loopback_xmit(), preemption cannot occurs, so we can\nuse __get_cpu_var() instead of per_cpu() (and avoid a\npreempt_enable()/preempt_disable() pair)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5175c3786c244f8b689854db24c9e79b1c6a084f",
      "tree": "459975fe6a7b6dd5294b362397b185959b4ab96d",
      "parents": [
        "9ce8ade015a3f82dbdf856df7a685878dd1cc0e1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Oct 18 20:51:57 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 18 20:51:57 2006 -0700"
      },
      "message": "[NET]: reduce per cpu ram used for loopback stats\n\nWe dont need a full struct net_device_stats (currently 23 long : 184 bytes on \nx86_64) per possible CPU, but only two counters : bytes and packets\n\nWe save few CPU cycles too in loopback_xmit() not updating 4 fields, but 2. \n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7fa6b06689085a3e2237cf810f5e0c114e00a2da",
      "tree": "729eeef31a9ad44c0635f5e27b6c924767e17238",
      "parents": [
        "1b0fee7d68f234be6b270cda51d9fcb71bebd780"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Sep 27 20:33:34 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:02:49 2006 -0700"
      },
      "message": "[NET] loopback: minor statistics optimization\n\nThe loopback device status structure is a singleton and doesn\u0027t\nneed to be allocated. Add ethtool_ops hooks to show checksum always on,\nand make ethtool_ops const.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\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": "6aa20a2235535605db6d6d2bd850298b2fe7f31e",
      "tree": "df0b855043407b831d57f2f2c271f8aab48444f4",
      "parents": [
        "7a291083225af6e22ffaa46b3d91cfc1a1ccaab4"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 13:24:59 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Sep 13 13:24:59 2006 -0400"
      },
      "message": "drivers/net: Trim trailing whitespace\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "89114afd435a486deb8583e89f490fc274444d18",
      "tree": "800e784ba59755f9f3c9926a6992e1d0f5b8eec7",
      "parents": [
        "9c6c6795eda34e4dc38ecac912a16b6314082beb"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jul 08 13:34:32 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 08 13:34:32 2006 -0700"
      },
      "message": "[NET] gso: Add skb_is_gso\n\nThis patch adds the wrapper function skb_is_gso which can be used instead\nof directly testing skb_shinfo(skb)-\u003egso_size.  This makes things a little\nnicer and allows us to change the primary key for indicating whether an skb\nis GSO (if we ever want to do that).\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7967168cefdbc63bf332d6b1548eca7cd65ebbcc",
      "tree": "c45759149ae0acdc89d746e556a0ae278d11776d",
      "parents": [
        "d4828d85d188dc70ed172802e798d3978bb6e29e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 22 02:40:14 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jun 23 02:07:29 2006 -0700"
      },
      "message": "[NET]: Merge TSO/UFO fields in sk_buff\n\nHaving separate fields in sk_buff for TSO/UFO (tso_size/ufo_size) is not\ngoing to scale if we add any more segmentation methods (e.g., DCCP).  So\nlet\u0027s merge them.\n\nThey were used to tell the protocol of a packet.  This function has been\nsubsumed by the new gso_type field.  This is essentially a set of netdev\nfeature bits (shifted by 16 bits) that are required to process a specific\nskb.  As such it\u0027s easy to tell whether a given device can process a GSO\nskb: you just have to and the gso_type field and the netdev\u0027s features\nfield.\n\nI\u0027ve made gso_type a conjunction.  The idea is that you have a base type\n(e.g., SKB_GSO_TCPV4) that can be modified further to support new features.\nFor example, if we add a hardware TSO type that supports ECN, they would\ndeclare NETIF_F_TSO | NETIF_F_TSO_ECN.  All TSO packets with CWR set would\nhave a gso_type of SKB_GSO_TCPV4 | SKB_GSO_TCPV4_ECN while all other TSO\npackets would be SKB_GSO_TCPV4.  This means that only the CWR packets need\nto be emulated in software.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0fed48463fb20c6bcabc5cf70e2de47b30507ee1",
      "tree": "2e5633d4afe21dc79d1f0284951a4ee71c2c843c",
      "parents": [
        "0a945022778f100115d0cb6234eb28fc1b15ccaf"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Mar 28 01:56:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:05 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: loopback device.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "394e3902c55e667945f6f1c2bdbc59842cce70f7",
      "tree": "f4bca0bdc0c291fda6f6949265aacec0669b9084",
      "parents": [
        "63872f87a151413100678f110d1556026002809e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:01:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:17 2006 -0800"
      },
      "message": "[PATCH] more for_each_cpu() conversions\n\nWhen we stop allocating percpu memory for not-possible CPUs we must not touch\nthe percpu data for not-possible CPUs at all.  The correct way of doing this\nis to test cpu_possible() or to use for_each_cpu().\n\nThis patch is a kernel-wide sweep of all instances of NR_CPUS.  I found very\nfew instances of this bug, if any.  But the patch converts lots of open-coded\ntest to use the preferred helper macros.\n\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Christian Zankel \u003cchris@zankel.net\u003e\nCc: Philippe Elie \u003cphil.el@wanadoo.fr\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a3bc068022b968a3042b48eb9a8e8b0418fb9cdd",
      "tree": "6bbc2806756924105802f4584157396fb98d282c",
      "parents": [
        "54cfb5aa0f4859bd38706eabe0118175780a542f",
        "91aa9fb573fcc50bc74d5ee64c7e9b36131f1804"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Aug 18 22:14:39 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Aug 18 22:14:39 2005 -0400"
      },
      "message": "Merge /spare/repo/linux-2.6/\n"
    },
    {
      "commit": "22783649568a28839c5a362f47da7819ecfcbb9f",
      "tree": "19065dd333e9e4dd456f08cb8426544b24ba479e",
      "parents": [
        "001dd250c1c68667a5c3b74979fa614e2edc9ceb"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Aug 18 14:05:18 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 18 14:05:18 2005 -0700"
      },
      "message": "[NET]: Fix comment in loopback driver.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e920bfb0395fb16909fb98cb6e2782a1c6b73c7",
      "tree": "20f83aeaf19fd833f0a8aa36f8b9ce7bacb985da",
      "parents": [
        "18c16c696e8b2323a306af455c686df15c717206"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Sat Jul 02 21:28:23 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Jul 31 01:06:11 2005 -0400"
      },
      "message": "[PATCH] loopback: whitespace cleanup\n\nWhitespace cleanup for loopback driver.  Hopefully it fixes the last few\nannoyances.\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "18c16c696e8b2323a306af455c686df15c717206",
      "tree": "a273c9fe65d970a10490b838f95e2d52e2193ed3",
      "parents": [
        "d2ae1d2ff9282ca061b6f5244eee4c28ee2b3ffa"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Sat Jul 02 21:28:22 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Jul 31 01:06:10 2005 -0400"
      },
      "message": "[PATCH] loopback: optimize stats\n\nThis patch slightly optimizes the loopback driver\u0027s stats update.\n\nSaves two loads, one add and one increment per packet sent.\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "d2ae1d2ff9282ca061b6f5244eee4c28ee2b3ffa",
      "tree": "12bc14f038ed644faa6299912453f2784f755315",
      "parents": [
        "2f761478a2b436efa23659b4d5c826e53b11f91a"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Sat Jul 02 21:28:21 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Jul 31 01:06:10 2005 -0400"
      },
      "message": "[PATCH] loopback: #ifdef the TSO code\n\nThis patch #ifdefs the TSO code in the loopback driver.\n\nSaves ~800 bytes of text on i386 and avoids a conditional in the fast path.\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "02c30a84e6298b6b20a56f0896ac80b47839e134",
      "tree": "031e9d68ad83c371af7ebeb6840f3ede52698663",
      "parents": [
        "125947f2ab8c45417feaa4a8800e89529ca4612f"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Thu May 05 16:16:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:49 2005 -0700"
      },
      "message": "[PATCH] update Ross Biro bouncing email address\n\nRoss moved.  Remove the bad email address so people will find the correct\none in ./CREDITS.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\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"
    }
  ]
}
