)]}'
{
  "log": [
    {
      "commit": "ce39a800ea87c655de49af021c8b20ee323cb40d",
      "tree": "f461c679d9c03639256501a221bbd8542fe65858",
      "parents": [
        "a434e43f3d844192bc23bd7b408bac979c40efe7"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Thu Oct 30 17:41:16 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Oct 31 00:46:12 2008 -0400"
      },
      "message": "bonding: fix panic when taking bond interface down before removing module\n\nA panic was discovered with bonding when using mode 5 or 6 and trying to\nremove the slaves from the bond after the interface was taken down.\nWhen calling \u0027ifconfig bond0 down\u0027 the following happens:\n\n    bond_close()\n        bond_alb_deinitialize()\n            tlb_deinitialize()\n\t\tkfree(bond_info-\u003etx_hashtbl)\n                bond_info-\u003etx_hashtbl \u003d NULL\n\nUnfortunately if there are still slaves in the bond, when removing the\nmodule the following happens:\n\n    bonding_exit()\n        bond_free_all()\n            bond_release_all()\n                bond_alb_deinit_slave()\n                    tlb_clear_slave()\n                        tx_hash_table \u003d BOND_ALB_INFO(bond).tx_hashtbl\n\t\t\tu32 next_index \u003d tx_hash_table[index].next\n\nAs you might guess we panic when trying to access a few entries into the\ntable that no longer exists.\n\nI experimented with several options (like moving the calls to\ntlb_deinitialize somewhere else), but it really makes the most sense to\nbe part of the bond_close routine.  It also didn\u0027t seem logical move\ntlb_clear_slave around too much, so the simplest option seems to add a\ncheck in tlb_clear_slave to make sure we haven\u0027t already wiped the\ntx_hashtbl away before searching for all the non-existent hash-table\nentries that used to point to the slave as the output interface.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "a434e43f3d844192bc23bd7b408bac979c40efe7",
      "tree": "c14f191bafc78a1194815e0e9df5223dd52e8d99",
      "parents": [
        "fba4acda35f3119328bcba28aacefae14245d2bb"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Oct 30 17:41:15 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Oct 31 00:46:04 2008 -0400"
      },
      "message": "bonding: Clean up resource leaks\n\nThis patch reworks the resource free logic performed at the time\na bonding device is released.  This (a) closes two resource leaks, one\nfor workqueues and one for multicast lists, and (b) improves commonality\nof code between the \"destroy one\" and \"destroy all\" paths by performing\nfinal free activity via destructor instead of explicitly (and differently)\nin each path.\n\n\"Sean E. Millichamp\" \u003csean@bruenor.org\u003e reported the workqueue\nleak, and included a different patch.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "fba4acda35f3119328bcba28aacefae14245d2bb",
      "tree": "40eede8c838103ca9226f560365375ad40da364b",
      "parents": [
        "48e5ecae691cfb50aa39036ba9fc193f5c24dbb3"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Oct 30 17:41:14 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Oct 31 00:45:51 2008 -0400"
      },
      "message": "bonding: fix miimon failure counter\n\nDuring the rework of the mii monitor for:\n\n  commit f0c76d61779b153dbfb955db3f144c62d02173c2\n  Author: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\n  Date:   Wed Jul 2 18:21:58 2008 -0700\n\n    bonding: refactor mii monitor\n\nI left out the increment of the link failure counter.  This\npatch corrects that omission.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b63365a2d60268a3988285d6c3c6003d7066f93a",
      "tree": "85bd8f91f3de954c697aa44544b4adf191e7f5aa",
      "parents": [
        "2e3f92dad6bdbee796274bae5c1c50a6ddd31cbb"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Oct 23 01:11:29 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 23 01:11:29 2008 -0700"
      },
      "message": "net: Fix disjunct computation of netdev features\n\nMy change\n\n    commit e2a6b85247aacc52d6ba0d9b37a99b8d1a3e0d83\n    net: Enable TSO if supported by at least one device\n\ndidn\u0027t do what was intended because the netdev_compute_features\nfunction was designed for conjunctions.  So what happened was that\nit would simply take the TSO status of the last constituent device.\n\nThis patch extends it to support both conjunctions and disjunctions\nunder the new name of netdev_increment_features.\n\nIt also adds a new function netdev_fix_features which does the\nsanity checking that usually occurs upon registration.  This ensures\nthat the computation doesn\u0027t result in an illegal combination\nsince this checking is absent when the change is initiated via\nethtool.\n\nThe two users of netdev_compute_features have been converted.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b22596726bd37c7a4df4a43406a9a60f617d3d02",
      "tree": "c8372b2185713ef239fc158ed52f0f41bb70687a",
      "parents": [
        "be61ea52900b97800effbb68478915d73b5d4df2"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Sun Sep 14 16:56:12 2008 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Sep 24 22:12:57 2008 -0400"
      },
      "message": "drivers/net/bonding: sparse fixes for exported tables\n\nThe following sparse warnings are being generated\nbecause bonding.h is missing definitons for items\ndeclared in bond_main.c but also used in bond_sysfs.h\n\nAlso export bond_dev_list as this is also declared\nin bond_main but used elsewhere in drivers/net/bonding.\n\nbond_main.c:105:20: warning: symbol \u0027bonding_defaults\u0027 was not declared. Should it be static?\nbond_main.c:148:1: warning: symbol \u0027bond_dev_list\u0027 was not declared. Should it be static?\nbond_main.c:162:22: warning: symbol \u0027bond_lacp_tbl\u0027 was not declared. Should it be static?\nbond_main.c:168:22: warning: symbol \u0027bond_mode_tbl\u0027 was not declared. Should it be static?\nbond_main.c:179:22: warning: symbol \u0027xmit_hashtype_tbl\u0027 was not declared. Should it be static?\nbond_main.c:186:22: warning: symbol \u0027arp_validate_tbl\u0027 was not declared. Should it be static?\nbond_main.c:194:22: warning: symbol \u0027fail_over_mac_tbl\u0027 was not declared. Should it be static?\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "fa53ebac42d3de04619c813f5f6628ca2a7ce97f",
      "tree": "9cb0b0220f95f6c08c35ddf22767b2f90c8b9f54",
      "parents": [
        "ec68db6930635b25ef5ba4983053635f5b4bf35e"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Sep 13 21:17:09 2008 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Sep 24 18:59:02 2008 -0400"
      },
      "message": "bonding: add more ethtool support\n\nThis patch allows reporting the link, checksum, and feature settings\nof bonded device by using generic hooks.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b39d66a81fb4f5ab555f86a2e49f3714f8369a3d",
      "tree": "20ffb096fe2781545ac3f77f07ebbb347234e111",
      "parents": [
        "b514f6b6da3aedcf4eb6f0c69e910ae89ef4632f"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Aug 20 16:52:04 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Sep 24 18:59:00 2008 -0400"
      },
      "message": "drivers/net: replace __FUNCTION__ with __func__\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "2d1ea19da0e84117d3ebbad981e4664bef03152e",
      "tree": "0b073f7b68399b35bc122487ee8dcfc5d6492901",
      "parents": [
        "f382a0a8e9403c6d7f8b2cfa21e41fefb5d0c9bd"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Aug 28 15:38:41 2008 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Sep 24 18:49:01 2008 -0400"
      },
      "message": "bonding: Do not tx-balance some IPv6 packets on ALB/TLB bonds\n\nIPv6 all-node-multicasts and DAD probes should not be tx-balanced\non ALB/TLB bonds.  The all-node-multicast is an equivalent to IPv4\nbroadcasts.  DAD probes have to be sent only on the primary so that\nwe don\u0027t get false-positive detections.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "f14c4e4e3651b76ae09082fa66cda37e10ac2b43",
      "tree": "c9441dc387517914b0434e880245f8d824895413",
      "parents": [
        "a816f75ac5caa79b08325e35317f964f03841d52"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Tue Sep 02 10:08:08 2008 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Sep 03 10:03:07 2008 -0400"
      },
      "message": "bonding: change some __constant_htons() to htons()\n\nResending since I didn\u0027t see any responses from the first try.\n\nChange __constant_htons() to htons() in the bonding driver, it should\nonly be used for initializers.\n\n-Brian\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "db018a5f49e1768891221a580e59f6825c52ab7a",
      "tree": "6cef0e9f28da25cf71e044dc12c97a381752a447",
      "parents": [
        "f0c76d61779b153dbfb955db3f144c62d02173c2"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Wed Jul 02 18:21:59 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Aug 07 03:59:56 2008 -0400"
      },
      "message": "bonding: Don\u0027t destroy bonding master when removing slave via sysfs\n\nIt is wrong to destroy a bonding master from a context that uses the sysfs\nof that bond. When last IPoIB slave is unenslaved from by writing to a\nsysfs file (for bond0 this would be /sys/class/net/bond0/bonding/slaves)\nthe driver tries to destroy the bond. This is wrong and can lead to a\nlockup or a crash.  This fix lets the bonding master stay and relies on\nthe user to destroy the bonding master if necessary (i.e. before module\nib_ipoib is unloaded)\n\nThis patch affects only bonds of IPoIB slaves. Ethernet slaves stay\nunaffected.\n\nSigned-off-by: Moni Shoua \u003cmonis@voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "f0c76d61779b153dbfb955db3f144c62d02173c2",
      "tree": "b0e4af463171108e23c3701c05b1ca9c53e4c07b",
      "parents": [
        "c16d118537cadb21d186e35aebad90a13cd78846"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Jul 02 18:21:58 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Aug 07 03:59:53 2008 -0400"
      },
      "message": "bonding: refactor mii monitor\n\n\tRefactor mii monitor.  As with the previous ARP monitor refactor,\nthe motivation for this is to handle locking rationally (in this case,\nremoving conditional locking) and generally clean up the code.\n\n\tThis patch breaks up the monolithic mii monitor into two phases:\nan inspection phase, followed by an optional commit phase.  The commit phase\nis the only portion that requires RTNL or makes changes to state, and is\nonly called when inspection finds something to change.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "cf508b1211dbe576778ff445ea1b4b0bcfa5c4ea",
      "tree": "4774838c2db17db71662a625fea25def8823341a",
      "parents": [
        "d29f749e252bcdbfe7a75a58f0ee92da16f127c0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 22 14:16:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 22 14:16:42 2008 -0700"
      },
      "message": "netdev: Handle -\u003eaddr_list_lock just like -\u003e_xmit_lock for lockdep.\n\nThe new address list lock needs to handle the same device layering\nissues that the _xmit_lock one does.\n\nThis integrates work done by Patrick McHardy.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e8a0464cc950972824e2e128028ae3db666ec1ed",
      "tree": "5022b95396c0f3b313531bc39b19543c03551b9a",
      "parents": [
        "070825b3840a743e21ebcc44f8279708a4fed977"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 17 00:34:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 17 19:21:00 2008 -0700"
      },
      "message": "netdev: Allocate multiple queues for TX.\n\nalloc_netdev_mq() now allocates an array of netdev_queue\nstructures for TX, based upon the queue_count argument.\n\nFurthermore, all accesses to the TX queues are now vectored\nthrough the netdev_get_tx_queue() and netdev_for_each_tx_queue()\ninterfaces.  This makes it easy to grep the tree for all\nthings that want to get to a TX queue of a net device.\n\nProblem spots which are not really multiqueue aware yet, and\nonly work with one queue, can easily be spotted by grepping\nfor all netdev_get_tx_queue() calls that pass in a zero index.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9e40857682ecfc5bcd0356a23ff409883ffb982",
      "tree": "d241fd289bed6d16f36f6d26815c1e78e212c89a",
      "parents": [
        "e308a5d806c852f56590ffdd3834d0df0cbed8d7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 15 00:15:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 15 00:15:08 2008 -0700"
      },
      "message": "netdev: Do not use TX lock to protect address lists.\n\nNow that we have a specific lock to protect the network\ndevice unicast and multicast lists, remove extraneous\ngrabs of the TX lock in cases where the code only needs\naddress list protection.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e308a5d806c852f56590ffdd3834d0df0cbed8d7",
      "tree": "294ff654e90950f5162737c26f4799b0b710b748",
      "parents": [
        "f1f28aa3510ddb84c966bac65611bb866c77a092"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 15 00:13:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 15 00:13:44 2008 -0700"
      },
      "message": "netdev: Add netdev-\u003eaddr_list_lock protection.\n\nAdd netif_addr_{lock,unlock}{,_bh}() helpers.\n\nUse them to protect operations that operate on or read\nthe network device unicast and multicast address lists.\n\nAlso use them in cases where the code simply wants to\nblock calls into the driver\u0027s -\u003eset_rx_mode() and\n-\u003eset_multicast_list() methods.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e1a1ac1fbaa88fe254400b7f30b775502932ad3",
      "tree": "5084fc1e90687cdec4ad62cd1ae81b75e6efe765",
      "parents": [
        "2aeb0b88b3c7a0e3bef55e7ff0efffd5d971aa57"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Mon Jul 14 20:51:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 20:51:36 2008 -0700"
      },
      "message": "bonding: Check return of dev_set_promiscuity/allmulti\n\ndev_set_promiscuity/allmulti might overflow.\nCommit: \"netdevice: Fix promiscuity and allmulti overflow\" in net-next makes\ndev_set_promiscuity/allmulti return error number if overflow happened.\n\nIn bond_alb and bond_main, we check all positive increment for promiscuity\nand allmulti to get error return.\nBut there are still two problems left.\n1. Some code path has no mechanism to signal errors upstream.\n2. If there are multi slaves, it\u0027s hard to tell which slaves increment\n   promisc/allmulti successfully and which failed.\nSo I left these problems to be FIXME.\nFortunately, the overflow is very rare case.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c773e847ea8f6812804e40f52399c6921a00eab1",
      "tree": "952e0e262cc0b0f2136bc2a62938ae1d186f896a",
      "parents": [
        "eb6aafe3f843cb0e939546c03540a3b4911b6964"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:13:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:13:53 2008 -0700"
      },
      "message": "netdev: Move _xmit_lock and xmit_lock_owner into netdev_queue.\n\nAccesses are mostly structured such that when there are multiple TX\nqueues the code transformations will be a little bit simpler.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8a9787eddb0e4665f31dd1d64584732b2b5d051",
      "tree": "08b7537e70b6a96bc04d231d31ccd644e1387e62",
      "parents": [
        "b59f9f74c4c0a569398f08c34a877f1b7b457496"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Jun 13 18:12:04 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Jun 18 00:00:04 2008 -0400"
      },
      "message": "bonding: Allow setting max_bonds to zero\n\n\tPermit bonding to function rationally if max_bonds is set to\nzero.  This will load the module, but create no master devices (which can\nbe created via sysfs).\n\n\tRequires some change to bond_create_sysfs; currently, the\nnetdev sysfs directory is determined from the first bonding device created,\nbut this is no longer possible.  Instead, an interface from net/core is\ncreated to create and destroy files in net_class.\n\n\tBased on a patch submitted by Phil Oester \u003ckernel@linuxaces.com\u003e.\nModified by Jay Vosburgh to fix the sysfs issue mentioned above and to\nupdate the documentation.\n\nSigned-off-by: Phil Oester \u003ckernel@linuxace.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b59f9f74c4c0a569398f08c34a877f1b7b457496",
      "tree": "714ec0e4840f1eaf9468f63c326203afee0b2d69",
      "parents": [
        "01f3109de49a889db8adf9116449727547ee497e"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Jun 13 18:12:03 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Jun 18 00:00:04 2008 -0400"
      },
      "message": "bonding: Rework / fix multiple gratuitous ARP support\n\n\tSupport for sending multiple gratuitous ARPs during failovers\nwas added by commit:\n\ncommit 7893b2491a2d5f716540ac5643d78d37a7f6628b\nAuthor: Moni Shoua \u003cmonis@voltaire.com\u003e\nDate:   Sat May 17 21:10:12 2008 -0700\n\n    bonding: Send more than one gratuitous ARP when slave takes over\n\n\tThis change modifies that support to remove duplicated code,\nadd support for ARP monitor (the original only supported miimon), clear\nthe grat ARP counter in bond_close (lest a later \"ifconfig up\" immediately\nstart spewing ARPs), and add documentation for the module parameter.\n\n\tAlso updated driver version to 3.3.0.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "01f3109de49a889db8adf9116449727547ee497e",
      "tree": "5c35e4c7b39c9e652549a69b7c635edb96e1d68e",
      "parents": [
        "709f8a45e8521f2f4229e5fdf3ded1fb77e2ca4e"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Fri Jun 13 18:12:02 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jun 17 23:59:42 2008 -0400"
      },
      "message": "bonding: deliver netdev event for fail-over under the active-backup mode\n\nunder active-backup mode and when there\u0027s actual new_active slave,\nhave bond_change_active_slave() call the networking core to deliver\nNETDEV_BONDING_FAILOVER event such that the fail-over can be notable\nby code outside of the bonding driver such as the RDMA stack and\nmonitoring tools.\n\nAs the correct context of locking appropriate for notifier calls is RTNL\nand nothing else, bond-\u003ecurr_slave_lock and bond-\u003elock are unlocked and\nlater locked again. This is ensured by the rest of the code to be safe\nunder backup-mode AND when new_active is not NULL.\n\nJay Vosburgh modified the original patch for formatting and fixed a\ncompiler error.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "709f8a45e8521f2f4229e5fdf3ded1fb77e2ca4e",
      "tree": "6fcc38034efaa4292b90e0f4b1bc50642d54864f",
      "parents": [
        "c1da4ac752b8b0411791d26c678fcf23d2eed242"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Fri Jun 13 18:12:01 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jun 17 23:59:41 2008 -0400"
      },
      "message": "bonding: bond_change_active_slave() cleanup under active-backup\n\nsimplified the code of bond_change_active_slave() such that under\nactive-backup mode there\u0027s one \"if (new_active)\" test and the rest\nof the code only does extra checks on top of it. This removed an\nunneeded \"if (bond-\u003esend_grat_arp \u003e 0)\" check and avoid calling\nbond_send_gratuitous_arp when there\u0027s no active slave.\n\nJay Vosburgh made minor coding style changes to the orignal patch.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "3915c1e8634a321d9680e5cd80a53053b642dc0c",
      "tree": "430b2168edbc7f6c4ba3698d261b8573b422658a",
      "parents": [
        "b2220cad583c9b63e085476df448fa2aff5ea906"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Sat May 17 21:10:14 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:29 2008 -0400"
      },
      "message": "bonding: Add \"follow\" option to fail_over_mac\n\n\tAdd a \"follow\" selection for fail_over_mac.  This option\ncauses the MAC address to move from slave to slave as the active\nslave changes.  This is in addition to the existing fail_over_mac option\nthat causes the bond\u0027s MAC address to change during failover.\n\n\tThis new option is useful for devices that cannot tolerate\nmultiple ports using the same MAC address simultaneously, either\nbecause it confuses them or incurs a performance penalty (as is the\ncase with some LPAR-aware multiport devices).  Because the MAC of the\nbond itself does not change, the \"follow\" option is slightly more\nreliable during failover and doesn\u0027t change the MAC of the bond during\noperation.\n\n\tThis patch requires a previous ARP monitor change to properly\nhandle RTNL during failovers.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b2220cad583c9b63e085476df448fa2aff5ea906",
      "tree": "73d2322a9e5edd2ef7f2e97f523162b57f3e8ebb",
      "parents": [
        "7893b2491a2d5f716540ac5643d78d37a7f6628b"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Sat May 17 21:10:13 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:28 2008 -0400"
      },
      "message": "bonding: refactor ARP active-backup monitor\n\n\tRefactor ARP monitor for active-backup mode.  The motivation for\nthis is to take care of locking issues in a clear manner (particularly to\ncorrectly handle RTNL vs. the bonding locks).  Currently, the a-b ARP\nmonitor does not hold RTNL at all, but future changes will require RTNL\nduring ARP monitor failovers.\n\n\tRather than using conditional locking, this patch instead breaks\nup the ARP monitor into three discrete steps: inspection, commit changes,\nand probe.  The inspection phase marks slaves that require link state\nchanges.  The commit phase is only called if inspection detects that\nchanges are needed, and is called with RTNL.  Lastly, the probe phase\nissues the ARP probes that the inspection phase uses to determine link\nstate.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "7893b2491a2d5f716540ac5643d78d37a7f6628b",
      "tree": "2558b83e5a19b7d4a6b3c10c5bb90919bb1f3889",
      "parents": [
        "8047637c70e4451e2ac1c17ed9a91a2f753daae7"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Sat May 17 21:10:12 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:26 2008 -0400"
      },
      "message": "bonding: Send more than one gratuitous ARP when slave takes over\n\nWith IPoIB, reception of gratuitous ARP by neighboring hosts\nis essential for a successful change of slaves in case of failure.\nOtherwise, they won\u0027t learn about the HW address change and need\nto wait a long time until the neighboring system gives up and sends\nan ARP request to learn the new HW address.  This patch decreases\nthe chance for a lost of a gratuitous ARP packet by sending it more\nthan once. The number retries is configurable and can be set with a\nmodule param.\n\nSigned-off-by: Moni Shoua \u003cmonis@voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "8047637c70e4451e2ac1c17ed9a91a2f753daae7",
      "tree": "8119a215591c62175bc82dab5438d57790f0c14e",
      "parents": [
        "0883beca7f39ab0c6447af35080e5caaa07418e3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat May 17 21:10:11 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:25 2008 -0400"
      },
      "message": "bonding: Remove unneeded list_empty checks.\n\nSome places iterate over the checked list right after the check\nitself, so even if the list is empty, the list_for_each_xxx\niterator will make everything right by himself.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "0883beca7f39ab0c6447af35080e5caaa07418e3",
      "tree": "160996e2c3483095ec5a1b88cfa975a6f1982533",
      "parents": [
        "0dd646fe0549251e79d6fb03e6773bcc6ccea61f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat May 17 21:10:10 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:22 2008 -0400"
      },
      "message": "bonding: Relax unneeded _safe lists iterations.\n\nMany places either do not modify the list under the list_for_each_xxx,\nor break out of the loop as soon as the first element is removed.\n\nThus, this _safe iteration just occupies some unneeded .text space\nand requires an additional variable.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "0dd646fe0549251e79d6fb03e6773bcc6ccea61f",
      "tree": "f767ff2d0df29a8917b309819123e7873a5c7271",
      "parents": [
        "4b8a9239ee708958ed72722a0e5e0cf34243ad26"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat May 17 21:10:09 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:21 2008 -0400"
      },
      "message": "bonding: Remove redundant argument from bond_create.\n\nWhile we\u0027re fixing the bond_create, I hope it\u0027s OK to polish it\na bit after the fixes.\n\nThe third argument is NULL at the first caller and is ignored by\nthe second one, so remove it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "4b8a9239ee708958ed72722a0e5e0cf34243ad26",
      "tree": "6ec9644e7426d8c23508cb0924dfc71e1474426b",
      "parents": [
        "5ce0da8f0386b62345312ec8fed31303732f4220"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Sat May 17 21:10:08 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:18 2008 -0400"
      },
      "message": "bonding: remove test for IP in ARP monitor\n\n\tRemove bond_has_ip and all references to it.  With this change,\nthe ARP monitor will always send ARP probes if the master is up and has\nat least one slave.  If the bond has an IP address, it is used in the\nARP probe; if not, the probes are sent with all zeros in the sender\u0027s\nIP address (which is consistent with an RFC 2131 4.4.1 duplicate address\nprobe).\n\n\tThis is useful for cases when bonding itself is hidden underneath\na layer of virtual devices, e.g., with Xen.\n\n\tChange suggested by Tsutomu Fujii \u003ct-fujii@nb.jp.nec.com\u003e, who\nincluded a one-line patch that only affected active-backup mode.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "5ce0da8f0386b62345312ec8fed31303732f4220",
      "tree": "001fb0e4f6b256f07851936f74d0805f931b63e8",
      "parents": [
        "d63ddcec20f59e78212aeaf5144e9652c0097211"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Sat May 17 21:10:07 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu May 22 06:34:17 2008 -0400"
      },
      "message": "bonding: Use msecs_to_jiffies, eliminate panic\n\n\tConvert bonding to use msecs_to_jiffies instead of doing the\nmath.  For the ARP monitor, there was an underflow problem that could\nresult in an infinite loop.  The miimon already had that worked around,\nbut this is cleaner.\n\n\tOriginally by Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nJay Vosburgh corrected a math error in the original; Nicolas\u0027 original\ncommit message is:\n\nWhen setting arp_interval parameter to a very low value, delta_in_ticks\nfor next arp might become 0, causing an infinite loop.\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d10680\n\nSame problem for miimon parameter already fixed, but fix might be\nenhanced, by using msecs_to_jiffies() function.\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "38d2f38be9e4a2f1e3324c973a903aa972f71d0f",
      "tree": "f5a2b3b4cd26abefead85a723dc9e64494bf9e13",
      "parents": [
        "0599ad53fee2d084f9ba26247d7452f06a40d298"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed May 14 22:35:04 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 14 22:35:04 2008 -0700"
      },
      "message": "bonding: handle case of device named bonding_master\n\nIf device already exists named bonding_masters, then fail. This is a wierd\ncorner case only a QA group could love.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "569f0c4d909c7f73de634abcdc36344cb72de36a",
      "tree": "e8fead8972dd34fde23e0931bffa17e9dbdb8bfb",
      "parents": [
        "ae68c39819ddf30549652962768a50edae5eec6f"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri May 02 18:06:02 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue May 06 12:01:32 2008 -0400"
      },
      "message": "bonding: fix enslavement error unwinds\n\n\tAs part of:\n\ncommit c2edacf80e155ef54ae4774379d461b60896bc2e\nAuthor: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nDate:   Mon Jul 9 10:42:47 2007 -0700\n\n    bonding / ipv6: no addrconf for slaves separately from master\n\ntwo steps were rearranged in the enslavement process: netdev_set_master\nis now before the call to dev_open to open the slave.\n\n\tThis patch updates the error cases and unwind process at the\nend of bond_enslave to match the new order.  Without this patch, it is\npossible for the enslavement to fail, but leave the slave with IFF_SLAVE\nset in its flags.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "ae68c39819ddf30549652962768a50edae5eec6f",
      "tree": "0d0ef28152945ad23b72f6cff62a8dfc0345224b",
      "parents": [
        "c4ebc66a1a8e3576322a9f47f0d06ec3c96a08d7"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri May 02 17:49:39 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue May 06 12:01:30 2008 -0400"
      },
      "message": "bonding: Deadlock between bonding_store_bonds and bond_destroy_sysfs.\n\nThe sysfs layer has an internal protection, that ensures, that\nall the process sitting inside -\u003esore/-\u003eshow callback exits\nbefore the appropriate entry is unregistered (the calltraces\nare rather big, but I can provide them if required).\n\nOn the other hand, bonding takes rtnl_lock in\na) the bonding_store_bonds, i.e. in -\u003estore callback,\nb) module exit before calling the sysfs unregister routines.\n\nThus, the classical AB-BA deadlock may occur. To reproduce run\n# while :; do modprobe bonding; rmmod bonding; done\nand\n# while :; do echo \u0027+bond%d\u0027 \u003e /sys/class/net/bonding_masters ; done\nin parallel.\n\nThe fix is to move the bond_destroy_sysfs out of the rtnl_lock,\nbut _before_ bond_free_all to make sure no bonding devices exist\nafter module unload.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "c4ebc66a1a8e3576322a9f47f0d06ec3c96a08d7",
      "tree": "ec9959fe23520db9074b3f197508523595b93afc",
      "parents": [
        "822973ba79fd5a5b711270c2de7196c6b50c6687"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri May 02 17:49:38 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue May 06 12:01:29 2008 -0400"
      },
      "message": "bonding: fix error unwind in bonding_store_bonds\n\n\tFixed an error unwind in bonding_store_bonds that didn\u0027t release\nthe locks it held, and consolidated unwinds into a common block at the\nend of the function.  Bug reported by Pavel Emelyanov \u003cxemul@openvz.org\u003e,\nwho provided a different fix.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "822973ba79fd5a5b711270c2de7196c6b50c6687",
      "tree": "dfed6d24c5a9a82cb1b82279534745e889b534ad",
      "parents": [
        "9d1045ad68fcccfaf1393cc463ab6357693e8d1d"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri May 02 17:49:37 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue May 06 12:01:27 2008 -0400"
      },
      "message": "bonding: Do not call free_netdev for already registered device.\n\nIf the call to bond_create_sysfs_entry in bond_create fails, the\nproper rollback is to call unregister_netdevice, not free_netdev.\nOtherwise - kernel BUG at net/core/dev.c:4057!\n\nChecked with artificial failures injected into bond_create_sysfs_entry.\n\nPavel\u0027s original patch modified by Jay Vosburgh to move code around\nfor clarity (remove goto-hopping within the unwind block).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "a95609cb0283a23e519e607ff9fc2a4aa77e2532",
      "tree": "053d411aa27dafead6326a70d0ca3482bd2d0494",
      "parents": [
        "cf7acfab032ff262f42954328cdfd20a5d9aaaac"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Apr 29 01:02:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:22 2008 -0700"
      },
      "message": "netdev: use non-racy method for proc entries creation\n\nUse proc_create()/proc_create_data() to make sure that -\u003eproc_fops and -\u003edata\nbe setup before gluing PDE to main tree.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc13b385999f163dc30c73d66f2ac6d67410528d",
      "tree": "a7dc27d3765f775864eb4c86ccd7cea2ca65d7e5",
      "parents": [
        "c5e38a949bfa11d10f73927fbf4fe66b73bc3001"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Apr 10 14:39:30 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Wed Apr 16 20:09:35 2008 -0400"
      },
      "message": "drivers/net/bonding/bond_main.c - remove unnecessary #define\n\nbond_main.c already #includes \u003clinux/seq_file.h\u003e\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "e1ec1b8ccdf0df6000faa8c2d985ca5f94157e5a",
      "tree": "4e1ca325dde22f1ac21c9da0be509e87e922e604",
      "parents": [
        "c0f39322c335412339dec16ebfd2a05ceba5ebcf",
        "802fb176d8c635ae42da31b80841c26e8c7338a0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/s2io.c\n"
    },
    {
      "commit": "6952d8923bcc8d6b8b43b065cfe9a31bb24f0d58",
      "tree": "2d0b7987def9e9591596d054a28e07494338c45e",
      "parents": [
        "3480c63bdf008e9289aab94418f43b9592978fff"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:15:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:15:38 2008 -0700"
      },
      "message": "[BOND]: Fix warning in bond_sysfs.c\n\noriginal_mtu is only used if we end up with a non-NULL\ndev, and it is assigned in all such cases, but GCC can\u0027t\nsee that.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e8e43843ba3ced0c657cbc0fdb10644ec60f772",
      "tree": "e64954326ced9c365c52c256f01b5f9fb1bcae66",
      "parents": [
        "ed85f2c3b2b72bd20f617ac749f5c22be8d0f66e",
        "50fd4407b8bfbde7c1a0bfe4f24de7df37164342"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 27 18:48:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 27 18:48:56 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/usb/rndis_host.c\n\tdrivers/net/wireless/b43/dma.c\n\tnet/ipv6/ndisc.c\n"
    },
    {
      "commit": "2cfb8b71ccb3ebca76cff48241527eba39226883",
      "tree": "3913598a5ff3d017d788e01ac55830bb0dc04bee",
      "parents": [
        "92b41daa45a505268b11de9b7cbde2c13c0223b5"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Mar 21 22:29:36 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 25 23:15:51 2008 -0400"
      },
      "message": "bonding: update version\n\n\tUpdate version to 3.2.5.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "92b41daa45a505268b11de9b7cbde2c13c0223b5",
      "tree": "0c13ab9c0773a5949547502777a9b829a2fe828c",
      "parents": [
        "966bc6f434df4a02108d01dda8cd52951fe853da"
      ],
      "author": {
        "name": "Libor Pechacek",
        "email": "lpechacek@suse.cz",
        "time": "Fri Mar 21 22:29:35 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 25 23:15:48 2008 -0400"
      },
      "message": "bonding: Fix sysfs attribute handling\n\nFor bonding interfaces any attempt to read the sysfs directory contents after\nmodule removal results in an oops.  The fix is to release sysfs attributes\nfor the interfaces upon module unload.\n\nSigned-off-by: Libor Pechacek \u003clpechacek@suse.cz\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "966bc6f434df4a02108d01dda8cd52951fe853da",
      "tree": "eb0a8e20b80475e22b4c5038a9bc246fda5fc605",
      "parents": [
        "2bf86b7aa8e74bf81a9872f7b610f49b610a4649"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Mar 21 22:29:34 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 25 23:15:40 2008 -0400"
      },
      "message": "bonding: fix two compiler warnings\n\n\tFix two compiler warnings that are new with recent versions of gcc\n(apparently 4.2 and up).  One is fixed by refactoring; this change was\nsupplied by Stephen Hemminger.  The other was fixed by labelling the\nvariable as uninitialized_var() after confirming via inspection that it\ncannot actually be used uninitialized.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2bf86b7aa8e74bf81a9872f7b610f49b610a4649",
      "tree": "243fab364159920c950e393194c0ba8421a15d05",
      "parents": [
        "26c080bf8308449330037f91daa3ac0a7c41023e"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Mar 21 22:29:33 2008 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 25 23:15:38 2008 -0400"
      },
      "message": "bonding: Fix locking in 802.3ad mode\n\n\tThe 802.3ad state machine lock can be acquired in both softirq and\nnot softirq context, but was not held at _bh to prevent a deadlock (which\ncould occur if a LACPDU arrived and was processed while the lock was\nheld).\n\n\tCorrected this, now hold the state machine lock at _bh to prevent\ndeadlock.\n\n\tBug reported by Todd Fleisher \u003ctodd@fleish.org\u003e.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c346dca10840a874240c78efe3f39acf4312a1f2",
      "tree": "c04cff20124eba5cc337cc5ec260ad2513eeb065",
      "parents": [
        "7cbca67c073263c179f605bdbbdc565ab29d801d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 21:47:49 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:53 2008 +0900"
      },
      "message": "[NET] NETNS: Omit net_device-\u003end_net without CONFIG_NET_NS.\n\nIntroduce per-net_device inlines: dev_net(), dev_net_set().\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists.\nLet\u0027s explicitly define them to help compiler optimizations.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "988b705077d8f922408913f4f521ae073256d4a1",
      "tree": "9b57725b954e1e96a80043ed43d83f8e032b47b6",
      "parents": [
        "8ed7edce82ca0d8d3adba8c08cd42337af6c758c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Mar 03 12:20:57 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 03 12:20:57 2008 -0800"
      },
      "message": "[ARP]: Introduce the arp_hdr_len helper.\n\nThere are some place, that calculate the ARP header length. These\ncalculations are correct, but \n a) some operate with \"magic\" constants,\n b) enlarge the code length (sometimes at the cost of coding style),\n c) are not informative from the first glance.\n\nThe proposal is to introduce a helper, that includes all the good\nsides of these calculations.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6133fb1aa137b35a8fa91ec17977ebf6a41456ec",
      "tree": "5bd2411fa97f9712f25ee95053a242db025b209c",
      "parents": [
        "6fc68624e524014fcd95faf726f855eb348f2e87"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Feb 28 20:46:17 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 28 20:46:17 2008 -0800"
      },
      "message": "[NETNS]: Disable inetaddr notifiers in namespaces other than initial.\n\nip_fib_init is kept enabled. It is already namespace-aware.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43cd2595e76fce5f58d5b35d9875bcc48ddaf2e8",
      "tree": "e76128b0f8858b01c9f780bb9c004d1dadabc029",
      "parents": [
        "21c9d8d73dd1a152c49b4e3176193a099849d4c9"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Jan 29 18:07:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:34 2008 -0800"
      },
      "message": "bonding: update version\n\n\tUpdate bonding to version 3.2.4.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21c9d8d73dd1a152c49b4e3176193a099849d4c9",
      "tree": "115f1f6f1acd454db2ae0c56bc4e575476fa7b1e",
      "parents": [
        "2439f9ebd45349246b0fec7c47e6d0e05b1357c7"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Jan 29 18:07:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:33 2008 -0800"
      },
      "message": "bonding: do not acquire rtnl in ARP monitor\n\n\tThe ARP monitor functions currently acquire RTNL when performing\nfailover operations, but do so incorrectly (out of order).  This causes\nvarious warnings from might_sleep.\n\n\tThe ARP monitor isn\u0027t supported for any of the bonding modes\nthat actually require RTNL, so it is safe to not hold RTNL when\nfailing over in the ARP monitor.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2439f9ebd45349246b0fec7c47e6d0e05b1357c7",
      "tree": "803000e31f25d0647d71bad8a7b9f2b7b3aea9c1",
      "parents": [
        "4fe4763cd8cacd81d892193efb48b99c99c15323"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Tue Jan 29 18:07:46 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:13 2008 -0800"
      },
      "message": "bonding: fix race that causes invalid statistics\n\nI\u0027ve seen reports of invalid stats in /proc/net/dev for bonding\ninterfaces, and found it\u0027s a pretty easy problem to reproduce.  Since\nthe current code zeros the bonding stats when a read is requested and a\npointer to that data is returned to the caller we cannot guarantee that\nthe caller has completely accessed the data before a successive call to\nrequest the stats zeroes the stats again.\n\nThis patch creates a new stack variable to keep track of the updated\nstats and copies the data from that variable into the bonding stats\nstructure.  This ensures that the value for any of the bonding stats\nshould not incorrectly return zero for any of the bonding statistics.\nThis does use more stack space and require an extra memcpy, but it seems\nlike a fair trade-off for consistently correct bonding statistics.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Chris Snook \u003ccsnook@redhat.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fe4763cd8cacd81d892193efb48b99c99c15323",
      "tree": "5eb58e95faa8cfc04a0d81993dcd99b5ecd93a98",
      "parents": [
        "80ee5ad23150f1f3fe8d35728e860850ccea44da"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Jan 29 18:07:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:12 2008 -0800"
      },
      "message": "bonding: fix NULL pointer deref in startup processing\n\n\tFix the \"are we creating a duplicate\" check to not compare\nthe name if the name is NULL (meaning that the system should select\na name).  Bug reported by Benny Amorsen \u003cbenny+usenet@amorsen.dk\u003e.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "80ee5ad23150f1f3fe8d35728e860850ccea44da",
      "tree": "4bab44a6762a87c59ba22ab688326f1a6fe075a1",
      "parents": [
        "a42e534f1b6be7f2f68f83d29588c3f2736b4d25"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Jan 29 18:07:44 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:12 2008 -0800"
      },
      "message": "bonding: fix set_multicast_list locking\n\n\tThis patch eliminates a problem (reported by lockdep) in the\nbond_set_multicast_list function.  It first reduces the locking on\nbond-\u003elock to a simple read_lock, and second, adds netif_tx locking\naround the bonding mc_list manipulations that occur outside of the\nset_multicast_list function.\n\n\tThe original problem was related to IPv6 addrconf activity.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a42e534f1b6be7f2f68f83d29588c3f2736b4d25",
      "tree": "5a5d0ef85a0c71e4c290c130ee99b1b5beea5cfc",
      "parents": [
        "c800c5c9db9c621b2c1d70c3ae6532fafe2db69d"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Jan 29 18:07:43 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 03 04:28:11 2008 -0800"
      },
      "message": "bonding: fix parameter parsing\n\n\tMy last fix (commit ece95f7fefe3afae19e641e1b3f5e64b00d5b948)\ndidn\u0027t handle one case correctly.  This resolves that, and it will now\ncorrectly parse parameters with arbitrary white space, and either text\nnames or mode values.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f206351a50ea86250fabea96b9af8d8f8fc02603",
      "tree": "014148d8b45db1995d98374ec3b30e635f243197",
      "parents": [
        "f1b050bf7a88910f9f00c9c8989c1bf5a67dd140"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Jan 22 22:07:34 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:11:07 2008 -0800"
      },
      "message": "[NETNS]: Add namespace parameter to ip_route_output_key.\n\nNeeded to propagate it down to the ip_route_output_flow.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5655662dab4ef044be7efd155f2f5fef2e486545",
      "tree": "d4003635df3c8cba3554e023d831ff8d4e5828e5",
      "parents": [
        "027ea0416c955778ceca7ef82e48a1dd6b4617c9"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:25:03 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:39 2008 -0500"
      },
      "message": "bonding: Don\u0027t hold lock when calling rtnl_unlock\n\nChange bond_mii_monitor to not hold any locks when calling rtnl_unlock,\nas rtnl_unlock can sleep (when acquring another mutex in netdev_run_todo).\n\nBug reported by Makito SHIOKAWA \u003cmshiokawa@miraclelinux.com\u003e, who\nincluded a different patch.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "027ea0416c955778ceca7ef82e48a1dd6b4617c9",
      "tree": "ad823fb28b414d948fc372a08c8c15cee31bd8e1",
      "parents": [
        "ece95f7fefe3afae19e641e1b3f5e64b00d5b948"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:25:02 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:39 2008 -0500"
      },
      "message": "bonding: fix lock ordering for rtnl and bonding_rwsem\n\nFix the handling of rtnl and the bonding_rwsem to always be acquired\nin a consistent order (rtnl, then bonding_rwsem).\n\nThe existing code sometimes acquired them in this order, and sometimes\nin the opposite order, which opens a window for deadlock between ifenslave\nand sysfs.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ece95f7fefe3afae19e641e1b3f5e64b00d5b948",
      "tree": "ea3846fa640e0c3ed4d4233ac005b653dcf69824",
      "parents": [
        "3b96c858fcb27120fcba222366180c3293393ccf"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:25:01 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:38 2008 -0500"
      },
      "message": "bonding: Fix up parameter parsing\n\n\tA recent change to add an additional hash policy modified\nbond_parse_parm, but it now does not correctly match parameters passed in\nvia sysfs.\n\n\tRewrote bond_parse_parm to handle (a) parameter matches that\nare substrings of one another and (b) user input with whitespace (e.g.,\nsysfs input often has a trailing newline).\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3b96c858fcb27120fcba222366180c3293393ccf",
      "tree": "53309f366e2a66be42591dfd1ecc9ac34ed96202",
      "parents": [
        "2543331d367c9fe54f4ba73300894bc21e0a08f4"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:25:00 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:38 2008 -0500"
      },
      "message": "bonding: release slaves when master removed via sysfs\n\n\tAdd a call to bond_release_all in the bonding netdev event\nhandler for the master.  This releases the slaves for the case of, e.g.,\n\"echo -bond0 \u003e /sys/class/net/bonding_masters\", which otherwise will spin\nforever waiting for references to be released.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2543331d367c9fe54f4ba73300894bc21e0a08f4",
      "tree": "83c43c448b7f18541dbe70ca4ff80138f8e695d4",
      "parents": [
        "e0138a66e18c6755ee29ce13b3f1142af775dc5f"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:24:59 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:38 2008 -0500"
      },
      "message": "bonding: fix locking during alb failover and slave removal\n\n\talb_fasten_mac_swap (actually rlb_teach_disabled_mac_on_primary)\nrequries RTNL and no other locks.  This could cause dev_set_promiscuity\nand/or dev_set_mac_address to be called with improper locking.\n\n\tChanged callers to hold only RTNL during calls to alb_fasten_mac_swap\nor functions calling it.  Updated header comments in affected functions to\nreflect proper reality of locking requirements.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e0138a66e18c6755ee29ce13b3f1142af775dc5f",
      "tree": "85a7443ff69676ed9bfe6f550e0f262172ab0750",
      "parents": [
        "e934dd7862e7f613b2ce9730d548a0a70913c8f7"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:24:58 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:38 2008 -0500"
      },
      "message": "bonding: fix ASSERT_RTNL that produces spurious warnings\n\n\tMove an ASSERT_RTNL down to where we should hold only RTNL;\nthe existing check produces spurious warnings because we hold additional\nlocks at _bh, tripping a debug warning in spin_lock_mutex().\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e934dd7862e7f613b2ce9730d548a0a70913c8f7",
      "tree": "9f6cd6b7e15614bc47d85806e4b5472ac65ab2ca",
      "parents": [
        "03bbe082cffc4533f6557bf23f0c672307067246"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Jan 17 16:24:57 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 18 14:38:38 2008 -0500"
      },
      "message": "bonding: fix locking in sysfs primary/active selection\n\n\tFix the functions that store the primary and active slave\noptions via sysfs to hold the correct locks in the correct order.\n\n\tThe bond_change_active_slave and bond_select_active_slave\nfunctions both require rtnl, bond-\u003elock for read and curr_slave_lock for\nwrite_bh, and no other locks.  This is so that the lower level\nmode-specific functions (notably for balance-alb mode) can release locks\ndown to just rtnl in order to call, e.g., dev_set_mac_address with the\nlocks it expects (rtnl only).\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fdaea7a93d097b066e76c7db6091228a84f87ec2",
      "tree": "b339439c29b8696b57cd83644f355dbb34008f70",
      "parents": [
        "6f6652be183c8c7cb99c646dd7494ab45e4833ba"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Dec 06 23:40:35 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:34 2007 -0500"
      },
      "message": "bonding: Fix race at module unload\n\n\tFixes a race condition in module unload.  Without this change,\nworkqueue events may fire while bonding data structures are partially\nfreed but before bond_close() is invoked by unregister_netdevice().\n\n\tUpdate version to 3.2.3.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6f6652be183c8c7cb99c646dd7494ab45e4833ba",
      "tree": "8ab3acaa0f7887aad46d0a1dd10f800312d657fa",
      "parents": [
        "b63bb739a1d24f395c09f88ff43c54c736a60453"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Thu Dec 06 23:40:34 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:32 2007 -0500"
      },
      "message": "bonding: Add new layer2+3 hash for xor/802.3ad modes\n\n \tAdd new hash for balance-xor and 802.3ad modes.  Originally\n submitted by \"Glenn Griffin\" \u003cggriffin.kernel@gmail.com\u003e; modified by\n Jay Vosburgh to move setting of hash policy out of line, tweak the\n documentation update and add version update to 3.2.2.\n\n\tGlenn\u0027s original comment follows:\n\nIncluded is a patch for a new xmit_hash_policy for the bonding driver\nthat selects slaves based on MAC and IP information.  This is a middle\nground between what currently exists in the layer2 only policy and the\nlayer3+4 policy.  This policy strives to be fully 802.3ad compliant by\ntransmitting every packet of any particular flow over the same link.\nAs documented the layer3+4 policy is not fully compliant for extreme\ncases such as ip fragmentation, so this policy is a nice compromise\nfor environments that require full compliance but desire more than the\nlayer2 only policy.\n\nSigned-off-by: \"Glenn Griffin\" \u003cggriffin.kernel@gmail.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b63bb739a1d24f395c09f88ff43c54c736a60453",
      "tree": "27aec1b4779f6bfd9c6d4c393ae037c665069220",
      "parents": [
        "8e4b9329080b7c37e3dcf4a7c435657d4d0f4816"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Thu Dec 06 23:40:33 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:30 2007 -0500"
      },
      "message": "bonding: Fix time comparison\n\nFrom: David Sterba \u003cdsterba@suse.cz\u003e\n\nUse macros for comparing jiffies. Jiffies\u0027 wrap caused missed events and hangs.\nModule reinsert was needed to make bonding work again.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.cz\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8e4b9329080b7c37e3dcf4a7c435657d4d0f4816",
      "tree": "600cf8b513b1727075adcd3b55a01208a2b0708e",
      "parents": [
        "1dcdcd69549c8e439fbe97a94ff0332ed8a55558"
      ],
      "author": {
        "name": "Wagner Ferenc",
        "email": "wferi@niif.hu",
        "time": "Thu Dec 06 23:40:32 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:28 2007 -0500"
      },
      "message": "bonding: Allow setting and querying xmit policy regardless of mode\n\nFrom: Wagner Ferenc \u003cwferi@niif.hu\u003e\n\nFor consistency with the behaviour of the arp_ip_target option,\nlet /sys/class/net/bond0/bonding/xmit_hash_policy accept and report\ncurrent policy even if the bonding mode in effect does not use it.\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1dcdcd69549c8e439fbe97a94ff0332ed8a55558",
      "tree": "0232356ee79098f0660c9ae2beb23a1e3bf5c4c3",
      "parents": [
        "b88436651b612be8c29b169af832d80f00f94b7f"
      ],
      "author": {
        "name": "Wagner Ferenc",
        "email": "wferi@niif.hu",
        "time": "Thu Dec 06 23:40:31 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:27 2007 -0500"
      },
      "message": "bonding: Coding style: break line after the if condition\n\nFrom: Wagner Ferenc \u003cwferi@niif.hu\u003e\n\nAdhere to coding style: break line after the if condition\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b88436651b612be8c29b169af832d80f00f94b7f",
      "tree": "4c1bea02ed626c913d7d5c21c0a4db0cb0ecc776",
      "parents": [
        "16cd0160d5e7e22c2818b30bf1a1d4c262a8df8a"
      ],
      "author": {
        "name": "Wagner Ferenc",
        "email": "wferi@niif.hu",
        "time": "Thu Dec 06 23:40:30 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:26 2007 -0500"
      },
      "message": "bonding: Purely cosmetic: rename a local variable\n\nFrom: Wagner Ferenc \u003cwferi@niif.hu\u003e\n\nCode for rendering multivalue sysfs files occurs three times\nin this module.  Rename \u0027buffer\u0027 to \u0027buf\u0027 in the first, for\nthe sake of consistency.\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "16cd0160d5e7e22c2818b30bf1a1d4c262a8df8a",
      "tree": "9b308a86ac51c52edcdaa3967a3a89d28d048b07",
      "parents": [
        "7bd4650895137760f6c686d06ca2bc174e3c861c"
      ],
      "author": {
        "name": "Wagner Ferenc",
        "email": "wferi@niif.hu",
        "time": "Thu Dec 06 23:40:29 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:25 2007 -0500"
      },
      "message": "bonding: Return nothing for not applicable values\n\nFrom: Wagner Ferenc \u003cwferi@niif.hu\u003e\n\nThe previous code returned \u0027\\n\u0027 (that is, a single empty line)\nfrom most files, with one exception (xmit_hash_policy), where\nit returned \u0027NA\\n\u0027.  This patch consolidates each file to return\nnothing at all if not applicable, not even a \u0027\\n\u0027.\n\nI find this behaviour more usual, more useful, more efficient\nand shorter to code from both sides.\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "7bd4650895137760f6c686d06ca2bc174e3c861c",
      "tree": "aecdf098f1bb5ef2e16afe9e6b63bfb87617bbfc",
      "parents": [
        "2c5ea0f2d8c7d4883dd0d8ec3c7e3f3640b4f814"
      ],
      "author": {
        "name": "Wagner Ferenc",
        "email": "wferi@niif.hu",
        "time": "Thu Dec 06 23:40:28 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 07 15:00:18 2007 -0500"
      },
      "message": "bonding: Remove trailing NULs from sysfs interface.\n\nFrom: Wagner Ferenc \u003cwferi@niif.hu\u003e\n\nAlso remove trailing spaces from multivalued files.\n\nThis fixes output like for example:\n\n$ od -c /sys/class/net/bond0/bonding/slaves\n0000000   e   t   h   -   l   e   f   t       e   t   h   -   r   i   g\n0000020   h   t      \\n  \\0\n0000025\n\nIt mostly entails deleting \u0027+1\u0027-s after sprintf() calls: the return value\nof sprintf is the number of characters printed, without the closing NUL,\nie. exactly what the sysfs interface requires.  The three multivalue\ncases are different, because they also have to swallow back a trailing\nspace.\n\nSigned-off-by: Ferenc Wagner \u003cwferi@niif.hu\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8cbdeec637c1ce87bf329c5c19a9964e36bdf9fb",
      "tree": "0019a5547ef145cdcd9f6d23e3b044f341829b8c",
      "parents": [
        "ce1d18e0064d55106a7042c07cfca97cad66f407"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Nov 13 21:16:29 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 13 21:16:29 2007 -0800"
      },
      "message": "[BONDING]: Fix resource use after free\n\nFix bond_destroy and bond_free_all to not reference the struct\nnet_device after calling unregister_netdevice.\n\nBug and offending change reported by Moni Shoua \u003cmonis@voltaire.com\u003e\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3a1521b7e5b6964c293bb8ed6773513f8f503de5",
      "tree": "c8beb091e81aa76c5ba7edeb2c4a022270f13097",
      "parents": [
        "1466a21997212a5fb33d5da9357841972b28b007"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Nov 06 13:33:29 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Nov 10 04:25:14 2007 -0500"
      },
      "message": "bonding: don\u0027t validate address at device open\n\nThe standard validate_addr handler refuses to accept the all zeroes address\nas valid.  However, it\u0027s common historical practice for the bonding\nmaster to be configured up prior to having any slaves, at which time the\nmaster will have a MAC address of all zeroes.\n\nResolved by setting the dev-\u003evalidate_addr to NULL.  The master still can\u0027t\nend up with an invalid address, as the set_mac_address function tests\nfor validity.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1466a21997212a5fb33d5da9357841972b28b007",
      "tree": "7c3968cf2b8780d08c4518f5e638534e7b7994c6",
      "parents": [
        "a5e68c02fe4d8dff2ff3c5212f9f67082849cc4b"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Nov 06 13:33:28 2007 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Nov 10 04:25:14 2007 -0500"
      },
      "message": "bonding: fix rtnl locking merge error\n\n\tLooks like I incorrectly merged one of the rtnl lock changes,\nso that one function, bonding_show_active_slave, held rtnl but didn\u0027t\nrelease it, and another, bonding_store_active_slave, never held rtnl but\ndid release it.\n\n\tFixed so the first function doesn\u0027t mess with rtnl, and the\nsecond correctly acquires and releases rtnl.\n\n\tBug reported by Moni Shoua \u003cmonis@voltaire.com\u003e\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a40745f5ef38f4542d120bd67c2c4a07702eb1da",
      "tree": "00aa03e31686c27ed91e2a514a358a976930ef35",
      "parents": [
        "c50b85d0fbca0a2017b8c0b1e2aeb650724c0a71"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 24 18:27:43 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Oct 25 03:31:14 2007 -0400"
      },
      "message": "bonding/bond_main.c: fix cut\u0027n\u0027paste error\n\nThis patch fixes a cut\u0027n\u0027paste error in\ncommit 1b76b31693d4a6088dec104ff6a6ead54081a3c2.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c50b85d0fbca0a2017b8c0b1e2aeb650724c0a71",
      "tree": "56280c8d0b93de5fac938279c82de5af5e005020",
      "parents": [
        "96fd74b2d9b59edeed7ea1287d322b7661d549ca"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 24 18:23:17 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Oct 25 03:31:14 2007 -0400"
      },
      "message": "make bonding/bond_main.c:bond_deinit() static\n\nbond_deinit() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d0e81b7e2246a41d068ecaf15aac9de570816d63",
      "tree": "27b1dac99c2ee47846bafab1a530cd6ffb2a0f03",
      "parents": [
        "6603a6f25e4bca922a7dfbf0bf03072d98850176"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:51 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:01 2007 -0400"
      },
      "message": "bonding: Acquire correct locks in alb for promisc change\n\n\tUpdate ALB mode monitor to hold correct locks (RTNL and nothing\nelse) when calling dev_set_promiscuity.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6603a6f25e4bca922a7dfbf0bf03072d98850176",
      "tree": "1e62ef0fe037036542def53dca162618a8345132",
      "parents": [
        "059fe7a578fba5bbb0fdc0365bfcf6218fa25eb0"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:50 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:00 2007 -0400"
      },
      "message": "bonding: Convert more locks to _bh, acquire rtnl, for new locking\n\n\tConvert more lock acquisitions to _bh flavor to avoid deadlock\nwith workqueue activity and add acquisition of RTNL in appropriate places.\nAffects ALB mode, as well as core bonding functions and sysfs.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "059fe7a578fba5bbb0fdc0365bfcf6218fa25eb0",
      "tree": "02e508e0094f93a318ead711cf7fe6725e8bf7fe",
      "parents": [
        "0b0eef66419e9abe6fd62bc958ab7cd0a18f858e"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:49 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:00 2007 -0400"
      },
      "message": "bonding: Convert locks to _bh, rework alb locking for new locking\n\n\tConvert locking-related activity to new \u0026 improved system.\nConvert some lock acquisitions to _bh and rework parts of ALB mode, both\nto avoid deadlocks with workqueue activity.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0b0eef66419e9abe6fd62bc958ab7cd0a18f858e",
      "tree": "2b334288d26198e18df867b01c880320d7ba9f5f",
      "parents": [
        "cf5f9044934658dd3ffc628a60cd37c70f8168b1"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:48 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:00 2007 -0400"
      },
      "message": "bonding: Convert miimon to new locking\n\n\tConvert mii (link state) monitor to acquire correct locks for\nfailover events.  In particular, failovers generally require RTNL at a low\nlevel (when manipulating device MAC addresses, for example) and no other\nlocks.  The high level monitor is responsible for acquiring a known set\nof locks, RTNL, the bond-\u003elock for read and the slave_lock for write, and\nthe low level failover processing can then release appropriate locks as\nneeded.  This patch provides the high level portion.\n\n\tAs it is undesirable to acquire RTNL for every monitor pass (which\nmay occur as often as every 10 ms), the miimon has been converted to\ndo conditional locking.  A first pass inspects all slaves to determine\nif any action is required, and if so, a second pass (after acquring RTNL)\nis done to perform any actions (doing a complete rescan, as the situation\nmay have changed when all locks were released).\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "cf5f9044934658dd3ffc628a60cd37c70f8168b1",
      "tree": "406baa95870c3e86858fd9ff98bc145c53dfa6ac",
      "parents": [
        "1b76b31693d4a6088dec104ff6a6ead54081a3c2"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:47 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:00 2007 -0400"
      },
      "message": "bonding: Convert balance-rr transmit to new locking\n\n\tChange locking in balance-rr transmit processing to use a free\nrunning counter to determine which slave to transmit on.  Instead, a\nfree-running counter is maintained, and modulo arithmetic used to select\na slave for transmit.\n\n\tThis removes lock operations from the TX path, and eliminates\na deadlock introduced by the conversion to work queues.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1b76b31693d4a6088dec104ff6a6ead54081a3c2",
      "tree": "d6353be6b4654ec85ab6cfe42d2c78fac9a755c8",
      "parents": [
        "15df5806c6fc94e607632bba70328194905e988f"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Oct 17 17:37:45 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:32:00 2007 -0400"
      },
      "message": "Convert bonding timers to workqueues\n\n\tConvert bonding timers to workqueues.  This converts the various\nmonitor functions to run in periodic work queues instead of timers.  This\npatch introduces the framework and convers the calls, but does not resolve\nvarious locking issues, and does not stand alone.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3a4fa0a25da81600ea0bcd75692ae8ca6050d165",
      "tree": "a4de1662e645c029cf3cf58f0646cbb1959861dc",
      "parents": [
        "18735dd8d2d37031b97f9e9e106acbaed01eb896"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Fri Oct 19 23:10:43 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Oct 19 23:10:43 2007 +0200"
      },
      "message": "Fix misspellings of \"system\", \"controller\", \"interrupt\" and \"necessary\".\n\nFix the various misspellings of \"system\", controller\", \"interrupt\" and\n\"[un]necessary\".\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "1c3f0b8e07de78a86f2dce911f5e245845ce40a8",
      "tree": "6ecefa9d2777c79e759f56c533533463ba83206e",
      "parents": [
        "68318b8e0b61f98f0be833cc862ab6dee69348b4"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Thu Oct 18 23:41:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:53 2007 -0700"
      },
      "message": "Change struct marker users\n\nPrior to use struct marker in the linux kernel markers, we need to clean\ntwo drivers which use this structure name.\n\nChange bonding driver types :\n- struct marker to struct bond_marker.\n- marker_t to bond_marker_t.\n- marker_header to bond_marker_header.\n- marker_header_t to bond_marker_header_t.\n\nChange qla4xxx struct marker_entry usage :\n- Change struct marker_entry for struct qla4_marker_entry.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Chad Tindel \u003cctindel@users.sourceforge.net\u003e\nCc: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: David Somayajulu \u003cdavid.somayajulu@qlogic.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Ravi Anand \u003cravi.anand@qlogic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1284cd3a2b740d0118458d2ea470a1e5bc19b187",
      "tree": "07a5259f3ddb531173771b40b46c1bb6580683bc",
      "parents": [
        "369d742defed73fc6b38bf0929fb198d072102ab"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Mon Oct 15 16:44:27 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 16 21:10:27 2007 -0400"
      },
      "message": "bonding: two small fixes for IPoIB support\n\n\tTwo small fixes to IPoIB support for bonding:\n\n\t1- copy header_ops from slave to bonding for IPoIB slaves\n\t2- move release and destroy logic to UNREGISTER from GOING_DOWN\n\t   notifier to avoid double release\n\n\tSet bonding to version 3.2.1.\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "dd957c57c52a3964b8446a3e868a08186274b628",
      "tree": "e745b1d3cfe5fbcb4bc6b85084dd90a22e1a1da9",
      "parents": [
        "d90a162a4ee280201e84944a84f86d6728dc0c27"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Tue Oct 09 19:57:24 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Optionally allow ethernet slaves to keep own MAC\n\n\tUpdate the \"don\u0027t change MAC of slaves\" functionality added in\nprevious changes to be a generic option, rather than something tied to\nIB devices, as it\u0027s occasionally useful for regular ethernet devices as\nwell.\n\n\tAdds \"fail_over_mac\" option (which is automatically enabled for IB\nslaves), applicable only to active-backup mode.\n\n\tIncludes documentation update.\n\n\tUpdates bonding driver version to 3.2.0.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d90a162a4ee280201e84944a84f86d6728dc0c27",
      "tree": "eff59bda3c6fcec2556b7d80838979e6fe705a43",
      "parents": [
        "1053f62c24faa6d4ee6f5bfddeca847b84f67a95"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:43 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Destroy bonding master when last slave is gone\n\nWhen bonding enslaves non Ethernet devices it takes pointers to functions\nin the module that owns the slaves. In this case it becomes unsafe\nto keep the bonding master registered after last slave was unenslaved\nbecause we don\u0027t know if the pointers are still valid.  Destroying the bond when slave_cnt is zero\nensures that these functions be used anymore.\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1053f62c24faa6d4ee6f5bfddeca847b84f67a95",
      "tree": "50ce488c64e9fccbfc9b85e6a523714828d063a6",
      "parents": [
        "3158bf7d414b69fdc0c715d0a4d82e12b74ef974"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:42 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Delay sending of gratuitous ARP to avoid failure\n\nDelay sending a gratuitous_arp when LINK_STATE_LINKWATCH_PENDING bit\nin dev-\u003estate field is on. This improves the chances for the arp packet to\nbe transmitted.\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3158bf7d414b69fdc0c715d0a4d82e12b74ef974",
      "tree": "48fceb771712a8b93ae02269facd29de7d37f70c",
      "parents": [
        "6b1bf096508c870889c2be63c7757a04d72116fe"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:41 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Handlle wrong assumptions that slave is always an Ethernet device\n\nbonding sometimes uses Ethernet constants (such as MTU and address length) which\nare not good when it enslaves non Ethernet devices (such as InfiniBand).\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6b1bf096508c870889c2be63c7757a04d72116fe",
      "tree": "5c65fe47e72b8b1a4f20a6c8541a23d8a94c0f46",
      "parents": [
        "2ab82852a2706b47c257ac87675ab8b06bc214dd"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:40 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Enable IP multicast for bonding IPoIB devices\n\nAllow to enslave devices when the bonding device is not up. Over the discussion\nheld at the previous post this seemed to be the most clean way to go, where it\nis not expected to cause instabilities.\n\nNormally, the bonding driver is UP before any enslavement takes place.\nOnce a netdevice is UP, the network stack acts to have it join some multicast groups\n(eg the all-hosts 224.0.0.1). Now, since ether_setup() have set the bonding device\ntype to be ARPHRD_ETHER and address len to be ETHER_ALEN, the net core code\ncomputes a wrong multicast link address. This is b/c ip_eth_mc_map() is called\nwhere for multicast joins taking place after the enslavement another ip_xxx_mc_map()\nis called (eg ip_ib_mc_map() when the bond type is ARPHRD_INFINIBAND)\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2ab82852a2706b47c257ac87675ab8b06bc214dd",
      "tree": "fa8174d8179d3b43f98aff04855f1bc241ba13e2",
      "parents": [
        "872254dd6b1f80cb95ee9e2e22980888533fc293"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:39 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:46 2007 -0400"
      },
      "message": "net/bonding: Enable bonding to enslave netdevices not supporting set_mac_address()\n\nThis patch allows for enslaving netdevices which do not support\nthe set_mac_address() function. In that case the bond mac address is the one\nof the active slave, where remote peers are notified on the mac address\n(neighbour) change by Gratuitous ARP sent by bonding when fail-over occurs\n(this is already done by the bonding code).\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "872254dd6b1f80cb95ee9e2e22980888533fc293",
      "tree": "85851d40ed6717aa7df30f7ad8247e13ecded7bf",
      "parents": [
        "200d1713b47200aa478f27e454e3d957264d49be"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Oct 09 19:43:38 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 14:20:45 2007 -0400"
      },
      "message": "net/bonding: Enable bonding to enslave non ARPHRD_ETHER\n\nThis patch changes some of the bond netdevice attributes and functions\nto be that of the active slave for the case of the enslaved device not being\nof ARPHRD_ETHER type. Basically it overrides those setting done by ether_setup(),\nwhich are netdevice **type** dependent and hence might be not appropriate for\ndevices of other types. It also enforces mutual exclusion on bonding slaves\nfrom dissimilar ether types, as was concluded over the v1 discussion.\n\nIPoIB (see Documentation/infiniband/ipoib.txt) MAC address is made of a 3 bytes\nIB QP (Queue Pair) number and 16 bytes IB port GID (Global ID) of the port this\nIPoIB device is bounded to. The QP is a resource created by the IB HW and the\nGID is an identifier burned into the HCA (i have omitted here some details which\nare not important for the bonding RFC).\n\nSigned-off-by: Moni Shoua \u003cmonis at voltaire.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz at voltaire.com\u003e\nAcked-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d3bb52b0948cf118131c951c5a34a2d4d0246171",
      "tree": "e06f2029134bd0f6fae3cc99107191b55ef30ea4",
      "parents": [
        "dd96df2cc2539ecd451614a2ffed4d8a4c541d92"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 22 20:06:58 2007 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:56 2007 -0700"
      },
      "message": "endianness annotations drivers/net/bonding/\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\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": "88d3aafdae5c5e1d2dd9489a5c8a24e29d335f2e",
      "tree": "272ce75c30a170420ac8bbfd679c3faed9f9d20a",
      "parents": [
        "09f75cd7bf13720738e6a196cc0107ce9a5bd5a0"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Sep 15 14:41:06 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:17 2007 -0700"
      },
      "message": "[ETHTOOL] Provide default behaviors for a few ethtool sub-ioctls\n\nFor the operations\n\tget-tx-csum\n\tget-sg\n\tget-tso\n\tget-ufo\nthe default ethtool_op_xxx behavior is fine for all drivers, so we\npermit op\u003d\u003dNULL to imply the default behavior.\n\nThis provides a more uniform behavior across all drivers, eliminating\nethtool(8) \"ioctl not supported\" errors on older drivers that had\nnot been updated for the latest sub-ioctls.\n\nThe ethtool_op_xxx() functions are left exported, in case anyone\nwishes to call them directly from a driver-private implementation --\na not-uncommon case.  Should an ethtool_op_xxx() helper remain unused\nfor a while, except by net/core/ethtool.c, we can un-export it at a\nlater date.\n\n[ Resolved conflicts with set/get value ethtool patch... -DaveM ]\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10d024c1b2fd58af8362670d7d6e5ae52fc33353",
      "tree": "dbfb03c539986e2c1270385eb0083aaf0dfca8ab",
      "parents": [
        "596c5c97431eab8465739c169401ea611127b9ad"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Mon Sep 17 13:11:17 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:13 2007 -0700"
      },
      "message": "[NET]: Nuke SET_MODULE_OWNER macro.\n\nIt\u0027s been a useless no-op for long enough in 2.6 so I figured it\u0027s time to\nremove it.  The number of people that could object because they\u0027re\nmaintaining unified 2.4 and 2.6 drivers is probably rather small.\n\n[ Handled drivers added by netdev tree and some missed IRDA cases... -DaveM ]\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf1e9a080d7766bd65b8d8eb837ecde8b03dcc31",
      "tree": "3081072cbfb9ff3afad4cce26f412f53565e787b",
      "parents": [
        "10096974adb6d62b9f8cf65c266632ea73040936"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Fri Aug 10 14:05:20 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:50:26 2007 -0700"
      },
      "message": "Clean up duplicate includes in drivers/net/\n\nThis patch cleans up duplicate includes in\n\t drivers/net/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "881d966b48b035ab3f3aeaae0f3d3f9b584f45b2",
      "tree": "c579d59a4107cbbe9e2b85939bc0d496b815c887",
      "parents": [
        "b4b510290b056b86611757ce1175a230f1080f53"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Sep 17 11:56:21 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:10 2007 -0700"
      },
      "message": "[NET]: Make the device list and device lookups per namespace.\n\nThis patch makes most of the generic device layer network\nnamespace safe.  This patch makes dev_base_head a\nnetwork namespace variable, and then it picks up\na few associated variables.  The functions:\ndev_getbyhwaddr\ndev_getfirsthwbytype\ndev_get_by_flags\ndev_get_by_name\n__dev_get_by_name\ndev_get_by_index\n__dev_get_by_index\ndev_ioctl\ndev_ethtool\ndev_load\nwireless_process_ioctl\n\nwere modified to take a network namespace argument, and\ndeal with it.\n\nvlan_ioctl_set and brioctl_set were modified so their\nhooks will receive a network namespace argument.\n\nSo basically anthing in the core of the network stack that was\naffected to by the change of dev_base was modified to handle\nmultiple network namespaces.  The rest of the network stack was\nsimply modified to explicitly use \u0026init_net the initial network\nnamespace.  This can be fixed when those components of the network\nstack are modified to handle multiple network namespaces.\n\nFor now the ifindex generator is left global.\n\nFundametally ifindex numbers are per namespace, or else\nwe will have corner case problems with migration when\nwe get that far.\n\nAt the same time there are assumptions in the network stack\nthat the ifindex of a network device won\u0027t change.  Making\nthe ifindex number global seems a good compromise until\nthe network stack can cope with ifindex changes when\nyou change namespaces, and the like.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e9dc86534051b78e41e5b746cccc291b57a3a311",
      "tree": "1cd4a1dde4c51b6311749428a22cc8a8f5436825",
      "parents": [
        "e730c15519d09ea528b4d2f1103681fa5937c0e6"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Sep 12 13:02:17 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:09 2007 -0700"
      },
      "message": "[NET]: Make device event notification network namespace safe\n\nEvery user of the network device notifiers is either a protocol\nstack or a pseudo device.  If a protocol stack that does not have\nsupport for multiple network namespaces receives an event for a\ndevice that is not in the initial network namespace it quite possibly\ncan get confused and do the wrong thing.\n\nTo avoid problems until all of the protocol stacks are converted\nthis patch modifies all netdev event handlers to ignore events on\ndevices that are not in the initial network namespace.\n\nAs the rest of the code is made network namespace aware these\nchecks can be removed.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e730c15519d09ea528b4d2f1103681fa5937c0e6",
      "tree": "c117294523f4d004fb1d740610b6403e5744cdfc",
      "parents": [
        "6d34b1c27a72d5d1c73c567b2f6b1fde316e0eae"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Sep 17 11:53:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:08 2007 -0700"
      },
      "message": "[NET]: Make packet reception network namespace safe\n\nThis patch modifies every packet receive function\nregistered with dev_add_pack() to drop packets if they\nare not from the initial network namespace.\n\nThis should ensure that the various network stacks do\nnot receive packets in a anything but the initial network\nnamespace until the code has been converted and is ready\nfor them.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "457c4cbc5a3dde259d2a1f15d5f9785290397267",
      "tree": "a2ceee88780cbce27433b9a4434b3e9251efd81a",
      "parents": [
        "07feaebfcc10cd35e745c7073667935246494bee"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Sep 12 12:01:34 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:06 2007 -0700"
      },
      "message": "[NET]: Make /proc/net per network namespace\n\nThis patch makes /proc/net per network namespace.  It modifies the global\nvariables proc_net and proc_net_stat to be per network namespace.\nThe proc_net file helpers are modified to take a network namespace argument,\nand all of their callers are fixed to pass \u0026init_net for that argument.\nThis ensures that all of the /proc/net files are only visible and\nusable in the initial network namespace until the code behind them\nhas been updated to be handle multiple network namespaces.\n\nMaking /proc/net per namespace is necessary as at least some files\nin /proc/net depend upon the set of network devices which is per\nnetwork namespace, and even more files in /proc/net have contents\nthat are relevant to a single network namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f353bf29e162459f2f1e2ca25e41011fae65241",
      "tree": "8df6d6c66b69f18d521f76018ff98706e4e2a1b3",
      "parents": [
        "f71417614d63932cf56ed98a0947568d6259d11e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Aug 10 15:47:58 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 13 22:52:14 2007 -0700"
      },
      "message": "[NET]: Share correct feature code between bridging and bonding\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d8797 shows that the\nbonding driver may produce bogus combinations of the checksum\nflags and SG/TSO.\n\nFor example, if you bond devices with NETIF_F_HW_CSUM and\nNETIF_F_IP_CSUM you\u0027ll end up with a bonding device that\nhas neither flag set.  If both have TSO then this produces\nan illegal combination.\n\nThe bridge device on the other hand has the correct code to\ndeal with this.\n\nIn fact, the same code can be used for both.  So this patch\nmoves that logic into net/core/dev.c and uses it for both\nbonding and bridging.\n\nIn the process I\u0027ve made small adjustments such as only\nsetting GSO_ROBUST if at least one constituent device\nsupports it.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61a44b9c4b20d40c41fd1b70a4ceb13b75ea79a4",
      "tree": "26c97ff8b3b5e3827ba927bf5738baa092146d85",
      "parents": [
        "f1543f8b8316f49b318ac6cd8c78a7fd18509311"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Jul 31 14:00:02 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 31 14:00:02 2007 -0700"
      },
      "message": "[NET]: ethtool ops are the only way\n\nDuring the transition to the ethtool_ops way of doing things, we supported\ncalling the device\u0027s -\u003edo_ioctl method to allow unconverted drivers to\ncontinue working.  Those days are long behind us, all in-tree drivers\nuse the ethtool_ops way, and so we no longer need to support this.\n\nThe bonding driver is the biggest beneficiary of this; it no longer\nneeds to call ioctl() as a fallback if ethtool_ops aren\u0027t supported.\n\nAlso put a proper copyright statement on ethtool.c.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "4ad072c984ebe329c99965ddd1e58b0bb24af12b"
}
