)]}'
{
  "log": [
    {
      "commit": "27e6f065df132b5270014d3285889b15185e9da9",
      "tree": "b529f186972ab0577e96e4234803d795f143a2bd",
      "parents": [
        "392bd0cb000d4aac9e88e4f50823db85e7220688"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Oct 05 03:39:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 05 20:06:01 2010 -0700"
      },
      "message": "bonding: fix WARN_ON when writing to bond_master sysfs file\n\nFix a WARN_ON failure in bond_masters sysfs file\n\nGot a report of this warning recently\n\nbonding: bond0 is being created...\n------------[ cut here ]------------\nWARNING: at fs/proc/generic.c:590 proc_register+0x14d/0x185()\nHardware name: ProLiant BL465c G1\nproc_dir_entry \u0027bonding/bond0\u0027 already registered\nModules linked in: bonding ipv6 tg3 bnx2 shpchp amd64_edac_mod edac_core\nipmi_si\nipmi_msghandler serio_raw i2c_piix4 k8temp edac_mce_amd hpwdt microcode hpsa\ncc\niss radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded:\nscsi_wai\nt_scan]\nPid: 935, comm: ifup-eth Not tainted 2.6.33.5-124.fc13.x86_64 #1\nCall Trace:\n[\u003cffffffff8104b54c\u003e] warn_slowpath_common+0x77/0x8f\n[\u003cffffffff8104b5b1\u003e] warn_slowpath_fmt+0x3c/0x3e\n[\u003cffffffff8114bf0b\u003e] proc_register+0x14d/0x185\n[\u003cffffffff8114c20c\u003e] proc_create_data+0x87/0xa1\n[\u003cffffffffa0211e9b\u003e] bond_create_proc_entry+0x55/0x95 [bonding]\n[\u003cffffffffa0215e5d\u003e] bond_init+0x95/0xd0 [bonding]\n[\u003cffffffff8138cd97\u003e] register_netdevice+0xdd/0x29e\n[\u003cffffffffa021240b\u003e] bond_create+0x8e/0xb8 [bonding]\n[\u003cffffffffa021c4be\u003e] bonding_store_bonds+0xb3/0x1c1 [bonding]\n[\u003cffffffff812aec85\u003e] class_attr_store+0x27/0x29\n[\u003cffffffff8115423d\u003e] sysfs_write_file+0x10f/0x14b\n[\u003cffffffff81101acf\u003e] vfs_write+0xa9/0x106\n[\u003cffffffff81101be2\u003e] sys_write+0x45/0x69\n[\u003cffffffff81009b02\u003e] system_call_fastpath+0x16/0x1b\n---[ end trace a677c3f7f8b16b1e ]---\nbonding: Bond creation failed.\n\nIt happens because a user space writer to bond_master can try to\nregister an already existing bond interface name.  Fix it by teaching\nbond_create to check for the existance of devices with that name first\nin cases where a non-NULL name parameter has been passed in\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab12811c89e88f2e66746790b1fe4469ccb7bdd9",
      "tree": "50420aacb4a53367c90574a3462cc5ea100c43d1",
      "parents": [
        "a89b47639f3e11dd9a8eb78a5d3382e109c876f2"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Fri Sep 10 11:43:20 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 14 14:25:32 2010 -0700"
      },
      "message": "bonding: correctly process non-linear skbs\n\nIt was recently brought to my attention that 802.3ad mode bonds would no\nlonger form when using some network hardware after a driver update.\nAfter snooping around I realized that the particular hardware was using\npage-based skbs and found that skb-\u003edata did not contain a valid LACPDU\nas it was not stored there.  That explained the inability to form an\n802.3ad-based bond.  For balance-alb mode bonds this was also an issue\nas ARPs would not be properly processed.\n\nThis patch fixes the issue in my tests and should be applied to 2.6.36\nand as far back as anyone cares to add it to stable.\n\nThanks to Alexander Duyck \u003calexander.h.duyck@intel.com\u003e and Jesse\nBrandeburg \u003cjesse.brandeburg@intel.com\u003e for the suggestions on this one.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nCC: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nCC: stable@kerne.org\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb32f2a0d194212e4e750a8cdedcc610c9ca4876",
      "tree": "2f3762514e3feddb612c9d74379df98ac54eb300",
      "parents": [
        "c4433be6e19e3680727f3f89c938a22e7b789b43"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Thu Sep 02 05:45:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 07 13:57:20 2010 -0700"
      },
      "message": "bonding: Fix jiffies overflow problems (again)\n\nThe time_before_eq()/time_after_eq() functions operate on unsigned\nlong and only work if the difference between the two compared values\nis smaller than half the range of unsigned long (31 bits on i386).\n\nSome of the variables (slave-\u003ejiffies, dev-\u003etrans_start, dev-\u003elast_rx)\nused by bonding store a copy of jiffies and may not be updated for a\nlong time. With HZ\u003d1000, time_before_eq()/time_after_eq() will start\ngiving bad results after ~25 days.\n\njiffies will never be before slave-\u003ejiffies, dev-\u003etrans_start,\ndev-\u003elast_rx by more than possibly a couple ticks caused by preemption\nof this code. This allows us to detect/prevent these overflows by\nreplacing time_before_eq()/time_after_eq() with time_in_range().\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c5cb002fb0c82a0ccaef24e002ab370165b55be7",
      "tree": "023901db3964b3fafa72b629727676b42d192940",
      "parents": [
        "75f5e1c6f6cef2c201da688b2279cf15156db56d"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Wed Jul 28 15:13:56 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 30 23:27:57 2010 -0700"
      },
      "message": "bonding: prevent sysfs from allowing arp monitoring with alb/tlb\n\nWhen using module options arp monitoring and balance-alb/balance-tlb\nare mutually exclusive options.  Anytime balance-alb/balance-tlb are\nenabled mii monitoring is forced to 100ms if not set.  When configuring\nvia sysfs no checking is currently done.\n\nHandling these cases with sysfs has to be done a bit differently because\nwe do not have all configuration information available at once.  This\npatch will not allow a mode change to balance-alb/balance-tlb if\narp_interval is already non-zero.  It will also not allow the user to\nset a non-zero arp_interval value if the mode is already set to\nbalance-alb/balance-tlb.  They are still mutually exclusive on a\nfirst-come, first serve basis.\n\nTested with initscripts on Fedora and manual setting via sysfs.\n\nSigned-off-by: Andy Gospodarek \u003cgospo@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb7e95c8fd859922c6cf3ebbb3a8546007df1748",
      "tree": "58b54c6306ba168b76f25cc6dc9a2d1d2eb830a7",
      "parents": [
        "b8bc0421ab7f83712a0a8ef7eb05fa73ec53c027",
        "5447080cfa3c77154498dfbf225367ac85b4c2b5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 27 21:01:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 27 21:01:35 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x_main.c\n\nMerge bnx2x bug fixes in by hand... :-/\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8190dff018ffe932d17cae047c6b3d1c5fc7574",
      "tree": "7435b5596e7a022ef7a321a4f515d79bb3c138cf",
      "parents": [
        "64e724f62ab743d55229cd5e27ec8b068b68eb16"
      ],
      "author": {
        "name": "Greg Edwards",
        "email": "greg.edwards@hp.com",
        "time": "Fri Jul 23 10:02:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 24 20:37:48 2010 -0700"
      },
      "message": "bonding: set device in RLB ARP packet handler\n\nAfter:\n\ncommit 6146b1a4da98377e4abddc91ba5856bef8f23f1e\nAuthor: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nDate:   Tue Nov 4 17:51:15 2008 -0800\n\n    bonding: Fix ALB mode to balance traffic on VLANs\n\nthe dev field in the RLB ARP packet handler was set to NULL to wildcard\nand accommodate balancing VLANs on top of bonds.\n\nThis has the side-effect of the packet handler being called against\nother, non RLB-enabled bonds, and a kernel oops results when it tries to\ndereference rx_hashtbl in rlb_update_entry_from_arp(), which won\u0027t be\nset for those bonds, e.g. active-backup.\n\nWith the __netif_receive_skb() changes from:\n\ncommit 1f3c8804acba841b5573b953f5560d2683d2db0d\nAuthor: Andy Gospodarek \u003candy@greyhouse.net\u003e\nDate:   Mon Dec 14 10:48:58 2009 +0000\n\n    bonding: allow arp_ip_targets on separate vlans to use arp validation\n\nframes received on VLANs correctly make their way to the bond\u0027s handler,\nso we no longer need to wildcard the device.\n\nThe oops can be reproduced by:\n\nmodprobe bonding\n\necho active-backup \u003e /sys/class/net/bond0/bonding/mode\necho 100 \u003e /sys/class/net/bond0/bonding/miimon\nifconfig bond0 xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx\necho +eth0 \u003e /sys/class/net/bond0/bonding/slaves\necho +eth1 \u003e /sys/class/net/bond0/bonding/slaves\n\necho +bond1 \u003e /sys/class/net/bonding_masters\necho balance-alb \u003e /sys/class/net/bond1/bonding/mode\necho 100 \u003e /sys/class/net/bond1/bonding/miimon\nifconfig bond1 xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx\necho +eth2 \u003e /sys/class/net/bond1/bonding/slaves\necho +eth3 \u003e /sys/class/net/bond1/bonding/slaves\n\nPass some traffic on bond0.  Boom.\n\n[ Tested, behaves as advertised.  I do not believe a test of the bonding\nmode is necessary, as there is no race between the packet handler and\nthe bonding mode changing (the mode can only change when the device is\nclosed).  Also updated the log message to include the reproduction and\nfull commit ids.  -J ]\n\nSigned-off-by: Greg Edwards \u003cgreg.edwards@hp.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nAcked-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "03dc2f4c525afb9488edb687c2e1f7057d59b40e",
      "tree": "59702784f96f5a7427e4053c65845aad9a2d1d68",
      "parents": [
        "f35188faa0fbabefac476536994f4b6f3677380f"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Jul 21 12:14:48 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 22 14:14:47 2010 -0700"
      },
      "message": "bonding: don\u0027t lock when copying/clearing VLAN list on slave\n\nWhen copying VLAN information to or removing from a slave\nduring slave addition or removal, the bonding code currently holds\nthe bond-\u003elock for write to prevent concurrent modification of the\nvlan_list / vlgrp.\n\n\tThis is unnecessary, as all of these operations occur under\nRTNL.  Holding the bond-\u003elock also caused might_sleep issues for\nsome drivers\u0027 ndo_vlan_* functions.  This patch removes the extra\nlocking.\n\n\tProblem reported by Michael Chan \u003cmchan@broadcom.com\u003e\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f35188faa0fbabefac476536994f4b6f3677380f",
      "tree": "460c54e3d8505fd0ce42d16a1798c1f8c371d4a9",
      "parents": [
        "4bee1f9ac066ef0350b961eab9fedc4d0bd0a549"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Wed Jul 21 12:14:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 22 14:14:46 2010 -0700"
      },
      "message": "bonding: change test for presence of VLANs\n\nAfter commit ad1afb00393915a51c21b1ae8704562bf036855f\n(\"vlan_dev: VLAN 0 should be treated as \"no vlan tag\" (802.1p packet)\")\nit is now regular practice for a VLAN \"add vid\" for VLAN 0 to\narrive prior to any VLAN registration or creation of a vlan_group.\n\n\tThis patch updates the bonding code that tests for the presence\nof VLANs configured above bonding.  The new logic tests for bond-\u003evlgrp\nto determine if a registration has occured, instead of testing that\nbonding\u0027s internal vlan_list is empty.\n\n\tThe old code would panic when vlan_list was not empty, but\nvlgrp was still NULL (because only an \"add vid\" for VLAN 0 had occured).\n\n\tBonding still adds VLAN 0 to its internal list so that 802.1p\nframes are handled correctly on transmit when non-VLAN accelerated\nslaves are members of the bond.  The test against bond-\u003evlan_list\nremains in bond_dev_queue_xmit for this reason.\n\n\tModification to the bond-\u003evlgrp now occurs under lock (in\naddition to RTNL), because not all inspections of it occur under RTNL.\n\n\tAdditionally, because 8021q will never issue a \"kill vid\" for\nVLAN 0, there is now logic in bond_uninit to release any remaining\nentries from vlan_list.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: Pedro Garcia \u003cpedro.netdev@dondevamos.com\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90e1795b9b18ce47e95cd26028a9cfd0f4cc35ba",
      "tree": "95a6d3c6339f4d8ed44535e27bb6b57872e23163",
      "parents": [
        "e6e4ec2f98ae3b75cfede011c8794120914e789f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jul 19 06:52:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 19 13:34:16 2010 -0700"
      },
      "message": "bonding: avoid a warning\n\ndrivers/net/bonding/bond_main.c:179:12: warning: ‘disable_netpoll’\ndefined but not used\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db5dda905759c931ceb8f3f2fcfd7719009acc98",
      "tree": "b02a3f5e48ee9dfec6c04ea5fcacb69075ce2998",
      "parents": [
        "c26875e2e1a07137f6e7a621fa802b03c00535b6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jul 19 03:24:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 19 09:34:31 2010 -0700"
      },
      "message": "bonding: fix bond_inet6addr_event()\n\nAfter commit ad1afb0039391 (vlan_dev: VLAN 0 should be treated\nas \"no vlan tag\" (802.1p packet)),\nbond_inet6addr_event() might be called with a NULL bond-\u003evlgrp pointer, and\na non empty bond-\u003evlan_list. vlan_group_get_device() is dereferencing a NULL pointer.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79236680bde29913dc6bfaf9165973b74223d5f7",
      "tree": "a34d509c3afa9596e02af63c54d407b4fd8266b1",
      "parents": [
        "04d5821fa506551afbc072456fecee7b34b2977d"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Wed Jul 14 18:24:54 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 14 18:24:54 2010 -0700"
      },
      "message": "bonding: fix a buffer overflow in bonding_show_queue_id.\n\nThe test for buffer overflow ensures we have room for 6 more bytes.\nsprintf, called with %s:%d, slave-\u003edev-\u003ename, slave-\u003equeue_id may yield\nfar more than 6 bytes.\n\nThe correct test is res \u003e (PAGE_SIZE - IFNAMSIZ - 6) .\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "597e608a8492d662736c9bc6aa507dbf1cadc17d",
      "tree": "6c330cdd0a4809f67dd191b37e34f5b4318cef78",
      "parents": [
        "acbc0f039ff4b93da737c91937b7c70018ded39f",
        "33b665eeeb85956ccbdf31c4c31a4e2a31133c44"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 07 15:59:38 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 07 15:59:38 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "28172739f0a276eb8d6ca917b3974c2edb036da3",
      "tree": "b1dc00cfa20c209992e247c6f73601f609f9ca3b",
      "parents": [
        "217d32dc5f299c483ca0d3c8cc6811c72c0339c4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jul 07 14:58:56 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 07 14:58:56 2010 -0700"
      },
      "message": "net: fix 64 bit counters on 32 bit arches\n\nThere is a small possibility that a reader gets incorrect values on 32\nbit arches. SNMP applications could catch incorrect counters when a\n32bit high part is changed by another stats consumer/provider.\n\nOne way to solve this is to add a rtnl_link_stats64 param to all\nndo_get_stats64() methods, and also add such a parameter to\ndev_get_stats().\n\nRule is that we are not allowed to use dev-\u003estats64 as a temporary\nstorage for 64bit stats, but a caller provided area (usually on stack)\n\nOld drivers (only providing get_stats() method) need no changes.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "42d782ac1bef7cbcdf05b857731345c6e8149f90",
      "tree": "a832741c37a71797220914f360b454dcca1fff18",
      "parents": [
        "dd1589a431e90f9ff587e640c67101a565e52bba"
      ],
      "author": {
        "name": "Flavio Leitner",
        "email": "fleitner@redhat.com",
        "time": "Tue Jun 29 08:24:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 30 13:51:11 2010 -0700"
      },
      "message": "bonding: check if clients MAC addr has changed\n\nWhen two systems using bonding devices in adaptive load\nbalancing (ALB) communicates with each other, an endless\nping-pong of ARP replies starts between these two systems.\n\nWhat happens? In the ALB mode, bonding driver keeps track\nof each client connected in a hash table, so it can do the\nreceive load balancing (RLB). This hash table is updated\nwhen an ARP reply is received, then it scans for the client\nentry, updates its MAC address and flag it to be announced\nlater. Therefore, two seconds later, the alb monitor runs\nand send for each updated client entry two ARP replies\nupdating this specific client. The same process happens on\nthe receiving system, causing the endless ping-pong of arp\nreplies.\n\nSee more information including the relevant functions below:\n\n   System 1                          System 2\n    bond0                             bond0\n\n   ping \u003csystem2\u003e\n    ARP request  ---------\u003e\n                           \u003c--------- ARP reply\n\n+-\u003erlb_arp_recv  \u003c---------------------+   \u003c--- loop begins\n|  rlb_update_entry_from_arp           |\n|  client_info-\u003entt \u003d 1;               |\n|  bond_info-\u003erx_ntt \u003d 1;              |\n|                                      |\n|         \u003ccommunication succeed\u003e      |\n|                                      |\n|  bond_alb_monitor                    |\n|  rlb_update_rx_clients               |\n|  rlb_update_client                   |\n|  arp_create(ARPOP_REPLY)             |\n|   send ARP reply --------------\u003e     V\n|   send ARP reply --------------\u003e\n|                               rlb_arp_recv\n|                               rlb_update_entry_from_arp\n|                               client_info-\u003entt \u003d 1;\n|                               bond_info-\u003erx_ntt \u003d 1;\n|                           \u003c snipped, same as in system 1\u003e\n+-------           \u003c-------------- send ARP reply\n                   \u003c-------------- send ARP reply\n\nBesides the unneeded networking traffic, this loop breaks\na cluster because a backup system can\u0027t take over the IP\naddress. There is always one system sending an ARP reply\npoisoning the network.\n\nThis patch fixes the problem adding a check for the MAC\naddress before updating it. Thus, if the MAC address didn\u0027t\nchange, there is no need to update neither to announce it later.\n\nSigned-off-by: Flavio Leitner \u003cfleitner@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c22d7ac844f1cb9c6a5fd20f89ebadc2feef891b",
      "tree": "63af10f1115dfdc5ec0c08765ba342b62809d808",
      "parents": [
        "e2f5b04563786d4b7d7648868de7e941a0649372"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Fri Jun 25 09:50:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 28 23:54:10 2010 -0700"
      },
      "message": "bonding: prevent netpoll over bonded interfaces\n\nSupport for netpoll over bonded interfaces was added here:\n\n\tcommit f6dc31a85cd46a959bdd987adad14c3b645e03c1\n\tAuthor: WANG Cong \u003camwang@redhat.com\u003e\n\tDate:   Thu May 6 00:48:51 2010 -0700\n\n\t    bonding: make bonding support netpoll\n\nbut it is bad enough that we should probably just disable netpoll over\nbonding until some of the locking logic in the bonding driver is changed\nor converted completely to RCU.  Simple actions like changing the active\nslave in active-backup mode will hang the box if a high enough printk\ndebugging level is enabled.\n\nKeeping the old code around will be good for anyone that wants to work\non it (and for after the RCU conversion), so I propose this small patch\nrather than ripping it all out.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be1f3c2c027cc5ad735df6a45a542ed1db7ec48b",
      "tree": "c97815a7cf25ea62e8f3a6b3597cfa8957f40b81",
      "parents": [
        "d19b51499967baddf4f9f12a0067146c2554527a"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Tue Jun 08 07:19:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 12 15:51:22 2010 -0700"
      },
      "message": "net: Enable 64-bit net device statistics on 32-bit architectures\n\nUse struct rtnl_link_stats64 as the statistics structure.\n\nOn 32-bit architectures, insert 32 bits of padding after/before each\nfield of struct net_device_stats to make its layout compatible with\nstruct rtnl_link_stats64.  Add an anonymous union in net_device; move\nstats into the union and add struct rtnl_link_stats64 stats64.\n\nAdd net_device_ops::ndo_get_stats64, implementations of which will\nreturn a pointer to struct rtnl_link_stats64.  Drivers that implement\nthis operation must not update the structure asynchronously.\n\nChange dev_get_stats() to call ndo_get_stats64 if available, and to\nreturn a pointer to struct rtnl_link_stats64.  Change callers of\ndev_get_stats() accordingly.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8d1f30b95a635dbd610dcc5eb641aca8f4768cf",
      "tree": "71424d82a96facd5fcf05cc769ef2ba52b584aeb",
      "parents": [
        "592fcb9dfafaa02dd0edc207bf5d3a0ee7a1f8df"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "message": "net-next: remove useless union keyword\n\nremove useless union keyword in rtable, rt6_info and dn_route.\n\nSince there is only one member in a union, the union keyword isn\u0027t useful.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb1d912323d5dd50e1079e389f4e964be14f0ae3",
      "tree": "7d20fff2e63bc6add251a56625110257d3ccc45f",
      "parents": [
        "ebd8e4977a87cb81d93c62a9bff0102a9713722f"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Wed Jun 02 08:40:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 05 02:23:17 2010 -0700"
      },
      "message": "bonding: allow user-controlled output slave selection\n\nv2: changed bonding module version, modified to apply on top of changes\nfrom previous patch in series, and updated documentation to elaborate on\nmultiqueue awareness that now exists in bonding driver.\n\nThis patch give the user the ability to control the output slave for\nround-robin and active-backup bonding.  Similar functionality was\ndiscussed in the past, but Jay Vosburgh indicated he would rather see a\nfeature like this added to existing modes rather than creating a\ncompletely new mode.  Jay\u0027s thoughts as well as Neil\u0027s input surrounding\nsome of the issues with the first implementation pushed us toward a\ndesign that relied on the queue_mapping rather than skb marks.\nRound-robin and active-backup modes were chosen as the first users of\nthis slave selection as they seemed like the most logical choices when\nconsidering a multi-switch environment.\n\nRound-robin mode works without any modification, but active-backup does\nrequire inclusion of the first patch in this series and setting\nthe \u0027all_slaves_active\u0027 flag.  This will allow reception of unicast traffic on\nany of the backup interfaces.\n\nThis was tested with IPv4-based filters as well as VLAN-based filters\nwith good results.\n\nMore information as well as a configuration example is available in the\npatch to Documentation/networking/bonding.txt.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebd8e4977a87cb81d93c62a9bff0102a9713722f",
      "tree": "c91a15f48f3156a5ff6d60fd879a97b7e789fe8a",
      "parents": [
        "b78462ebc6a4ef9074aa80abebcdd470dc5f0ce0"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Wed Jun 02 08:39:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 05 02:23:17 2010 -0700"
      },
      "message": "bonding: add all_slaves_active parameter\n\nv2: changed parameter name from \u0027keep_all\u0027 to \u0027all_slaves_active\u0027 and\nskipped setting slaves to inactive rather than creating a new flag at\nJay\u0027s suggestion.\n\nIn an effort to suppress duplicate frames on certain bonding modes\n(specifically the modes that do not require additional configuration on\nthe switch or switches connected to the host), code was added in the\ngeneric receive patch in 2.6.16.  The current behavior works quite well\nfor most users, but there are some times it would be nice to restore old\nfunctionality and allow all frames to make their way up the stack.\n\nThis patch adds support for a new module option and sysfs file called\n\u0027all_slaves_active\u0027 that will restore pre-2.6.16 functionality if the\nuser desires.  The default value is \u00270\u0027 and retains existing behavior,\nbut the user can set it to \u00271\u0027 and allow all frames up if desired.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "097811bb48c7837db94d7fe5d94f0f4b5e19e78c",
      "tree": "61701eb46c49d0a2db449be87ae1d114e03ac9f7",
      "parents": [
        "5206e24c2c348d739c31ebed10a741a02bbde9e0"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed May 19 03:26:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 04:16:24 2010 -0700"
      },
      "message": "bonding: optimize tlb_get_least_loaded_slave\n\nIn the worst case, when the first loop breaks an the end of the slave list,\nthe slave list is iterated through twice. This patch reduces this\nfunction only to one loop. Also makes it simpler.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5206e24c2c348d739c31ebed10a741a02bbde9e0",
      "tree": "28993a140fb5cdbd6c9b47e091207a8af866d888",
      "parents": [
        "c20811a79e671a6a1fe86a8c1afe04aca8a7f085"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed May 19 01:17:41 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 04:16:24 2010 -0700"
      },
      "message": "bonding: remove unused original_flags struct slave member\n\nThis is stored but never restored. So remove this as it is useless.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c20811a79e671a6a1fe86a8c1afe04aca8a7f085",
      "tree": "21c68c6a711de84781dff4a561566dc0e325959b",
      "parents": [
        "e95095540c5276fc9922cb14376afc36f846af1f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed May 19 01:14:29 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 04:16:23 2010 -0700"
      },
      "message": "bonding: move dev_addr cpy to bond_enslave\n\nMove the code that copies slave\u0027s mac address in case that\u0027s the first slave into\nbond_enslave. Ifenslave app does this also but that\u0027s not a problem. This is\nsomething that should be done in bond_enslave, and it shound not matter from\nwhere is it called.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9f3545e1e5de3d3f5376ae6c522aedb1205f4e1",
      "tree": "190d929aa39cce0f969da6528d16c8aefb25cc0d",
      "parents": [
        "3dd90905e08655aa7754f08ebe8b1f44e2793074"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue May 18 05:46:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 03:39:42 2010 -0700"
      },
      "message": "bonding: make bonding_store_slaves simpler\n\nThis patch makes bonding_store_slaves function nicer and easier to understand.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3dd90905e08655aa7754f08ebe8b1f44e2793074",
      "tree": "48261f1ff95d6483d13caa922afe0256f19961ee",
      "parents": [
        "b15ba0fbdc2e54c3885fed91c54aeef7fe474033"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue May 18 05:44:53 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 03:39:42 2010 -0700"
      },
      "message": "bonding: remove redundant checks from bonding_store_slaves V2\n\n(it\u0027s actually the same as v1)\n\nRemove checks that duplicates similar checks in bond_enslave.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b15ba0fbdc2e54c3885fed91c54aeef7fe474033",
      "tree": "bc51f9675212866b4f7ae68fd54fa28b3e85e6d0",
      "parents": [
        "64585909996de7deaf8aa5cf7629d775b16ee417"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue May 18 05:42:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 03:39:41 2010 -0700"
      },
      "message": "bonding: move slave MTU handling from sysfs V2\n\nV1-\u003eV2: corrected res/ret use\n\nFor some reason, MTU handling (storing, and restoring) is taking  place in\nbond_sysfs. The correct place for this code is in bond_enslave, bond_release.\nSo move it there.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64585909996de7deaf8aa5cf7629d775b16ee417",
      "tree": "9b1f05644532feb1bbcc3b448087cc389a619933",
      "parents": [
        "371121057607e3127e19b3fa094330181b5b031e"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon May 17 03:49:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 02 03:39:40 2010 -0700"
      },
      "message": "bonding: remove unused variable \"found\"\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6dc31a85cd46a959bdd987adad14c3b645e03c1",
      "tree": "5e60aa95287daa0262e90f0db36e280dea163578",
      "parents": [
        "c06ee961d3c0e51009cbd0e123b61fbb97f37d0b"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "amwang@redhat.com",
        "time": "Thu May 06 00:48:51 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 06 00:48:51 2010 -0700"
      },
      "message": "bonding: make bonding support netpoll\n\nBased on Andy\u0027s work, but I modified a lot.\n\nSimilar to the patch for bridge, this patch does:\n\n1) implement the 2 methods to support netpoll for bonding;\n\n2) modify netpoll during forwarding packets via bonding;\n\n3) disable netpoll support of bonding when a netpoll-unabled device\n   is added to bonding;\n\n4) enable netpoll support when all underlying devices support netpoll.\n\nCc: Andy Gospodarek \u003cgospo@redhat.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a35ecf8bf1c4b039503fa554100fe85c761de76",
      "tree": "9b75f5d5636004d9a9aa496924377379be09aa1f",
      "parents": [
        "b4d562e3c3553ac58c7120555c4e4aefbb090a2a",
        "fb9e2d887243499b8d28efcf80821c4f6a092395"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bonding/bond_main.c\n\tdrivers/net/via-velocity.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n"
    },
    {
      "commit": "22bedad3ce112d5ca1eaf043d4990fa2ed698c87",
      "tree": "b6fba5688d48b1396f01d13ee53610dea7749c15",
      "parents": [
        "a748ee2426817a95b1f03012d8f339c45c722ae1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:15 2010 -0700"
      },
      "message": "net: convert multicast list to list_head\n\nConverts the list and the core manipulating with it to be the same as uc_list.\n\n+uses two functions for adding/removing mc address (normal and \"global\"\n variant) instead of a function parameter.\n+removes dev_mcast.c completely.\n+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for\n manipulation with lists on a sandbox (used in bonding and 80211 drivers)\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a748ee2426817a95b1f03012d8f339c45c722ae1",
      "tree": "37cb9f8836f05bd49b86eb52ddeff3e98185cc58",
      "parents": [
        "9fc4178b149ae8b0a2fbf83f2f4df3cf8789177b"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:11 2010 -0700"
      },
      "message": "net: move address list functions to a separate file\n\n+little renaming of unicast functions to be smooth with multicast ones\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9e2e61fbf8ad016d24e4af0afff13505f3dd2a2a",
      "tree": "e469e69cc59b860713ac18227932c017a739564f",
      "parents": [
        "6503d96168f891ffa3b70ae6c9698a1a722025a0"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Wed Mar 31 21:30:52 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 01 17:26:01 2010 -0700"
      },
      "message": "bonding: fix potential deadlock in bond_uninit()\n\nbond_uninit() is invoked with rtnl_lock held, when it does destroy_workqueue()\nwhich will potentially flush all works in this workqueue, if we hold rtnl_lock\nagain in the work function, it will deadlock.\n\nSo move destroy_workqueue() to destructor where rtnl_lock is not held any more,\nsuggested by Eric.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Jiri Pirko \u003cjpirko@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00ae702847df5566ce9182e9c895185e2ad1c181",
      "tree": "6258957adb1fb1b6086363536607a1124824bf4c",
      "parents": [
        "ce6fbdefb68d46db88170494b277551f955b48e2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Mar 30 23:08:37 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 31 03:23:56 2010 -0700"
      },
      "message": "bonding: bond_xmit_roundrobin() fix\n\nCommit a2fd940f (bonding: fix broken multicast with round-robin mode)\nadded a problem on litle endian machines.\n\ndrivers/net/bonding/bond_main.c:4159: warning: comparison is always\nfalse due to limited range of data type\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2fd940f4cff74b932728bd6ca12848da21a0234",
      "tree": "a0d065e07acd61a1c4ab52f5e67af60d5b31a31d",
      "parents": [
        "44ebb95290afcc687511ad3f7fd6434e867c270a"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Thu Mar 25 14:49:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 27 16:39:15 2010 -0700"
      },
      "message": "bonding: fix broken multicast with round-robin mode\n\nRound-robin (mode 0) does nothing to ensure that any multicast traffic\noriginally destined for the host will continue to arrive at the host when\nthe link that sent the IGMP join or membership report goes down.  One of\nthe benefits of absolute round-robin transmit.\n\nKeeping track of subscribed multicast groups for each slave did not seem\nlike a good use of resources, so I decided to simply send on the\ncurr_active slave of the bond (typically the first enslaved device that\nis up).  This makes failover management simple as IGMP membership\nreports only need to be sent when the curr_active_slave changes.  I\ntested this patch and it appears to work as expected.\n\nOriginally reported by Lon Hohberger \u003clhh@redhat.com\u003e.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Lon Hohberger \u003clhh@redhat.com\u003e\nCC: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2381a55c88453d3f29fe62d235579a05fc20b7b3",
      "tree": "b962ee6d3f5260622504433ef6a485703d3da8dd",
      "parents": [
        "d6dbee861386cd3f4cee62bcf28597e63e251e0c"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Wed Mar 24 07:57:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 24 14:10:38 2010 -0700"
      },
      "message": "net/various: remove trailing space in messages\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32a806c194ea112cfab00f558482dd97bee5e44e",
      "tree": "196f572deccc966b3e2682f293cf775b51007658",
      "parents": [
        "755d0e77ac9c8d125388922dc33434ed5b2ebe80"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri Mar 19 04:00:23 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 21 18:31:34 2010 -0700"
      },
      "message": "bonding: flush unicast and multicast lists when changing type\n\nAfter the type change, addresses in unicast and multicast lists wouldn\u0027t make\nsense, not to mention possible different lenghts. So flush both lists here.\n\nNote \"dev_addr_discard\" will be very soon replaced by \"dev_mc_flush\" (once\nmc_list conversion will be done).\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "502a2ffd7376ae27cfde6172257db0ff9d8cfec2",
      "tree": "de51fc19a9442f3edd344f56ff1887b25a5da6c9",
      "parents": [
        "3a88a81d89c20be312b3b219b185bbdde24b8fb8"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 17 20:31:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 20 15:45:09 2010 -0700"
      },
      "message": "ipv6: convert idev_list to list macros\n\nConvert to list macro\u0027s for the list of addresses per interface\nin IPv6.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ca5b4042ecae5e73c59de62e4ac0db31c10e0f8",
      "tree": "a285e4281bd9ee6a248d905cd4707c15a66bac96",
      "parents": [
        "93d9b7d7a85cfb4e1711d5226eba73586dd4919f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Mar 10 10:29:35 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 18 20:00:02 2010 -0700"
      },
      "message": "bonding: check return value of nofitier when changing type\n\nThis patch adds the possibility to refuse the bonding type change for\nother subsystems (such as for example bridge, vlan, etc.)\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93d9b7d7a85cfb4e1711d5226eba73586dd4919f",
      "tree": "e821e36c2d2eb07cdc46df1d3b1ea23afaf970ca",
      "parents": [
        "1e94d72feab025b8f7c55d07020602f82f3a97dd"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Mar 10 10:28:56 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 18 20:00:01 2010 -0700"
      },
      "message": "net: rename notifier defines for netdev type change\n\nSince generally there could be more netdevices changing type other\nthan bonding, making this event type name \"bonding-unrelated\"\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "28812fe11a21826ba4c97c6c7971a619987cd912",
      "tree": "c78daefd595989bbc660ea48d8bc2dc5750321d3",
      "parents": [
        "5fbcae57db69128c14080a7a5a42d0626bfe155c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:07 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "driver-core: Add attribute argument to class_attribute show/store\n\nPassing the attribute to the low level IO functions allows all kinds\nof cleanups, by sharing low level IO code without requiring\nan own function for every piece of data.\n\nAlso drivers can extend the attributes with own data fields\nand use that in the low level function.\n\nThis makes the class attributes the same as sysdev_class attributes\nand plain attributes.\n\nThis will allow further cleanups in drivers.\n\nFull tree sweep converting all users.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8d6184e4881b423522136aeb3ec1cbd9c35e8813",
      "tree": "fc9c33ee44e199b65d0e619a6ced118f8f0bbec3",
      "parents": [
        "3729d5021257b283f7fce33d957893162ccb2c9d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Feb 27 02:52:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 27 02:52:05 2010 -0800"
      },
      "message": "bonding: fix device leak on error in bond_create()\n\nWhen the register_netdevice() call fails, the newly allocated device is\nnot freed.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35cfabdc5e9b99e732899db8f36c63a215e105bc",
      "tree": "2a79cf8cce65fe0bda38313b0ed24f5a36882abe",
      "parents": [
        "235ecb1db09f481840569fd85eda62e70d03580c"
      ],
      "author": {
        "name": "Ajit Khaparde",
        "email": "ajitkhaparde@gmail.com",
        "time": "Mon Feb 01 14:06:52 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 20:32:27 2010 -0800"
      },
      "message": "bonding: Remove net_device_stats from bonding struct\n\nThere is no need to maintain stats in the bonding structure.\nUse the instance of net_device_stats in netdevice.\n\nSigned-off-by: Ajit Khaparde \u003cajitk@serverengines.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05ba712d7eb156009753e18e5116cabd869cc6e2",
      "tree": "1ad850d6889f6b3671a5636653940f20a7d22bdf",
      "parents": [
        "257ddbdad13cd3c4f7d03b85af632c508aa8abc9",
        "b473946a0853860e13b51c28add5524741117786"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 06:12:38 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 06:12:38 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "b473946a0853860e13b51c28add5524741117786",
      "tree": "f60ad1068ba160e2628a915aa073ced46872f966",
      "parents": [
        "3ce1cc52d2e76b6a6b9d0b52b70eb181497efa50"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Jan 25 23:34:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 28 05:55:54 2010 -0800"
      },
      "message": "bonding: bond_open error return value\n\nThe convention for API functions in kernel is to return errno value;\nbond_open would return -1 if alb setup failed. The only reason that\ncould happen is if kmalloc() failed.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c8c1e7297e19bdef3c178c3ea41d898a7716e3e",
      "tree": "4d336562e8d5379732a0646e17b0bb1750111ef6",
      "parents": [
        "72659ecce68588b74f6c46862c2b4cec137d7a5a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Jan 17 03:35:32 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 17 19:16:02 2010 -0800"
      },
      "message": "net: spread __net_init, __net_exit\n\n__net_init/__net_exit are apparently not going away, so use them\nto full extent.\n\nIn some cases __net_init was removed, because it was called from\n__net_exit code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d4a66e752d0b19934dd208884f8605fe385aaaa9",
      "tree": "72fb727be1d7636aae9cddfe9aa93ac9dec75daf",
      "parents": [
        "bdbec4b86ee99b020e159f9bd604003a3ae3b0ab",
        "fa15e99b6bb44aa86b241a43ca8c509e91f80153"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 10 22:55:03 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 10 22:55:03 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/benet/be_cmds.h\n\tinclude/linux/sysctl.h\n"
    },
    {
      "commit": "1f3c8804acba841b5573b953f5560d2683d2db0d",
      "tree": "453fae141b4a37e72ee0513ea1816fbff8f1cf8a",
      "parents": [
        "3a999e6eb5d277cd6a321dcda3fc43c3d9e4e4b8"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Mon Dec 14 10:48:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 03 21:17:16 2010 -0800"
      },
      "message": "bonding: allow arp_ip_targets on separate vlans to use arp validation\n\nThis allows a bond device to specify an arp_ip_target as a host that is\nnot on the same vlan as the base bond device and still use arp\nvalidation.  A configuration like this, now works:\n\nBONDING_OPTS\u003d\"mode\u003dactive-backup arp_interval\u003d1000 arp_ip_target\u003d10.0.100.1 arp_validate\u003d3\"\n\n1: lo: \u003cLOOPBACK,UP,LOWER_UP\u003e mtu 16436 qdisc noqueue\n    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n    inet 127.0.0.1/8 scope host lo\n    inet6 ::1/128 scope host\n       valid_lft forever preferred_lft forever\n2: eth1: \u003cBROADCAST,MULTICAST,SLAVE,UP,LOWER_UP\u003e mtu 1500 qdisc pfifo_fast master bond0 qlen 1000\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n3: eth0: \u003cBROADCAST,MULTICAST,SLAVE,UP,LOWER_UP\u003e mtu 1500 qdisc pfifo_fast master bond0 qlen 1000\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n8: bond0: \u003cBROADCAST,MULTICAST,MASTER,UP,LOWER_UP\u003e mtu 1500 qdisc noqueue\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n    inet6 fe80::213:21ff:febe:33e9/64 scope link\n       valid_lft forever preferred_lft forever\n9: bond0.100@bond0: \u003cBROADCAST,MULTICAST,MASTER,UP,LOWER_UP\u003e mtu 1500 qdisc noqueue\n    link/ether 00:13:21:be:33:e9 brd ff:ff:ff:ff:ff:ff\n    inet 10.0.100.2/24 brd 10.0.100.255 scope global bond0.100\n    inet6 fe80::213:21ff:febe:33e9/64 scope link\n       valid_lft forever preferred_lft forever\n\nEthernet Channel Bonding Driver: v3.6.0 (September 26, 2009)\n\nBonding Mode: fault-tolerance (active-backup)\nPrimary Slave: None\nCurrently Active Slave: eth1\nMII Status: up\nMII Polling Interval (ms): 0\nUp Delay (ms): 0\nDown Delay (ms): 0\nARP Polling Interval (ms): 1000\nARP IP target/s (n.n.n.n form): 10.0.100.1\n\nSlave Interface: eth1\nMII Status: up\nLink Failure Count: 1\nPermanent HW addr: 00:40:05:30:ff:30\n\nSlave Interface: eth0\nMII Status: up\nLink Failure Count: 0\nPermanent HW addr: 00:13:21:be:33:e9\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c99a3d2e04c63a795e13c26d6f2982731e1f1ae0",
      "tree": "2c0a8e24fe40fc6b4681fb5e3c3db18e0bbd6056",
      "parents": [
        "1f04493123763f5b8bc6d5de9aed0222345c052c"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed Dec 23 03:27:10 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 26 20:24:46 2009 -0800"
      },
      "message": "bond_3ad.c avoid possible null deref\n\nA few lines earlier we assume that best-\u003eslave could be either null or non-null so\nwe should check it here as well.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4aee5c808fc5bf6889c9012217841eb3fd91a6a",
      "tree": "28b2f17a9907685ab530b20d46bc9d50797ae692",
      "parents": [
        "231d52a7bec6d141883d81dbb5516bff4a07533b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Dec 13 20:06:07 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 13 20:06:07 2009 -0800"
      },
      "message": "drivers/net/bonding/: : use pr_fmt\n\nAdd #define pr_fmt(fmt) KBUILD_MODNAME \": \" fmt\nRemove DRV_NAME from pr_\u003clevel\u003es\nConsolidate long format strings\nRemove some extra tab indents\nRemove some unnecessary ()s from pr_\u003clevel\u003es arguments\nAlign pr_\u003clevel\u003e arguments\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "94e2bd688820aed72b4f8092f88c2ccf64e003de",
      "tree": "988de1817ec5ebe40dc6f2901eb86987876c517f",
      "parents": [
        "65cb76baa1058d17d51ce948b697cdbd5dc97421"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Fri Oct 16 15:20:49 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:48 2009 +0100"
      },
      "message": "tree-wide: fix some typos and punctuation in comments\n\nfix some typos and punctuation in comments\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "8e95a2026f3b43f7c3d676adaccd2de9532e8dcc",
      "tree": "3733318168cd512480b6db58c5c16d1c8847f0b7",
      "parents": [
        "3454f835837609d60b29a266e3bd9d701073b060"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Dec 03 07:58:21 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 03 13:18:01 2009 -0800"
      },
      "message": "drivers/net: Move \u0026\u0026 and || to end of previous line\n\nOnly files where David Miller is the primary git-signer.\nwireless, wimax, ixgbe, etc are not modified.\n\nCompile tested x86 allyesconfig only\nNot all files compiled (not x86 compatible)\n\nAdded a few \u003e 80 column lines, which I ignored.\nExisting checkpatch complaints ignored.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "15449745e5d181ae214ceaf0880350bb4e63512a",
      "tree": "ba5c67dda7bd17b91e7cef5d8905cf9eb793c6f4",
      "parents": [
        "e008b5fc8dc7f46d9904001c7a2155eb1e7d35ab"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Nov 29 15:46:04 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 01 16:15:53 2009 -0800"
      },
      "message": "net: Simplify the bond drivers pernet operations.\n\nTake advantage of the new pernet automatic storage management,\nand stop using compatibility network namespace functions.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3505d1a9fd65e2d3e00827857b6795d9d8983658",
      "tree": "941cfafdb57c427bb6b7ebf6354ee93b2a3693b5",
      "parents": [
        "dfef948ed2ba69cf041840b5e860d6b4e16fa0b1",
        "66b00a7c93ec782d118d2c03bd599cfd041e80a1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 22:19:03 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 22:19:03 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sfc/sfe4001.c\n\tdrivers/net/wireless/libertas/cmd.c\n\tdrivers/staging/Kconfig\n\tdrivers/staging/Makefile\n\tdrivers/staging/rtl8187se/Kconfig\n\tdrivers/staging/rtl8192e/Kconfig\n"
    },
    {
      "commit": "f99189b186f3922ede4fa33c02f6edc735b8c981",
      "tree": "e216447fc284d6ec98ac1550638ac3a79d71e084",
      "parents": [
        "615534bc490606685621d63a40c0670d0f049d86"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 17 10:42:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 18 05:03:25 2009 -0800"
      },
      "message": "netns: net_identifiers should be read_mostly\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2d6682db114cb53bc94991659478756302e6a600",
      "tree": "7854ccf1c9b0098fa84c444c07d88a360d662aa8",
      "parents": [
        "b93ab837a2d3eb394082c9eae4ee0a4f83060027"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Nov 13 13:13:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 15 22:21:34 2009 -0800"
      },
      "message": "bonding: fix 802.3ad standards compliance error\n\nThe language of 802.3ad 43.4.9 requires the \"recordPDU\" function\nto, in part, compare the Partner parameter values in a received LACPDU\nto the stored Actor values.  If those match, then the Partner\u0027s\nsynchronization state is set to true.\n\n\tThe current 802.3ad implementation is performing these steps out\nof order; first, the synchronization check is done, then the paramters are\nchecked to see if they match (the synch check being done against a match\ncheck of a prior LACPDU).  This causes delays in establishing aggregators\nin some circumstances.\n\n\tThis patch modifies the 802.3ad code to call __choose_matched,\nthe function that does the \"match\" comparisions, as the first step of\n__record_pdu, instead of immediately afterwards.  This new behavior is\nin compliance with the language of the standard.\n\n\tSome additional commentary relating to code vs. standard is also\nadded.\n\n\tReported by Martin Patterson \u003cmartin@gear6.com\u003e who also supplied\nthe logic of the fix and verified the patch.\n\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6639104bd826e0b1388c69a6b7564fffc636c8a8",
      "tree": "a96951c923ca5c045e3e581849b3a9373fddac3e",
      "parents": [
        "ec87fd3b4e111e8bc367d247a963e27e5b86df26"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Oct 29 23:58:54 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:22 2009 -0700"
      },
      "message": "bond: Get the rtnl_link_ops support correct\n\n- Don\u0027t call rtnl_link_unregister if rtnl_link_register fails\n- Set .priv_size so we aren\u0027t stomping on uninitialized memory\n  when we use netdev_priv, on bond devices created with\n  ip link add type bond.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec87fd3b4e111e8bc367d247a963e27e5b86df26",
      "tree": "8c33611b3e0afb37bcad232c2ad8d8f52d469634",
      "parents": [
        "88ead977109da926a03068e277869ea8fedd170d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Thu Oct 29 14:18:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:21 2009 -0700"
      },
      "message": "bond: Add support for multiple network namespaces\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88ead977109da926a03068e277869ea8fedd170d",
      "tree": "81f1ef8acbb6e6aa49c020e6c1d6e7ed5f018341",
      "parents": [
        "c67dfb299e05a132154b9bfaae4a83de478ffaa9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Thu Oct 29 14:18:25 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:21 2009 -0700"
      },
      "message": "bond: Implement a basic set of rtnl link ops\n\nThis implements a basic set of rtnl link ops and takes advantage of\nthe fact that rtnl_link_unregister kills all of the surviving\ndevices to all us to kill bond_free_all.  A module alias\nis added so ip link add can pull in the bonding module.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c67dfb299e05a132154b9bfaae4a83de478ffaa9",
      "tree": "c50365a663033432ac9d5af2f0e70cc578eec474",
      "parents": [
        "30c15ba9936a17d743f90eb3e2f6fa82acddc5f3"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Thu Oct 29 14:18:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:20 2009 -0700"
      },
      "message": "bond: Simplify bond device destruction\n\nManually inline the code from bond_deinit to bond_uninit.  bond_uninit\nis the only caller and it is short.\n\nMove the call of bond_release_all from the netdev notifier into\nbond_uninit.  The call site is effectively the same and performing\nthe call explicitly allows all the paths for destroying a\nbonding device to behave the same way.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30c15ba9936a17d743f90eb3e2f6fa82acddc5f3",
      "tree": "d9a9c6cf0df8ae3ab04111977a824c92ab634384",
      "parents": [
        "6151b3d435feeeae7487032fcd5c8c7f281ba05c"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Thu Oct 29 14:18:23 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:19 2009 -0700"
      },
      "message": "bond: Simplify bond_create.\n\nStop calling dev_get_by_name to see if the bond device already\nexists.  register_netdevice already does that.\n\nStop calling bond_deinit if register_netdevice fails as bond_uninit\nis guaranteed to be called if bond_init succeeds.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6151b3d435feeeae7487032fcd5c8c7f281ba05c",
      "tree": "0fa59fbfc8c7afb246870308dc742de931d926b3",
      "parents": [
        "0c509a6c9393b27a8c5a01acd4a72616206cfc24"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Thu Oct 29 14:18:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:41:19 2009 -0700"
      },
      "message": "bond: Simply bond sysfs group creation\n\nThis patch delegates the work of creating the sysfs groups\nto the netdev layer and ultimately to the device layer.  This\ncloses races between uevents.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0519d83d83ed485b5a1f9222ff69d7d6c9bb8a01",
      "tree": "2e336be8a4bd2e59bcd4b69b00feb77c6672a9cb",
      "parents": [
        "38bfd8f5bec496e8e0db8849e01c99a33479418a",
        "b5dd884e682cae6b8c037f9d11f3b623b4cf2011"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:28:59 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:28:59 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "49b2de8e6febfea5a8791b6476195903af83a35d",
      "tree": "c93f328623b9429615981d4b7502997fdd0f72b0",
      "parents": [
        "8633322c5fd5b2a986b279f88a7559d8409f7da3",
        "b5dd884e682cae6b8c037f9d11f3b623b4cf2011"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits)\n  net: Fix \u0027Re: PACKET_TX_RING: packet size is too long\u0027\n  netdev: usb: dm9601.c can drive a device not supported yet, add support for it\n  qlge: Fix firmware mailbox command timeout.\n  qlge: Fix EEH handling.\n  AF_RAW: Augment raw_send_hdrinc to expand skb to fit iphdr-\u003eihl (v2)\n  bonding: fix a race condition in calls to slave MII ioctls\n  virtio-net: fix data corruption with OOM\n  sfc: Set ip_summed correctly for page buffers passed to GRO\n  cnic: Fix L2CTX_STATUSB_NUM offset in context memory.\n  MAINTAINERS: rt2x00 list is moderated\n  airo: Reorder tests, check bounds before element\n  mac80211: fix for incorrect sequence number on hostapd injected frames\n  libertas spi: fix sparse errors\n  mac80211: trivial: fix spelling in mesh_hwmp\n  cfg80211: sme: deauthenticate on assoc failure\n  mac80211: keep auth state when assoc fails\n  mac80211: fix ibss joining\n  b43: add \u0027struct b43_wl\u0027 missing declaration\n  b43: Fix Bugzilla #14181 and the bug from the previous \u0027fix\u0027\n  rt2x00: Fix crypto in TX frame for rt2800usb\n  ...\n"
    },
    {
      "commit": "d9d5283228d0c752f199c901fff6e1405dc91bcb",
      "tree": "a21bf48e33cff976c50ef4f77dcc012cdcac4871",
      "parents": [
        "03f191bab77c0148e458dbbd0a37241be2a2faf9"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Wed Oct 28 22:23:54 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 28 22:23:54 2009 -0700"
      },
      "message": "bonding: fix a race condition in calls to slave MII ioctls\n\nIn mii monitor mode, bond_check_dev_link() calls the the ioctl\nhandler of slave devices. It stores the ndo_do_ioctl function\npointer to a static (!) ioctl variable and later uses it to call the\nhandler with the IOCTL macro.\n\nIf another thread executes bond_check_dev_link() at the same time\n(even with a different bond, which none of the locks prevent), a\nrace condition occurs. If the two racing slaves have different\ndrivers, this may result in one driver\u0027s ioctl handler being\ncalled with a pointer to a net_device controlled with a different\ndriver, resulting in unpredictable breakage.\n\nUnless I am overlooking something, the \"static\" must be a\ncopy\u0027n\u0027paste error (?).\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a361c83cb4d7c8fe013d82a2f124175a7f276f30",
      "tree": "685e6e1374bf8bca7bb742c025c13cedadfb537e",
      "parents": [
        "cfadf853f6cd9689f79a63ca960c6f9d6665314f"
      ],
      "author": {
        "name": "Jasper Spaans",
        "email": "spaans@fox-it.com",
        "time": "Fri Oct 23 04:09:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:05:13 2009 -0700"
      },
      "message": "bonding: Remove bond_dev from xmit_hash_policy call.\n\nNow that the bonding device is no longer used in determining the device to\nwhich to send packets, it can be dropped from the argument list of the various\nxmit_hash_policy calls.\n\nSigned-off-by: Jasper Spaans \u003cspaans@fox-it.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfadf853f6cd9689f79a63ca960c6f9d6665314f",
      "tree": "35418e342d9783f0974ea33ef03875aa21d2362a",
      "parents": [
        "05423b241311c9380b7280179295bac7794281b6",
        "f568a926a353d6816b3704d7367f34371df44ce7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:03:26 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 27 01:03:26 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sh_eth.c\n"
    },
    {
      "commit": "d3da68310a2cf934c2ea8a99a519d8b1ccca4c56",
      "tree": "d6c72be835a2633f5274293979cca4427c308fec",
      "parents": [
        "66ed1e5ec1d979e572554643063734a7664261bb"
      ],
      "author": {
        "name": "Jasper Spaans",
        "email": "spaans@fox-it.com",
        "time": "Fri Oct 23 04:08:46 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 24 07:02:28 2009 -0700"
      },
      "message": "bonding: Modify hash transmit policies to use the packet\u0027s source MAC address\n\nModify bonding hash transmit policies to use the psource MAC address of\nthe packet instead of the MAC address configured for the bonding device.\n\nThe old sitation conflicts with the documentation.\n\nSigned-off-by: Jasper Spaans \u003cspaans@fox-it.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "38fc0026da255aa328c3730a1c4d28b4e11e6a2b",
      "tree": "c8da3b33e6f62107ecbde43f33f724ae1cf5a7bb",
      "parents": [
        "c634263df5890daafe0ea470faee3305736bbc3d"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Tue Oct 13 00:45:06 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 00:45:06 2009 -0700"
      },
      "message": "bonding: change bond_create_proc_entry() to return void\n\nThe function bond_create_proc_entry is currently of type int.\n\nTwo versions of this function exist:\n\nThe one in the ifdef CONFIG_PROC_FS branch always return 0.\nThe one in the else branch (which is empty) return nothing.\n\nWhen CONFIG_PROC_FS is undef, this cause the following warning:\n\ndrivers/net/bonding/bond_main.c: In function `bond_create_proc_entry\u0027:\ndrivers/net/bonding/bond_main.c:3393: warning: control reaches end of\nnon-void function\n\nNo caller of this function use the returned value.\n\nSo change the returned type from int to void and remove the\nuseless return 0; .\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nReported-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d43c36dc6b357fa1806800f18aa30123c747a6d1",
      "tree": "339ce510073ecbe9b3592008f7dece7b277035ef",
      "parents": [
        "69585dd69e663a40729492c7b52eb82477a2027a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 07 17:09:06 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 11 11:20:58 2009 -0700"
      },
      "message": "headers: remove sched.h from interrupt.h\n\nAfter m68k\u0027s task_thread_info() doesn\u0027t refer to current,\nit\u0027s possible to remove sched.h from interrupt.h and not break m68k!\nMany thanks to Heiko Carstens for allowing this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "49b4ad92d1a5bb9909deb3216ffec6f0febc7b71",
      "tree": "0059b4df75efc6a8b1a44751912ed6a425d9ed4f",
      "parents": [
        "3c6aaa24613cbd56f853363e3ce00091a9d2eac8"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Wed Oct 07 14:11:00 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 14:11:00 2009 -0700"
      },
      "message": "bonding: remove useless assignment\n\nThe variable old_active is first set to bond-\u003ecurr_active_slave.\nThen, it is unconditionally set to new_active, without being used in between.\n\nThe first assignment, having no side effect, is useless.\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nReviewed-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c6aaa24613cbd56f853363e3ce00091a9d2eac8",
      "tree": "0fff9f99c2477c324b867308ae6401ce372157fe",
      "parents": [
        "b301e82cf8104cfddbe5452ebe625bab49597c64"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Wed Oct 07 14:10:36 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 14:10:36 2009 -0700"
      },
      "message": "bonding: fix a parameter name in error message\n\nWhen parsing module parameters, bond_check_params() erroneously use\n\u0027xor_mode\u0027 as the name of a module parameter in an error message.\n\nThe right name for this parameter is \u0027xmit_hash_policy\u0027.\n\nSigned-off-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a549952ad323d68daf5b50bf716db895479af84c",
      "tree": "c819e8c33701696115c3d60b12ca95a0cd792291",
      "parents": [
        "2d37a186cedc51502dbee71c16ae0fbd9114d62c"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri Sep 25 03:28:09 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 01:07:39 2009 -0700"
      },
      "message": "bonding: introduce primary_reselect option\n\nIn some cases there is not desirable to switch back to primary interface when\nit\u0027s link recovers and rather stay with currently active one. We need to avoid\npacketloss as much as we can in some cases. This is solved by introducing\nprimary_reselect option. Note that enslaved primary slave is set as current\nactive no matter what.\n\nPatch modified by Jay Vosburgh as follows: fixed bug in action\nafter change of option setting via sysfs, revised the documentation\nupdate, and bumped the bonding version number.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce501caf162a2b18c50b6915684217c3b9e16b46",
      "tree": "a373ef184d4dd1fa175617f1fdec7bc0f7eeef65",
      "parents": [
        "a98917acc73181668f2188ec617fea9ce3ac3944"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Fri Sep 18 02:13:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 01 14:34:29 2009 -0700"
      },
      "message": "bonding: set primary param via sysfs\n\nPrimary module parameter passed to bonding is pernament. That means if you\nrelease the primary slave and enslave it again, it becomes the primary slave\nagain. But if you set primary slave via sysfs, the primary slave is only set\nonce and it\u0027s not remembered in bond-\u003eparams structure. Therefore the setting is\nlost after releasing the primary slave. This simple one-liner fixes this.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd589a8f0a13f53a2dd580b1fe170633cf6b095f",
      "tree": "942c50188ca58041b0453189e710eafcfebaea57",
      "parents": [
        "4f37940d64a155c025968118849b596f6aaa8128"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Thu Jul 16 17:13:03 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:55 2009 +0200"
      },
      "message": "trivial: fix typo \"to to\" in multiple files\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b9f602533e2f5c32a09a3a75904e5373cb6e6377",
      "tree": "acf8e035263114738931ffcd37fa312a8dd34a10",
      "parents": [
        "c127bdf9f6c8a8aaa531321721b29ab15f250a72"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Mon Aug 31 11:09:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 16 17:04:58 2009 -0700"
      },
      "message": "bonding: make ab_arp select active slaves as other modes\n\nWhen I was implementing primary_passive option (formely named primary_lazy) I\u0027ve\nrun into troubles with ab_arp. This is the only mode which is not using\nbond_select_active_slave() function to select active slave and instead it\nselects it itself. This seems to be not the right behaviour and it would be\nbetter to do it in bond_select_active_slave() for all cases. This patch makes\nthis happen. Please review.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75c78500ddad74b229cd0691496b8549490496a2",
      "tree": "5249219d68627421e4717c4e8f03f8b4bbad2e92",
      "parents": [
        "481a8199142c050b72bff8a1956a49fd0a75bbe0"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Sep 15 02:37:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 15 02:37:40 2009 -0700"
      },
      "message": "bonding: remap muticast addresses without using dev_close() and dev_open()\n\nThis patch fixes commit e36b9d16c6a6d0f59803b3ef04ff3c22c3844c10. The approach\nthere is to call dev_close()/dev_open() whenever the device type is changed in\norder to remap the device IP multicast addresses to HW multicast addresses.\nThis approach suffers from 2 drawbacks:\n\n*. It assumes tha the device is UP when calling dev_close(), or otherwise\n   dev_close() has no affect. It is worth to mention that initscripts (Redhat)\n   and sysconfig (Suse) doesn\u0027t act the same in this matter. \n*. dev_close() has other side affects, like deleting entries from the routing\n   table, which might be unnecessary.\n\nThe fix here is to directly remap the IP multicast addresses to HW multicast\naddresses for a bonding device that changes its type, and nothing else.\n   \nReported-by:   Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: Moni Shoua \u003cmonis@voltaire.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "885a136c52a8871175477baf3903e1c38751b35a",
      "tree": "7df36a899371078e1600531d4c6e3870e188cd60",
      "parents": [
        "ac06713d55d450cbc9ef871b1b238409238f0fe0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 01 06:31:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:40:26 2009 -0700"
      },
      "message": "bonding: use compare_ether_addr_64bits() in ALB\n\nWe can speedup ether addresses compares using compare_ether_addr_64bits()\ninstead of memcmp(). We make sure all operands are at least 8 bytes long and\n16bits aligned (or better, long word aligned if possible)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReviewed-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "424efe9caf6047ffbcd6b383ff4d2347254aabf1",
      "tree": "d0ed516baa5b452ed8bc3a88fbd061f6e415bfb9",
      "parents": [
        "6518bbb803fe02b15a3211c8db2afdff0ac4f808"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 31 19:50:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:13:40 2009 -0700"
      },
      "message": "netdev: convert pseudo drivers to netdev_tx_t\n\nThese are all drivers that don\u0027t touch real hardware.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c9888532bb540cb692f51f1d34fe9344eed5a0d",
      "tree": "0db75832b80b10c1aca6f668dd20247b973eb786",
      "parents": [
        "f584130616dfae757b888b7ee472e7c824f59e6a"
      ],
      "author": {
        "name": "Petri Gynther",
        "email": "pgynther@google.com",
        "time": "Fri Aug 28 12:05:15 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 28 23:01:20 2009 -0700"
      },
      "message": "bonding: Have bond_check_dev_link examine netif_running\n\nbonding: Have bond_check_dev_link examine netif_running\n\n\tSome network devices do not call netif_carrier_off when they\nare set administratively down.  Have the bonding link check function\nalso inspect the netif_running state.  Ignore netif_running if the\nbond_check_dev_link function is called with \"reporting\" set, as in that\ncase it\u0027s inspecting the capabilities of the non-netif_carrier device\ndriver.\n\nSigned-off-by: Petri Gynther \u003cpgynther@google.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f584130616dfae757b888b7ee472e7c824f59e6a",
      "tree": "efe1382a091dfb6af18206472bf5472c32192e6a",
      "parents": [
        "89c76c62f191daa7ede3d1d0c510a5ccfbcae571"
      ],
      "author": {
        "name": "Nicolas de Pesloüan",
        "email": "nicolas.2p.debian@free.fr",
        "time": "Fri Aug 28 13:18:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 28 23:01:16 2009 -0700"
      },
      "message": "bonding: Fix useless test: int \u003e INT_MAX\n\nmax_bonds is of type int and cannot be greater than INT_MAX.\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: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89c76c62f191daa7ede3d1d0c510a5ccfbcae571",
      "tree": "2cabba3044f77c344acceae032aeeb6ebe44ab8a",
      "parents": [
        "278339a42a1bcef1fb448d275056d519307e6025"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Aug 28 12:05:13 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 28 23:01:15 2009 -0700"
      },
      "message": "bonding: use compare_ether_addr\n\nBonding can use compare_ether_addr() in bond_release.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "278339a42a1bcef1fb448d275056d519307e6025",
      "tree": "e8329248e49b1ec3afc97f9cf16a4c8685f32832",
      "parents": [
        "c06f51eab8e652abebb698b1ead4c5585f820ef9"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Aug 28 12:05:12 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 28 23:01:12 2009 -0700"
      },
      "message": "bonding: propogate vlan_features to bonding master\n\nPropogate the vlan_features of the slave devices to the bonding\nmaster device, using the same logic as for regular features.\n\n\tTested by Or Gerlitz \u003cogerlitz@voltaire.com\u003e, who also removed\nthe debug logic from the original test patch.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5e2a8fd8358d1b3a2c51c3248edee72e4194703",
      "tree": "5fcbbd0d82b370446dd2745296caa37b374ecf03",
      "parents": [
        "26ced1e4aa181c01379b0b7ef156a29c000d1f8c"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Aug 13 04:11:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 13 16:43:32 2009 -0700"
      },
      "message": "bonding: wipe out printk\u0027s\n\nI did not introduce new lines over 80 chars. I even eliminated some of\nthem.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da8120355e80ddaf534adb8ed910871d97512d56",
      "tree": "9958a6c33e29b5af5faccf6650e98729151618a2",
      "parents": [
        "c86ae82605ef92594a0de809a8c588ae955fed63",
        "7fefe6a88494b00b151b5ca7bb84daaa781bbca7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/orinoco/main.c\n"
    },
    {
      "commit": "e36b9d16c6a6d0f59803b3ef04ff3c22c3844c10",
      "tree": "e4fcf87123ac80923fe0f3c83070d74d32d450e5",
      "parents": [
        "37b76c697f4ac082e9923dfa8e8aecc8bc54a8e1"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@Voltaire.COM",
        "time": "Wed Jul 15 04:56:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 18:05:23 2009 -0700"
      },
      "message": "bonding: clean muticast addresses when device changes type\n\nBonding device forbids slave device of different types under the same\nmaster.\n\nHowever, it is possible for a bonding master to change type during its\nlifetime.  This can be either from ARPHRD_ETHER to ARPHRD_INFINIBAND\nor the other way arround.  The change of type requires device level\nmulticast address cleanup because device level multicast addresses\ndepend on the device type.\n\nThe patch adds a call to dev_close() before the bonding master changes\ntype and dev_open() just after that.\n\nIn the example below I enslaved an IPoIB device (ib0) under\nbond0. Since each bonding master starts as device of type ARPHRD_ETHER\nby default, a change of type occurs when ib0 is enslaved.\n\nThis is how /proc/net/dev_mcast looks like without the patch\n\n5    bond0           1     0     00ffffffff12601bffff000000000001ff96ca05\n5    bond0           1     0     01005e000116\n5    bond0           1     0     01005e7ffffd\n5    bond0           1     0     01005e000001\n5    bond0           1     0     333300000001\n6    ib0             1     0     00ffffffff12601bffff000000000001ff96ca05\n6    ib0             1     0     333300000001\n6    ib0             1     0     01005e000001\n6    ib0             1     0     01005e7ffffd\n6    ib0             1     0     01005e000116\n6    ib0             1     0     00ffffffff12401bffff00000000000000000001\n6    ib0             1     0     00ffffffff12601bffff00000000000000000001\n\nand this is how it looks like after the patch.\n\n5    bond0           1     0     00ffffffff12601bffff000000000001ff96ca05\n5    bond0           1     0     00ffffffff12601bffff00000000000000000001\n5    bond0           1     0     00ffffffff12401bffff0000000000000ffffffd\n5    bond0           1     0     00ffffffff12401bffff00000000000000000116\n5    bond0           1     0     00ffffffff12401bffff00000000000000000001\n6    ib0             1     0     00ffffffff12601bffff000000000001ff96ca05\n6    ib0             1     0     00ffffffff12401bffff00000000000000000116\n6    ib0             1     0     00ffffffff12401bffff0000000000000ffffffd\n6    ib0             2     0     00ffffffff12401bffff00000000000000000001\n6    ib0             2     0     00ffffffff12601bffff00000000000000000001\n\nSigned-off-by: Moni Shoua \u003cmonis@voltaire.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e321c4f72e2fb580a091317ba0fb2941f637ce1",
      "tree": "4088f80a6ea48205a5d19251d5ee4c8aa29f3ac6",
      "parents": [
        "440c1ce178d6a6743e02d136a55b2de3f6d62a20"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sat Jul 11 10:03:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 12 20:11:32 2009 -0700"
      },
      "message": "drivers/net/bonding: Adjust constant name\n\nAD_SHORT_TIMEOUT and AD_STATE_LACP_ACTIVITY have the same value, but\nAD_STATE_LACP_ACTIVITY better reflects the intended semantics.\n\n[ J adds: AD_STATE_LACP_ACTIVITY is a value defined by the standard, and\nshould be set here in accordance with 802.3ad 43.4.12; AD_SHORT_TIMEOUT\nis a constant specific to the Linux 802.3ad implementation that happens\nto have the same value ]\n\nThe semantic match that finds this problem is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@@\nstruct port_params p;\n@@\n* p.port_state |\u003d AD_SHORT_TIMEOUT\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec634fe328182a1a098585bfc7b69e5042bdb08d",
      "tree": "02883aaee743af10d78d6d8fe9181944b4dd4529",
      "parents": [
        "a73e76e23c20c05cb8c0b7ba8bc9daa04b05c80f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Jul 05 19:23:38 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 05 19:23:38 2009 -0700"
      },
      "message": "net: convert remaining non-symbolic return values in ndo_start_xmit() functions\n\nThis patch converts the remaining occurences of raw return values to their\nsymbolic counterparts in ndo_start_xmit() functions that were missed by the\nprevious automatic conversion.\n\nAdditionally code that assumed the symbolic value of NETDEV_TX_OK to be zero\nis changed to explicitly use NETDEV_TX_OK.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "181470fcf3f8ecc16625bc45a5f6f678e57bfb22",
      "tree": "903835cc78e6ff87f3db38508933676c48510bdd",
      "parents": [
        "5c5129b54f2f346c86cd23fea67e71b45f7f84ff"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:29:04 2009 -0700"
      },
      "message": "bonding: initialization rework\n\nNeed to rework how bonding devices are initialized to make it more\namenable to creating bonding devices via netlink.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c5129b54f2f346c86cd23fea67e71b45f7f84ff",
      "tree": "2917749b65942edababa110625ccbb9f7c3d3d06",
      "parents": [
        "373500db927706d1f60785aff40b9884f789b01a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:29:03 2009 -0700"
      },
      "message": "bonding: use is_zero_ether_addr\n\nRemove bogus non-portable possibly unaligned way of testing\nfor zero addres..\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "373500db927706d1f60785aff40b9884f789b01a",
      "tree": "2a9fd664e6ae30c77a63576045c4eb182aaa7033",
      "parents": [
        "6d7ab43ccce5fddeca945ba6b06ba32cda4e3355"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:29:01 2009 -0700"
      },
      "message": "bonding: network device names are case sensative\n\nThe bonding device acts unlike all other Linux network device functions\nin that it ignores case of device names. The developer must have come\nfrom windows!\n\nCleanup the management of names and use standard routines where possible.\nFlag places where bonding device still doesn\u0027t work right with network\nnamespaces.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d7ab43ccce5fddeca945ba6b06ba32cda4e3355",
      "tree": "7492faab7570a039535936d4822f0c69f2eee0be",
      "parents": [
        "3d632c3f28e69f0d6d44aa09c4df708d63a91a7c"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:29:00 2009 -0700"
      },
      "message": "bonding: elminate bad refcount code\n\nThe \"expected_refcount\" stuff in bonding sysfs module is a mistake.\nSysfs does proper refcounting, and it is okay to remove a bond device\nthat has some user process holding the file open.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d632c3f28e69f0d6d44aa09c4df708d63a91a7c",
      "tree": "8782d6b6e56a4c7f425331744584b778ca5a5255",
      "parents": [
        "9e71626c1c23ec69372c43c6fe66c1171032bf42"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:28:57 2009 -0700"
      },
      "message": "bonding: fix style issues\n\nResolve some of the complaints from checkpatch, and remove \"magic emacs format\"\ncomments, and useless MODULE_SUPPORTED_DEVICE(). But should not\nchange actual code.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9e71626c1c23ec69372c43c6fe66c1171032bf42",
      "tree": "664e2c6d342c210a6f041b97ed9a3d9c1bc58f06",
      "parents": [
        "7e0838404541d2758bee089632690aabd82f3d5d"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:47 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:28:56 2009 -0700"
      },
      "message": "bonding: fix destructor\n\nIt is not safe to use a network device destructor that is a function in\nthe module, since it can be called after module is unloaded if sysfs\nhandle is open.\n\nWhen eventually using netlink, the device cleanup code needs to be done\nvia uninit function.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e0838404541d2758bee089632690aabd82f3d5d",
      "tree": "08625e067250aab61a621cdae5aeb21f579bde3f",
      "parents": [
        "d93216051ae60995736518ca9ebb58a0e6ade212"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:46 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:28:54 2009 -0700"
      },
      "message": "bonding: remove bonding read/write semaphore\n\nThe whole read/write semaphore locking can be removed. It doesn\u0027t add any\nprotection that isn\u0027t already done by using the RTNL mutex properly.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d93216051ae60995736518ca9ebb58a0e6ade212",
      "tree": "0f2e6c6d4abef68b54fb58a6397376871a277f91",
      "parents": [
        "d2991f75354941a4cdf61ce7443d21804b978f89"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:45 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:28:52 2009 -0700"
      },
      "message": "bonding: initialize before registration\n\nAvoid a unnecessary carrier state transistion that happens when device\nis registered.\nLockdep works better if initialization is done before registration as well.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d2991f75354941a4cdf61ce7443d21804b978f89",
      "tree": "eb52cc7a67ba92c7f1eaa16dd77b6b46296126aa",
      "parents": [
        "9d794a0c1dbb9551d870683bca0744624db353ed"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 12 19:02:44 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 13 23:28:51 2009 -0700"
      },
      "message": "bonding: bond_create always called with default parameters\n\nbond_create() is always called with same parameters so move the argument\ndown.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "130aa61a77b8518f1ea618e1b7d214d60b405f10",
      "tree": "56231709cf0a5f1108fbdd0909a0b346a31a9b86",
      "parents": [
        "5ef12d98a19254ee5dc851bd83e214b43ec1f725"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Jun 11 05:46:04 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 11 05:46:04 2009 -0700"
      },
      "message": "bonding: fix multiple module load problem\n\nSome users still load bond module multiple times to create bonding\ndevices.  This accidentally was broken by a later patch about\nthe time sysfs was fixed.  According to Jay, it was broken\nby:\n   commit b8a9787eddb0e4665f31dd1d64584732b2b5d051\n   Author: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\n   Date:   Fri Jun 13 18:12:04 2008 -0700\n\n     bonding: Allow setting max_bonds to zero\n\nNote: sysfs and procfs still produce WARN() messages when this is done\nso the sysfs method is the recommended API.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ae63e808f508c38fe65e23a1480c85d5bd00ecbd",
      "tree": "6d99401d326d13c648b23932e91e8daaa3344430",
      "parents": [
        "f22a563b0a4c2a84b6ff8831306532b64c9c1747"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed May 27 05:42:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 29 22:08:31 2009 -0700"
      },
      "message": "bonding: use bond_is_lb() when it\u0027s appropriate\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93f154b594fe47e4a7e5358b309add449a046cd3",
      "tree": "479d9f2db25922a2312547c97e73d5a11b68bb1c",
      "parents": [
        "496a60cdcd5d0d884dddf6c3b4ea912923a70f13"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon May 18 22:19:19 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 22:19:19 2009 -0700"
      },
      "message": "net: release dst entry in dev_hard_start_xmit()\n\nOne point of contention in high network loads is the dst_release() performed\nwhen a transmited skb is freed. This is because NIC tx completion calls\ndev_kree_skb() long after original call to dev_queue_xmit(skb).\n\nCPU cache is cold and the atomic op in dst_release() stalls. On SMP, this is\nquite visible if one CPU is 100% handling softirqs for a network device,\nsince dst_clone() is done by other cpus, involving cache line ping pongs.\n\nIt seems right place to release dst is in dev_hard_start_xmit(), for most\ndevices but ones that are virtual, and some exceptions.\n\nDavid Miller suggested to define a new device flag, set in alloc_netdev_mq()\n(so that most devices set it at init time), and carefuly unset in devices\nwhich dont want a NULL skb-\u003edst in their ndo_start_xmit().\n\nList of devices that must clear this flag is :\n\n- loopback device, because it calls netif_rx() and quoting Patrick :\n    \"ip_route_input() doesn\u0027t accept loopback addresses, so loopback packets\n     already need to have a dst_entry attached.\"\n- appletalk/ipddp.c : needs skb-\u003edst in its xmit function\n\n- And all devices that call again dev_queue_xmit() from their xmit function\n(as some classifiers need skb-\u003edst) : bonding, vlan, macvlan, eql, ifb, hdlc_fr\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "496a60cdcd5d0d884dddf6c3b4ea912923a70f13",
      "tree": "dd7c3e4e61d4c4bead3c7bd3db17401431e6d87e",
      "parents": [
        "26574401fef6766f6c3ca25b5c13febe662d2a32"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed May 13 17:02:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 22:16:00 2009 -0700"
      },
      "message": "net: FIX bonding sysfs rtnl_lock deadlock\n\nSysfs files for a network device can not unconditionally take the\nrtnl_lock as the bonding sysfs files do.  If someone accesses those\nsysfs files while the network device is being unregistered with the\nrtnl_lock held we will deadlock.\n\nSo use trylock and restart_syscall to avoid this problem.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "bb803cfbecb03a0cf8dc7e1864f18dda6631af00"
}
