)]}'
{
  "log": [
    {
      "commit": "37c3185a02d4b85fbe134bf5204535405dd2c957",
      "tree": "7712fb706bb446b5b6a8ae25f365b4e135d9a1fb",
      "parents": [
        "f4c50d990dcf11a296679dc05de3873783236711"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 22 03:07:29 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jun 23 02:07:36 2006 -0700"
      },
      "message": "[NET]: Added GSO toggle\n\nThis patch adds a generic segmentation offload toggle that can be turned\non/off for each net device.  For now it only supports in TCPv4.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6a78bfcb141f963187464bac838d46a81c3882a",
      "tree": "fe30917dea1ab4cc046c6f1b8c1875373040c84a",
      "parents": [
        "7967168cefdbc63bf332d6b1548eca7cd65ebbcc"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 22 02:57:17 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jun 23 02:07:31 2006 -0700"
      },
      "message": "[NET]: Add generic segmentation offload\n\nThis patch adds the infrastructure for generic segmentation offload.\nThe idea is to tap into the potential savings of TSO without hardware\nsupport by postponing the allocation of segmented skb\u0027s until just\nbefore the entry point into the NIC driver.\n\nThe same structure can be used to support software IPv6 TSO, as well as\nUFO and segmentation offload for other relevant protocols, e.g., DCCP.\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": "a4cfae13cef6a700a04b13ba1d819c0641b1b26f",
      "tree": "91aa4f8be6df4494276d1a064d9f8f2b994aa367",
      "parents": [
        "be883da7594b0a2a02074e683673ae0e522566a4",
        "ff7512e1a2a3504649d3716a757f43807b6d26ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 17:39:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 17:39:53 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [ATM]: fix broken uses of NIPQUAD in net/atm\n  [SCTP]: sctp_unpack_cookie() fix\n  [SCTP]: Fix unintentional change to SCTP_ASSERT when !SCTP_DEBUG\n  [NET]: Prevent multiple qdisc runs\n  [CONNECTOR]: Initialize subsystem earlier.\n  [NETFILTER]: xt_sctp: fix endless loop caused by 0 chunk length\n"
    },
    {
      "commit": "cee4cca740d209bcb4b9857baa2253d5ba4e3fbe",
      "tree": "88a23004393ea4a32cad79839479c8e653e401d6",
      "parents": [
        "2edc322d420a4cec8dbc184a1220ecd7fa9f8ae6",
        "9348f0de2d2b541b4ba64fb1f4efee9710a3d731"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:10:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:10:08 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/hdrcleanup-2.6\n\n* git://git.infradead.org/hdrcleanup-2.6: (63 commits)\n  [S390] __FD_foo definitions.\n  Switch to __s32 types in joystick.h instead of C99 types for consistency.\n  Add \u003csys/types.h\u003e to headers included for userspace in \u003clinux/input.h\u003e\n  Move inclusion of \u003clinux/compat.h\u003e out of user scope in asm-x86_64/mtrr.h\n  Remove struct fddi_statistics from user view in \u003clinux/if_fddi.h\u003e\n  Move user-visible parts of drivers/s390/crypto/z90crypt.h to include/asm-s390\n  Revert include/media changes: Mauro says those ioctls are only used in-kernel(!)\n  Include \u003clinux/types.h\u003e and use __uXX types in \u003clinux/cramfs_fs.h\u003e\n  Use __uXX types in \u003clinux/i2o_dev.h\u003e, include \u003clinux/ioctl.h\u003e too\n  Remove private struct dx_hash_info from public view in \u003clinux/ext3_fs.h\u003e\n  Include \u003clinux/types.h\u003e and use __uXX types in \u003clinux/affs_hardblocks.h\u003e\n  Use __uXX types in \u003clinux/divert.h\u003e for struct divert_blk et al.\n  Use __u32 for elf_addr_t in \u003casm-powerpc/elf.h\u003e, not u32. It\u0027s user-visible.\n  Remove PPP_FCS from user view in \u003clinux/ppp_defs.h\u003e, remove __P mess entirely\n  Use __uXX types in user-visible structures in \u003clinux/nbd.h\u003e\n  Don\u0027t use \u0027u32\u0027 in user-visible struct ip_conntrack_old_tuple.\n  Use __uXX types for S390 DASD volume label definitions which are user-visible\n  S390 BIODASDREADCMB ioctl should use __u64 not u64 type.\n  Remove unneeded inclusion of \u003clinux/time.h\u003e from \u003clinux/ufs_fs.h\u003e\n  Fix private integer types used in V4L2 ioctls.\n  ...\n\nManually resolve conflict in include/linux/mtd/physmap.h\n"
    },
    {
      "commit": "48d83325b61043e3bbd24dd37b9fe433744cf330",
      "tree": "00dc0682be0f096676ac885152b4ae14c4137338",
      "parents": [
        "d6cc7f1a3b33c89c91b3dfce1ff053178893470e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 19 23:57:59 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 19 23:57:59 2006 -0700"
      },
      "message": "[NET]: Prevent multiple qdisc runs\n\nHaving two or more qdisc_run\u0027s contend against each other is bad because\nit can induce packet reordering if the packets have to be requeued.  It\nappears that this is an unintended consequence of relinquinshing the queue\nlock while transmitting.  That in turn is needed for devices that spend a\nlot of time in their transmit routine.\n\nThere are no advantages to be had as devices with queues are inherently\nsingle-threaded (the loopback device is not but then it doesn\u0027t have a\nqueue).\n\nEven if you were to add a queue to a parallel virtual device (e.g., bolt\na tbf filter in front of an ipip tunnel device), you would still want to\nprocess the queue in sequence to ensure that the packets are ordered\ncorrectly.\n\nThe solution here is to steal a bit from net_device to prevent this.\n\nBTW, as qdisc_restart is no longer used by anyone as a module inside the\nkernel (IIRC it used to with netif_wake_queue), I have not exported the\nnew __qdisc_run function.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8648b3053bff39a7ee4c711d74268079c928a657",
      "tree": "6de70eedf63c4b965d04040323827f1bc520ccdf",
      "parents": [
        "00b7050426da8e7e58c889c5c80a19920d2d41b3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jun 17 22:06:05 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 17 22:06:05 2006 -0700"
      },
      "message": "[NET]: Add NETIF_F_GEN_CSUM and NETIF_F_ALL_CSUM\n\nThe current stack treats NETIF_F_HW_CSUM and NETIF_F_NO_CSUM\nidentically so we test for them in quite a few places.  For the sake\nof brevity, I\u0027m adding the macro NETIF_F_GEN_CSUM for these two.  We\nalso test the disjunct of NETIF_F_IP_CSUM and the other two in various\nplaces, for that purpose I\u0027ve added NETIF_F_ALL_CSUM.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "932ff279a43ab7257942cddff2595acd541cc49b",
      "tree": "e60130673a20d71becdac858c2589d8dfbf3ae1f",
      "parents": [
        "bf0857ea32addb6bc8b46383604b218b8ec09f19"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jun 09 12:20:56 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jun 17 21:30:14 2006 -0700"
      },
      "message": "[NET]: Add netif_tx_lock\n\nVarious drivers use xmit_lock internally to synchronise with their\ntransmission routines.  They do so without setting xmit_lock_owner.\nThis is fine as long as netpoll is not in use.\n\nWith netpoll it is possible for deadlocks to occur if xmit_lock_owner\nisn\u0027t set.  This is because if a printk occurs while xmit_lock is held\nand xmit_lock_owner is not set can cause netpoll to attempt to take\nxmit_lock recursively.\n\nWhile it is possible to resolve this by getting netpoll to use\ntrylock, it is suboptimal because netpoll\u0027s sole objective is to\nmaximise the chance of getting the printk out on the wire.  So\ndelaying or dropping the message is to be avoided as much as possible.\n\nSo the only alternative is to always set xmit_lock_owner.  The\nfollowing patch does this by introducing the netif_tx_lock family of\nfunctions that take care of setting/unsetting xmit_lock_owner.\n\nI renamed xmit_lock to _xmit_lock to indicate that it should not be\nused directly.  I didn\u0027t provide irq versions of the netif_tx_lock\nfunctions since xmit_lock is meant to be a BH-disabling lock.\n\nThis is pretty much a straight text substitution except for a small\nbug fix in winbond.  It currently uses\nnetif_stop_queue/spin_unlock_wait to stop transmission.  This is\nunsafe as an IRQ can potentially wake up the queue.  So it is safer to\nuse netif_tx_disable.\n\nThe hamradio bits used spin_lock_irq but it is unnecessary as\nxmit_lock must never be taken in an IRQ handler.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db21733488f84a596faaad0d05430b3f51804692",
      "tree": "a2c1f6d39ce27d2e86b395f2bf536c1ab7396411",
      "parents": [
        "57c651f74cd8383df10a648e677902849de1bc0b"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Sat Jun 17 21:24:58 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 17 21:24:58 2006 -0700"
      },
      "message": "[I/OAT]: Setup the networking subsystem as a DMA client\n\nAttempts to allocate per-CPU DMA channels\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66643de455c27973ac31ad6de9f859d399916842",
      "tree": "7ebed7f051879007d4b11d6aaa9e65a1bcb0b08f",
      "parents": [
        "2c23d62abb820e19c54012520f08a198c2233a85",
        "387e2b0439026aa738a9edca15a57e5c0bcb4dfc"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 24 09:22:21 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 24 09:22:21 2006 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tinclude/asm-powerpc/unistd.h\n\tinclude/asm-sparc/unistd.h\n\tinclude/asm-sparc64/unistd.h\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "b17a7c179dd3ce7d04373fddf660eda21efc9db9",
      "tree": "9f141fc2919a0aab95237812f48fa3cd0a169806",
      "parents": [
        "a50bb7b9af9a7c39b2aba15678eb686ae428718c"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed May 10 13:21:17 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 10 13:21:17 2006 -0700"
      },
      "message": "[NET]: Do sysfs registration as part of register_netdevice.\n\nThe last step of netdevice registration was being done by a delayed\ncall, but because it was delayed, it was impossible to return any error\ncode if the class_device registration failed.\n\nSide effects:\n * one state in registration process is unnecessary.\n * register_netdevice can sleep inside class_device registration/hotplug\n * code in netdev_run_todo only does unregistration so it is simpler.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d324031245abbb54e4e0321004430826052b6c37",
      "tree": "23dda7055fce9675263fe992c3beda27f1161650",
      "parents": [
        "6810b548b25114607e0814612d84125abccc0a4f"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon May 08 15:11:26 2006 -0700"
      },
      "committer": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon May 08 16:00:23 2006 -0700"
      },
      "message": "sky2: backout NAPI reschedule\n\nThis is a backout of earlier patch.\n\nThe whole rescheduling hack was a bad idea. It doesn\u0027t really solve\nthe problem and it makes the code more complicated for no good reason.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "fe9925b551a95fae6ec61470c79f8b701a2fe928",
      "tree": "3df1817dee3c804d155e3a1c52b6ff696bc60293",
      "parents": [
        "1498221d51a43d5fa1a580618591497d90f957d9"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Sat May 06 17:56:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 06 17:56:03 2006 -0700"
      },
      "message": "[NET]: Create netdev attribute_groups with class_device_add\n\nAtomically create attributes when class device is added. This avoids\nthe race between registering class_device (which generates hotplug\nevent), and the creation of attribute groups.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6754b401a15eaa16492ea5dbaa4826361d3f411",
      "tree": "032f067d3af458527d903a7653885404ed82431e",
      "parents": [
        "acc429a517bd11fdcac9bea97d082d26231beb92",
        "693f7d362055261882659475d2ef022e32edbff1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sat Apr 29 01:42:26 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Apr 29 01:42:26 2006 +0100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "734cbc363b159caee158d5a83408c72d98bcacf0",
      "tree": "14d903eaf2b7580f791af9fd0d2800f1eb91723f",
      "parents": [
        "3b908870b8332dfd40be0e919e187aa4991536fb"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Tue Apr 25 10:58:50 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Apr 26 06:19:45 2006 -0400"
      },
      "message": "[PATCH] sky2: reschedule if irq still pending\n\nThis is a workaround for the case edge-triggered irq\u0027s. Several users\nseem to have broken configurations sharing edge-triggered irq\u0027s. To avoid\nlosing IRQ\u0027s, reshedule if more work arrives.\n\nThe changes to netdevice.h are to extract the part that puts device\nback in list into separate inline.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "56079431b6ba163df8ba26b3eccc82379f0c0ce4",
      "tree": "cdcfb1fdee55c567603ede007c7b0c91efe29b3a",
      "parents": [
        "68907dad58cd7ef11536e1db6baeb98b20af91b2"
      ],
      "author": {
        "name": "Denis Vlasenko",
        "email": "vda@ilport.com.ua",
        "time": "Wed Mar 29 15:57:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 29 15:57:29 2006 -0800"
      },
      "message": "[NET]: Deinline some larger functions from netdevice.h\n\nOn a allyesconfig\u0027ured kernel:\n\nSize  Uses Wasted Name and definition\n\u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n   95  162  12075 netif_wake_queue      include/linux/netdevice.h\n  129   86   9265 dev_kfree_skb_any     include/linux/netdevice.h\n  127   56   5885 netif_device_attach   include/linux/netdevice.h\n   73   86   4505 dev_kfree_skb_irq     include/linux/netdevice.h\n   46   60   1534 netif_device_detach   include/linux/netdevice.h\n  119   16   1485 __netif_rx_schedule   include/linux/netdevice.h\n  143    5    492 netif_rx_schedule     include/linux/netdevice.h\n   81    7    366 netif_schedule        include/linux/netdevice.h\n\nnetif_wake_queue is big because __netif_schedule is a big inline:\n\nstatic inline void __netif_schedule(struct net_device *dev)\n{\n        if (!test_and_set_bit(__LINK_STATE_SCHED, \u0026dev-\u003estate)) {\n                unsigned long flags;\n                struct softnet_data *sd;\n\n                local_irq_save(flags);\n                sd \u003d \u0026__get_cpu_var(softnet_data);\n                dev-\u003enext_sched \u003d sd-\u003eoutput_queue;\n                sd-\u003eoutput_queue \u003d dev;\n                raise_softirq_irqoff(NET_TX_SOFTIRQ);\n                local_irq_restore(flags);\n        }\n}\n\nstatic inline void netif_wake_queue(struct net_device *dev)\n{\n#ifdef CONFIG_NETPOLL_TRAP\n        if (netpoll_trap())\n                return;\n#endif\n        if (test_and_clear_bit(__LINK_STATE_XOFF, \u0026dev-\u003estate))\n                __netif_schedule(dev);\n}\n\nBy de-inlining __netif_schedule we are saving a lot of text\nat each callsite of netif_wake_queue and netif_schedule.\n__netif_rx_schedule is also big, and it makes more sense to keep\nboth of them out of line.\n\nPatch also deinlines dev_kfree_skb_any. We can deinline dev_kfree_skb_irq\ninstead... oh well.\n\nnetif_device_attach/detach are not hot paths, we can deinline them too.\n\nSigned-off-by: Denis Vlasenko \u003cvda@ilport.com.ua\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "153330618691694af64f39fb56c9de051862380e",
      "tree": "45ccb622bf0d13f6a0a663ba8af39f9dc2c9122e",
      "parents": [
        "2d0817d11eaec57435feb61493331a763f732a2b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Mon Mar 20 22:32:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:32:28 2006 -0800"
      },
      "message": "[NET]: dev_put/dev_hold cleanup\n\nGet rid of the old __dev_put macro that is just a hold over from pre 2.6\nkernel.  And turn dev_hold into an inline instead of a macro.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b00055aacdb172c05067612278ba27265fcd05ce",
      "tree": "4dbbee11b02d54cc0978113dfb07c53fdce17aa8",
      "parents": [
        "e843b9e1bec4a953d848a319da6a18ca5c667f55"
      ],
      "author": {
        "name": "Stefan Rompf",
        "email": "stefan@loplof.de",
        "time": "Mon Mar 20 17:09:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 17:09:11 2006 -0800"
      },
      "message": "[NET] core: add RFC2863 operstate\n\nthis patch adds a dormant flag to network devices, RFC2863 operstate derived\nfrom these flags and possibility for userspace interaction. It allows drivers\nto signal that a device is unusable for user traffic without disabling\nqueueing (and therefore the possibility for protocol establishment traffic to\nflow) and a userspace supplicant (WPA, 802.1X) to mark a device unusable\nwithout changes to the driver.\n\nIt is the result of our long discussion. However I must admit that it\nrepresents what Jamal and I agreed on with compromises towards Krzysztof, but\nThomas and Krzysztof still disagree with some parts. Anyway I think it should\nbe applied.\n\nSigned-off-by: Stefan Rompf \u003cstefan@loplof.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a1225769763779288d759e904c4f5a660844ce4",
      "tree": "ead21d103bde6bf9099fa05002a7a30078e5e7b6",
      "parents": [
        "a018e3305fe1e500e28830666b1757b75c6b4df5"
      ],
      "author": {
        "name": "shemminger@osdl.org",
        "email": "shemminger@osdl.org",
        "time": "Wed Nov 30 11:45:17 2005 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Dec 01 02:20:20 2005 -0500"
      },
      "message": "[PATCH] sky2: change netif_rx_schedule_test to __netif_schedule_prep\n\nI didn\u0027t like the name netif_rx_schedule_test(), in earlier patches\nand changed to __netif_rx_schedule_prep to be more consistent.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "83cbd33aae2c3cd14f80a8abf733033a57aa4923",
      "tree": "de05bf460a181d5ff68257418021e10fa262da93",
      "parents": [
        "06d61cbf7c2522f43c09d5bb050acd0bd31812c0",
        "691b73b13220886aefacb7c7f7ace7f528bbf800"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Nov 15 04:49:03 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Nov 15 04:49:03 2005 -0500"
      },
      "message": "Merge branch \u0027bonding-sysfs\u0027 of git://git.tuxdriver.com/git/netdev-jwl\n"
    },
    {
      "commit": "c2373ee98982a1c842dfb213c398f388d4227e63",
      "tree": "78b02f37f11503c0b2c85da1fb1811f430e8c163",
      "parents": [
        "1e2e5659656b8b9bd9fa4714355d91282cb74178"
      ],
      "author": {
        "name": "Mitch Williams",
        "email": "mitch.a.williams@intel.com",
        "time": "Wed Nov 09 10:34:45 2005 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Sun Nov 13 14:48:18 2005 -0500"
      },
      "message": "[PATCH] net: make dev_valid_name public\n\ndev_valid_name() is a useful function.  Make it public.\n\nSigned-off-by: Mitch Williams \u003cmitch.a.williams@intel.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3b621ee5df437d3f332a635ab6421aaa61a7dc2b",
      "tree": "c4a5236cee8eb7418770802313d36a55f1cc0b1e",
      "parents": [
        "7211bb9b64f17b23834d91fc3d0c1d78671ee9a8",
        "5e04e7fe774794b837e1d3897e6b96ae2d06679a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Nov 11 05:51:24 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Nov 11 05:51:24 2005 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "fb286bb2990a107009dbf25f6ffebeb7df77f9be",
      "tree": "0eede2c37f1b3831e59601933eebf6b82be75ffc",
      "parents": [
        "1064e944d03eb7a72c0fa11236d5e69cfd877a71"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Nov 10 13:01:24 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 10 13:01:24 2005 -0800"
      },
      "message": "[NET]: Detect hardware rx checksum faults correctly\n\nHere is the patch that introduces the generic skb_checksum_complete\nwhich also checks for hardware RX checksum faults.  If that happens,\nit\u0027ll call netdev_rx_csum_fault which currently prints out a stack\ntrace with the device name.  In future it can turn off RX checksum.\n\nI\u0027ve converted every spot under net/ that does RX checksum checks to\nuse skb_checksum_complete or __skb_checksum_complete with the\nexceptions of:\n\n* Those places where checksums are done bit by bit.  These will call\nnetdev_rx_csum_fault directly.\n\n* The following have not been completely checked/converted:\n\nipmr\nip_vs\nnetfilter\ndccp\n\nThis patch is based on patches and suggestions from Stephen Hemminger\nand David S. Miller.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7211bb9b64f17b23834d91fc3d0c1d78671ee9a8",
      "tree": "541909f86c31fee97cd70d28ec2fe5c23e1ceb02",
      "parents": [
        "f1e691a24955ea987f021f378324fb5003b1b208",
        "70d9d825e0a5a78ec1dacaaaf5c72ff5b0206fab"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Nov 05 15:39:24 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Nov 05 15:39:24 2005 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "e89e9cf539a28df7d0eb1d0a545368e9920b34ac",
      "tree": "aae6a825f351ce931fcd30f1a865ebe65227c4b8",
      "parents": [
        "de5144164f6242ccfa8c9b64eec570564f5eaf14"
      ],
      "author": {
        "name": "Ananda Raju",
        "email": "ananda.raju@neterion.com",
        "time": "Tue Oct 18 15:46:41 2005 -0700"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Fri Oct 28 16:30:00 2005 -0200"
      },
      "message": "[IPv4/IPv6]: UFO Scatter-gather approach\n\nAttached is kernel patch for UDP Fragmentation Offload (UFO) feature.\n\n1. This patch incorporate the review comments by Jeff Garzik.\n2. Renamed USO as UFO (UDP Fragmentation Offload)\n3. udp sendfile support with UFO\n\nThis patches uses scatter-gather feature of skb to generate large UDP\ndatagram. Below is a \"how-to\" on changes required in network device\ndriver to use the UFO interface.\n\nUDP Fragmentation Offload (UFO) Interface:\n-------------------------------------------\nUFO is a feature wherein the Linux kernel network stack will offload the\nIP fragmentation functionality of large UDP datagram to hardware. This\nwill reduce the overhead of stack in fragmenting the large UDP datagram to\nMTU sized packets\n\n1) Drivers indicate their capability of UFO using\ndev-\u003efeatures |\u003d NETIF_F_UFO | NETIF_F_HW_CSUM | NETIF_F_SG\n\nNETIF_F_HW_CSUM is required for UFO over ipv6.\n\n2) UFO packet will be submitted for transmission using driver xmit routine.\nUFO packet will have a non-zero value for\n\n\"skb_shinfo(skb)-\u003eufo_size\"\n\nskb_shinfo(skb)-\u003eufo_size will indicate the length of data part in each IP\nfragment going out of the adapter after IP fragmentation by hardware.\n\nskb-\u003edata will contain MAC/IP/UDP header and skb_shinfo(skb)-\u003efrags[]\ncontains the data payload. The skb-\u003eip_summed will be set to CHECKSUM_HW\nindicating that hardware has to do checksum calculation. Hardware should\ncompute the UDP checksum of complete datagram and also ip header checksum of\neach fragmented IP packet.\n\nFor IPV6 the UFO provides the fragment identification-id in\nskb_shinfo(skb)-\u003eip6_frag_id. The adapter should use this ID for generating\nIPv6 fragments.\n\nSigned-off-by: Ananda Raju \u003cananda.raju@neterion.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (forwarded)\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "90890687859ea658759e653c4e70ed7e9e1a6217",
      "tree": "9065b30bb189e16ef99b8b5a0d444558f8dc579f",
      "parents": [
        "2995bfb7855aabd493f840af361f3dd7d221caea",
        "5fadd053d9bb4345ec6f405d24db4e7eb49cf81e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:17:52 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:17:52 2005 -0400"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "3c8c7b2f32c52b259daa7564fefd582146799b23",
      "tree": "59ff1ad0d6b7821d474d8fccafd884703684b6d7",
      "parents": [
        "7cb3cd090c2725b80561958a362c2ba15a7a8c86",
        "9123e0d78990246304fe681167b8d8097f1e02d7"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Oct 03 22:06:19 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Oct 03 22:06:19 2005 -0400"
      },
      "message": "Merge branch \u0027upstream-fixes\u0027\n"
    },
    {
      "commit": "9356b8fc07dc126cd91d2b12f314d760ab48996e",
      "tree": "908b193442d0e2ad345c05547d227809bc162a0a",
      "parents": [
        "2d7ceece08ad940d0ceac98ab1b5a3b82dfc2a0a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Sep 27 15:23:16 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 27 15:23:16 2005 -0700"
      },
      "message": "[NET]: Reorder some hot fields of struct net_device\n\nPlace them on separate cache lines in SMP to lower memory bouncing\nbetween multiple CPU accessing the device.\n\n     - One part is mostly used on receive path (including\n       eth_type_trans()) (poll_list, poll, quota, weight, last_rx,\n       dev_addr, broadcast)\n\n     - One part is mostly used on queue transmit path (qdisc)\n      (queue_lock, qdisc, qdisc_sleeping, qdisc_list, tx_queue_len)\n\n     - One part is mostly used on xmit path (device)\n      (xmit_lock, xmit_lock_owner, priv, hard_start_xmit, trans_start)\n\n\u0027features\u0027 is placed outside of these hot points, in a location that\nmay be shared by all cpus (because mostly read)\n\nname_hlist is moved close to name[IFNAMSIZ] to speedup __dev_get_by_name()\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "793b883ed12a6ae6e2901ddb5e038b77d6f0c0ac",
      "tree": "d485606a0a7f2b70c9ee0d118fbdedf589f89a2c",
      "parents": [
        "d7f6884ae0ae6e406ec3500fcde16e8f51642460"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Sep 14 16:06:14 2005 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Sep 16 02:48:03 2005 -0400"
      },
      "message": "[PATCH] sky2: driver update.\n\nHere is revised patch against netdev sky2 branch.\nIt includes whitespace fixes, all the changes from the previous\nreview as well as some optimizations and timing fixes to\nsolve some of the hangs.\n\nThe stall problem is better but not perfect. It appears that\nunder stress the chip can\u0027t keep up with the bus\nand sends a pause frame, then hangs. This version is for\ntesting, and hopefully other eyes might see the root\ncause of the problem.\n\nI don\u0027t want to reinvent the ugly watchdog code in the syskonnect\nversion of sk98lin.  If you read it you will see, the original\ndriver writer and the hardware developer obviously didn\u0027t\nunderstand each other.\n\nDual port support is included, but not tested yet. It did\nrequire small change to NAPI since both ports share same\nIRQ.\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "3173c8907ffb2c64456142da3df2bd0500bd59e0",
      "tree": "dcd3700a2c37e24a2b5911bb5429aee715684926",
      "parents": [
        "343c686c04eec556645f251f7d6c9b3d7335dae0"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sun Sep 11 02:09:55 2005 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Sep 14 08:33:24 2005 -0400"
      },
      "message": "[PATCH] drivers/net: fix-up schedule_timeout() usage\n\nUse schedule_timeout_interruptible() instead of\nset_current_state()/schedule_timeout() to reduce kernel size.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "a6f9a70578b981321b63786ac8015f17cca4fcbd",
      "tree": "5cbc50f95419f4d8d5b13186ccc42b293e0e684a",
      "parents": [
        "8cd25c1fcfbf6460983e99091d278187421c1a1d"
      ],
      "author": {
        "name": "Jon Wetzel",
        "email": "jon_wetzel@dell.com",
        "time": "Sat Aug 20 17:15:54 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:02:44 2005 -0700"
      },
      "message": "[NET]: Add support for getting the permanent hardware address.\n\nThis patch adds a new field to net device to hold the permanent\nhardware address, and adds a new generic ethtool_op function to\nget that address.\n\nSigned-off-by: Jon Wetzel \u003cjon_wetzel@dell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a242efc4fb859b2da506cdf8f3366231602e4ff",
      "tree": "a4f4174ba8ccdedf892cc3358033b61e1a92babd",
      "parents": [
        "5917ed961def82a4dba9198d11a75f79d115a8cb"
      ],
      "author": {
        "name": "Denis Vlasenko",
        "email": "vda@ilport.com.ua",
        "time": "Thu Aug 11 15:32:53 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:57:08 2005 -0700"
      },
      "message": "[NET]: Deinline netif_carrier_{on,off}().\n\n# grep -r \u0027netif_carrier_o[nf]\u0027 linux-2.6.12 | wc -l\n246\n\n# size vmlinux.org vmlinux.carrier\ntext    data     bss     dec     hex filename\n4339634 1054414  259296 5653344  564360 vmlinux.org\n4337710 1054414  259296 5651420  563bdc vmlinux.carrier\n\nAnd this ain\u0027t an allyesconfig kernel!\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2ccd8fa06c8e302116e71df372f5c1f83432e03",
      "tree": "6e933f4bdc8899009edb33642b908779f123fb4a",
      "parents": [
        "b6b99eb5409d75ae35390057cd28f3aedfbd4cf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 09 19:34:12 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:32:25 2005 -0700"
      },
      "message": "[NET]: Kill skb-\u003ereal_dev\n\nBonding just wants the device before the skb_bond()\ndecapsulation occurs, so simply pass that original\ndevice into packet_type-\u003efunc() as an argument.\n\nIt remains to be seen whether we can use this same\nexact thing to get rid of skb-\u003einput_dev as well.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31aa02c53c84658f6694f319f09e232ede27be5a",
      "tree": "3af5cce958dcce744548b312a043aa4a0b769a50",
      "parents": [
        "34008d8c631d067caffa136313260525f3ae48a2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Jun 23 20:12:48 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 23 20:12:48 2005 -0700"
      },
      "message": "[NET]: Eliminate netif_rx massive packet drops.\n\nEliminate the throttling behaviour when the netif receive queue fills\nbecause it behaves badly when using high speed networks under load.\nThe throttling cause multiple packet drops that cause TCP to go into\nslow start mode. The same effective patch has been part of BIC TCP and\nH-TCP as well as part of Web100.\n\nThe existing code drops 100\u0027s of packets when the queue fills;\nthis changes it to individual packet drop-tail. \n\nSigned-off-by: Stephen Hemmminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "34008d8c631d067caffa136313260525f3ae48a2",
      "tree": "171436c170fb7df649f8bf7cb95391f6d844bd03",
      "parents": [
        "c1ebcdb8c422cd73f54bcd2b9953e443a47667e5"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Jun 23 20:10:00 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 23 20:10:00 2005 -0700"
      },
      "message": "[NET]: Remove obsolete netif_rx congestion sensing mechanism.\n\nRemove the congestion sensing mechanism from netif_rx, and always\nreturn either full or empty.  Almost no driver checks the return value\nfrom netif_rx, and those that do only use it for debug messages.\n\nThe original design of netif_rx was to do flow control based on the\nreceive queue, but NAPI has supplanted this and no driver uses the\nfeedback.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c1ebcdb8c422cd73f54bcd2b9953e443a47667e5",
      "tree": "312664836ac20509cc15609b8b0c7d583e9fe32d",
      "parents": [
        "16822e62053e73fa7def9decc38a7e287d27d980"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Jun 23 20:08:59 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 23 20:08:59 2005 -0700"
      },
      "message": "[NET]: Remove obsolete fastroute stats.\n\nRemove last vestiages of fastroute code that is no longer used.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "543537bd922692bc978e2e356fcd8bfc9c2ee7d5",
      "tree": "0089e3907e7d6c17c01cffc6ea4a8962ed053079",
      "parents": [
        "991114c6fa6a21d1fa4d544abe78592352860c82"
      ],
      "author": {
        "name": "Paulo Marques",
        "email": "pmarques@grupopie.com",
        "time": "Thu Jun 23 00:09:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:18 2005 -0700"
      },
      "message": "[PATCH] create a kstrdup library function\n\nThis patch creates a new kstrdup library function and changes the \"local\"\nimplementations in several places to use this function.\n\nMost of the changes come from the sound and net subsystems.  The sound part\nhad already been acknowledged by Takashi Iwai and the net part by David S.\nMiller.\n\nI left UML alone for now because I would need more time to read the code\ncarefully before making changes there.\n\nSigned-off-by: Paulo Marques \u003cpmarques@grupopie.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "115c1d6e61b70851d9a363328c3b8d4c2559a1d3",
      "tree": "3bc37b036fd3ef72d188ff73da94472b40c05a44",
      "parents": [
        "6ca4f65e6b390d09e1de7280cf9fd4f5d8e4b48b"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Wed Jun 22 22:05:31 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 22 22:05:31 2005 -0700"
      },
      "message": "[NETPOLL]: Introduce a netpoll_info struct\n\nThis patch introduces a netpoll_info structure, which the struct net_device\nwill now point to instead of pointing to a struct netpoll.  The reason for\nthis is two-fold: 1) fields such as the rx_flags, poll_owner, and poll_lock\nshould be maintained per net_device, not per netpoll;  and 2) this is a first\nstep in providing support for multiple netpoll clients to register against the\nsame net_device.\n\nThe struct netpoll is now pointed to by the netpoll_info structure.  As\nsuch, the previous behaviour of the code is preserved.\n\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ba0eac6e0b7e2889649a1105d97c600595e2bb1",
      "tree": "e7bc652889162d1b7997e779ce5a5fef4355838f",
      "parents": [
        "b597ef4712c05c962640a655386a7f06cc1a1fbc"
      ],
      "author": {
        "name": "Jiri Benc",
        "email": "jbenc@suse.cz",
        "time": "Thu Jun 02 16:48:05 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 16:48:05 2005 -0700"
      },
      "message": "[NET]: Fix HH_DATA_OFF.\n\nWhen the hardware header size is a multiple of HH_DATA_MOD, HH_DATA_OFF()\nincorrectly returns HH_DATA_MOD (instead of 0). This affects ieee80211 layer\nas 802.11 header is 32 bytes long.\n\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81e8157583c559c27aac75c708d40a35f563d734",
      "tree": "3172c6de15e6a8ea07373a23e901ee0e4366c4f1",
      "parents": [
        "d8a33ac435c43a1a404b2ec560ef1d1536710c36"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Sun May 29 14:14:35 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 14:14:35 2005 -0700"
      },
      "message": "[BRIDGE]: make dev-\u003efeatures unsigned\n\nThe features field in netdevice is really a bitmask, and bitmask\u0027s should\nbe unsigned.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8a33ac435c43a1a404b2ec560ef1d1536710c36",
      "tree": "04359c09e0731e9c33a8c2dd80cc69404e0dde60",
      "parents": [
        "45b30105e7231b70bb855923dbca443ee3ba44c3"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Sun May 29 14:13:47 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 14:13:47 2005 -0700"
      },
      "message": "[BRIDGE]: features change notification\n\nResend of earlier patch (no changes) from Catalin used to provide\ndevice feature change notification.\n\nSigned-off-by: Catalin BOIE \u003ccatab at umbrella.ro\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "205902ecc7bcb2a007ed27bb3518e8f70e5d113e",
      "tree": "f2730d9ea3ce1a2cf85619f3f7077bedb6ec19ab",
      "parents": [
        "d8659255c599ba497bcfb8b4abc187d9e0951d99"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 23 13:09:19 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 23 13:09:19 2005 -0700"
      },
      "message": "[NET]: netdevice.h: be\u0027ify packet_type\n\nEverybody does\n\n\tstruct packet_type foo_packet_type \u003d {\n\t\t.type \u003d __constant_htons(ETH_P_FOO);\n\t};\n\n5 introduced warnings will be properly fixed later.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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"
    }
  ]
}
