)]}'
{
  "log": [
    {
      "commit": "028940342a906db8da014a7603a0deddc2c323dd",
      "tree": "688dbc38a3e218f2493d311b1d70a67668837347",
      "parents": [
        "be3eed2e96340d3c7a4d1ea1d63e7bd6095d1e34",
        "0e93b4b304ae052ba1bc73f6d34a68556fe93429"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 16 22:17:37 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 16 22:17:37 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "b99215cdc6e191f5649687536d4fb0faa3d7f56e",
      "tree": "fa80307140d312a76ad987000eb2bcb37a04f634",
      "parents": [
        "cf00c55e3d30b242d6f6530e61a7bc828124f0a3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 13 15:45:13 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 13 15:45:13 2012 -0400"
      },
      "message": "bonding: Fix LACPDU rx_dropped commit.\n\nI applied the wrong version of Jiri\u0027s bonding fix in commit\n13a8e0c8cdb43982372bd6c65fb26839c8fd8ce9 (\"bonding: don\u0027t increase\nrx_dropped after processing LACPDUs\")\n\nI applied v3, which introduces warnings I asked him to fix,\ninstead of v4 which properly takes care of those issues.\n\nThis inter-diffs such that the warnings are now gone.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a6700db17980972199e61c06be535a79e1b0b4e6",
      "tree": "bd0f635fd96def6c13b3ad4bebbabf5d5e1fd011",
      "parents": [
        "baf523c9ba4a69e97b0b5a6fb0e0a9e43550a65b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed May 09 17:04:04 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 10 23:33:01 2012 -0400"
      },
      "message": "net, drivers/net: Convert compare_ether_addr_64bits to ether_addr_equal_64bits\n\nUse the new bool function ether_addr_equal_64bits to add\nsome clarity and reduce the likelihood for misuse of\ncompare_ether_addr_64bits for sorting.\n\nDone via cocci script:\n\n$ cat compare_ether_addr_64bits.cocci\n@@\nexpression a,b;\n@@\n-\t!compare_ether_addr_64bits(a, b)\n+\tether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\tcompare_ether_addr_64bits(a, b)\n+\t!ether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal_64bits(a, b) \u003d\u003d 0\n+\tether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal_64bits(a, b) !\u003d 0\n+\t!ether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal_64bits(a, b) \u003d\u003d 0\n+\t!ether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal_64bits(a, b) !\u003d 0\n+\tether_addr_equal_64bits(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!!ether_addr_equal_64bits(a, b)\n+\tether_addr_equal_64bits(a, b)\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e42e4747ea72943c21551d8a206b51a9893b1e0",
      "tree": "a92473c485911b51e1d960c9c8fa34dfc9be0a46",
      "parents": [
        "39f1d94d300a58eb3e9b851d077cada4e2fa9d46"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed May 09 17:17:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 10 23:33:01 2012 -0400"
      },
      "message": "drivers/net: Convert compare_ether_addr to ether_addr_equal\n\nUse the new bool function ether_addr_equal to add\nsome clarity and reduce the likelihood for misuse\nof compare_ether_addr for sorting.\n\nDone via cocci script:\n\n$ cat compare_ether_addr.cocci\n@@\nexpression a,b;\n@@\n-\t!compare_ether_addr(a, b)\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tcompare_ether_addr(a, b)\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) \u003d\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) !\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) \u003d\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) !\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!!ether_addr_equal(a, b)\n+\tether_addr_equal(a, b)\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13a8e0c8cdb43982372bd6c65fb26839c8fd8ce9",
      "tree": "824f5daec5b68663a7feaebb76ebbb2cfce5d4c0",
      "parents": [
        "38bf1953987c1735f3c9140fca762949a8cae507"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Wed May 09 01:01:40 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 10 23:30:01 2012 -0400"
      },
      "message": "bonding: don\u0027t increase rx_dropped after processing LACPDUs\n\nSince commit 3aba891d, bonding processes LACP frames (802.3ad\nmode) with bond_handle_frame(). Currently a copy of the skb is\nmade and the original is left to be processed by other\nrx_handlers and the rest of the network stack by returning\nRX_HANDLER_ANOTHER.  As there is no protocol handler for\nPKT_TYPE_LACPDU, the frame is dropped and dev-\u003erx_dropped\nincreased.\n\nFix this by making bond_handle_frame() return RX_HANDLER_CONSUMED\nif bonding has processed the LACP frame.\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13b95fb714d7b7996e8d423d907beea17ad5c380",
      "tree": "20d1487f7a109678fbabb41cb3d99322df978b55",
      "parents": [
        "4fbec4d86f7a1b4dbaddecda24da08b5473cd289"
      ],
      "author": {
        "name": "Rick Jones",
        "email": "rick.jones2@hp.com",
        "time": "Thu Apr 26 11:20:30 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 27 00:03:35 2012 -0400"
      },
      "message": "bonding: bond_update_speed_duplex() can return void since no callers check its return\n\nAs none of the callers of bond_update_speed_duplex (need to) check its\nreturn value, there is little point in it returning anything.\n\nSigned-off-by: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f31c7937c2548bfa73da5074808c29617a932e29",
      "tree": "97a9a4fbe102eb894e6dd1a15f65e87852d8ae09",
      "parents": [
        "bf1ac5ca6f0dede02635588704d216da474b4baa"
      ],
      "author": {
        "name": "Michal Kubeček",
        "email": "mkubecek@suse.cz",
        "time": "Tue Apr 17 02:02:06 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 15:25:02 2012 -0400"
      },
      "message": "bonding: start slaves with link down for ARP monitor\n\nInitialize slave device link state as down if ARP monitor is\nactive and net_carrier_ok() returns zero. Also shift initial\nvalue of its last_arp_tx so that it doesn\u0027t immediately cause\nfake detection of \"up\" state.\n\nWhen ARP monitoring is used, initializing the slave device with\nup link state can cause ARP monitor to detect link failure\nbefore the device is really up (with igb driver, this can take\nmore than two seconds).\n\nSigned-off-by: Michal Kubecek \u003cmkubecek@suse.cz\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Flavio Leitner \u003cfbl@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64d683c5825003ffb3b127057a165e6bfc26691e",
      "tree": "0c5090aadb4f666d915e12fde69c6a29e64f761c",
      "parents": [
        "be3839520411df2806b188fff053c775a884cfce"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 13 15:02:35 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 13 15:02:35 2012 -0400"
      },
      "message": "bonding: Fixup get_tx_queue() op second arg type.\n\nI missed this when fixing up the warning in the previous commit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "efacb309b50073a79ae604949a31509cd8b507ab",
      "tree": "98fa69062e8e0cbaecbe069f9fef18f1917e1e65",
      "parents": [
        "302846e3a692131a99b462078fe232ca2927b9d3"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Apr 10 18:34:43 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 13 13:31:00 2012 -0400"
      },
      "message": "rtnetlink \u0026 bonding: change args got get_tx_queues\n\nChange get_tx_queues, drop unsused arg/return value real_tx_queues,\nand use return by value (with error) rather than call by reference.\n\nProbably bonding should just change to LLTX and the whole get_tx_queues\nAPI could disappear!\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a4309746cd74734daa964acb02690c22b3c8911",
      "tree": "69a985f74ca76d5524ef2854bc6e3c18bc19a25a",
      "parents": [
        "bcf1b70ac6eb0ed8286c66e6bf37cb747cbaa04c"
      ],
      "author": {
        "name": "Veaceslav Falico",
        "email": "vfalico@redhat.com",
        "time": "Thu Apr 05 03:47:43 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 05 19:07:59 2012 -0400"
      },
      "message": "bonding: properly unset current_arp_slave on slave link up\n\nWhen a slave comes up, we\u0027re unsetting the current_arp_slave without\nremoving active flags from it, which can lead to situations where we have\nmore than one slave with active flags in active-backup mode.\n\nTo avoid this situation we must remove the active flags from a slave before\nremoving it as a current_arp_slave.\n\nSigned-off-by: Veaceslav Falico \u003cvfalico@redhat.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: Marcelo Ricardo Leitner \u003cmleitner@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "234bcf8a499ee206145c7007d12d9706a254f790",
      "tree": "2f42f68294a5b1c8093a631d81ed580fee0d0595",
      "parents": [
        "2af73d4b2afe826d23e83f3747f850eefbd867ff"
      ],
      "author": {
        "name": "Shlomo Pongratz",
        "email": "shlomop@mellanox.com",
        "time": "Tue Apr 03 22:56:20 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 04 18:11:12 2012 -0400"
      },
      "message": "net/bonding: correctly proxy slave neigh param setup ndo function\n\nThe current implemenation was buggy for slaves who use ndo_neigh_setup,\nsince the networking stack invokes the bonding device ndo entry (from\nneigh_params_alloc) before any devices are enslaved, and the bonding\ndriver can\u0027t further delegate the call at that point in time. As a\nresult when bonding IPoIB devices, the neigh_cleanup hasn\u0027t been called.\n\nFix that by deferring the actual call into the slave ndo_neigh_setup\nfrom the time the bonding neigh_setup is called.\n\nSigned-off-by: Shlomo Pongratz \u003cshlomop@mellanox.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2af73d4b2afe826d23e83f3747f850eefbd867ff",
      "tree": "ab503b426a45d2395f0ff80c6bd74e9f603feb8c",
      "parents": [
        "acdd5985364f8dc511a0762fab2e683f29d9d692"
      ],
      "author": {
        "name": "Shlomo Pongratz",
        "email": "shlomop@mellanox.com",
        "time": "Tue Apr 03 22:56:19 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 04 18:11:12 2012 -0400"
      },
      "message": "net/bonding: emit address change event also in bond_release\n\ncommit 7d26bb103c4 \"bonding: emit event when bonding changes MAC\" didn\u0027t\ntake care to emit the NETDEV_CHANGEADDR event in bond_release, where bonding\nactually changes the mac address (to all zeroes). As a result the neighbours\naren\u0027t deleted by the core networking code (which does so upon getting that\nevent).\n\nSigned-off-by: Shlomo Pongratz \u003cshlomop@mellanox.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed359a3b7b6ade0071f378c0cf4392d252f7d334",
      "tree": "8f81e03fcb44a7d36f53bc5a53d8eced7154bee2",
      "parents": [
        "95694129b43165911dc4e8a972f0d39ad98d86be",
        "2240eb4ae3dc4acff20d1a8947c441c451513e37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 17:53:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 17:53:39 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n\n 1) Provide device string properly for USB i2400m wimax devices, also\n    don\u0027t OOPS when providing firmware string.  From Phil Sutter.\n\n 2) Add support for sh_eth SH7734 chips, from Nobuhiro Iwamatsu.\n\n 3) Add another device ID to USB zaurus driver, from Guan Xin.\n\n 4) Loop index start in pool vector iterator is wrong causing MAC to not\n    get configured in bnx2x driver, fix from Dmitry Kravkov.\n\n 5) EQL driver assumes HZ\u003d100, fix from Eric Dumazet.\n\n 6) Now that skb_add_rx_frag() can specify the truesize increment\n    separately, do so in f_phonet and cdc_phonet, also from Eric\n    Dumazet.\n\n 7) virtio_net accidently uses net_ratelimit() not only on the kernel\n    warning but also the statistic bump, fix from Rick Jones.\n\n 8) ip_route_input_mc() uses fixed init_net namespace, oops, use\n    dev_net(dev) instead.  Fix from Benjamin LaHaise.\n\n 9) dev_forward_skb() needs to clear the incoming interface index of the\n    SKB so that it looks like a new incoming packet, also from Benjamin\n    LaHaise.\n\n10) iwlwifi mistakenly initializes a channel entry as 2GHZ instead of\n    5GHZ, fix from Stanislav Yakovlev.\n\n11) Missing kmalloc() return value checks in orinoco, from Santosh\n    Nayak.\n\n12) ath9k doesn\u0027t check for HT capabilities in the right way, it is\n    checking ht_supported instead of the ATH9K_HW_CAP_HT flag.  Fix from\n    Sujith Manoharan.\n\n13) Fix x86 BPF JIT emission of 16-bit immediate field of AND\n    instructions, from Feiran Zhuang.\n\n14) Avoid infinite loop in GARP code when registering sysfs entries.\n    From David Ward.\n\n15) rose protocol uses memcpy instead of memcmp in a device address\n    comparison, oops.  Fix from Daniel Borkmann.\n\n16) Fix build of lpc_eth due to dev_hw_addr_rancom() interface being\n    renamed to eth_hw_addr_random().  From Roland Stigge.\n\n17) Make ipv6 RTM_GETROUTE interpret RTA_IIF attribute the same way\n    that ipv4 does.  Fix from Shmulik Ladkani.\n\n18) via-rhine has an inverted bit test, causing suspend/resume\n    regressions.  Fix from Andreas Mohr.\n\n19) RIONET assumes 4K page size, fix from Akinobu Mita.\n\n20) Initialization of imask register in sky2 is buggy, because bits are\n    \"or\u0027d\" into an uninitialized local variable.  Fix from Lino\n    Sanfilippo.\n\n21) Fix FCOE checksum offload handling, from Yi Zou.\n\n22) Fix VLAN processing regression in e1000, from Jiri Pirko.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (52 commits)\n  sky2: dont overwrite settings for PHY Quick link\n  tg3: Fix 5717 serdes powerdown problem\n  net: usb: cdc_eem: fix mtu\n  net: sh_eth: fix endian check for architecture independent\n  usb/rtl8150 : Remove duplicated definitions\n  rionet: fix page allocation order of rionet_active\n  via-rhine: fix wait-bit inversion.\n  ipv6: Fix RTM_GETROUTE\u0027s interpretation of RTA_IIF to be consistent with ipv4\n  net: lpc_eth: Fix rename of dev_hw_addr_random\n  net/netfilter/nfnetlink_acct.c: use linux/atomic.h\n  rose_dev: fix memcpy-bug in rose_set_mac_address\n  Fix non TBI PHY access; a bad merge undid bug fix in a previous commit.\n  net/garp: avoid infinite loop if attribute already exists\n  x86 bpf_jit: fix a bug in emitting the 16-bit immediate operand of AND\n  bonding: emit event when bonding changes MAC\n  mac80211: fix oper channel timestamp updation\n  ath9k: Use HW HT capabilites properly\n  MAINTAINERS: adding maintainer for ipw2x00\n  net: orinoco: add error handling for failed kmalloc().\n  net/wireless: ipw2x00: fix a typo in wiphy struct initilization\n  ...\n"
    },
    {
      "commit": "7d26bb103c4162003bfdf1d63aaa32b548ad0e9a",
      "tree": "010e8c9e49ed2700ad2bd726cb5835392058b610",
      "parents": [
        "3b9785c6b0ff37ac4ef5085b38756283da84dceb"
      ],
      "author": {
        "name": "Weiping Pan",
        "email": "wpan@redhat.com",
        "time": "Tue Mar 27 19:18:24 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 29 18:11:57 2012 -0400"
      },
      "message": "bonding: emit event when bonding changes MAC\n\nWhen a bonding device is configured with fail_over_mac\u003dactive,\nwe expect to see the MAC address of the new active slave as the source MAC\naddress after failover. But we see that the source MAC address is the MAC\naddress of previous active slave.\n\nEmit NETDEV_CHANGEADDR event when bonding changes its MAC address, in order\nto let arp_netdev_event flush neighbour cache and route cache.\n\nHow to reproduce this bug ?\n\n                       -----------hostB----------------\nhostA ----- switch ---|-- eth0--bond0(192.168.100.2/24)|\n(192.168.100.1/24  \\--|-- eth1-/                       |\n                       --------------------------------\n\n1 on hostB,\nmodprobe bonding mode\u003d1 miimon\u003d500 fail_over_mac\u003dactive downdelay\u003d1000\nnum_grat_arp\u003d1\nifconfig bond0 192.168.100.2/24 up\nifenslave bond0 eth0\nifenslave bond0 eth1\n\nthen eth0 is the active slave, and MAC of bond0 is MAC of eth0.\n\n2 on hostA, ping 192.168.100.2\n\n3 on hostB,\ntcpdump -i bond0 -p icmp -XXX\nyou will see bond0 uses MAC of eth0 as source MAC in icmp reply.\n\n4 on hostB,\nifconfig eth0 down\ntcpdump -i bond0 -p icmp -XXX (just keep it running in step 3)\nyou will see first bond0 uses MAC of eth1 as source MAC in icmp\nreply, then it will use MAC of eth0 as source MAC.\n\nSigned-off-by: Weiping Pan \u003cwpan@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": "0195c00244dc2e9f522475868fa278c473ba7339",
      "tree": "f97ca98ae64ede2c33ad3de05ed7bbfa4f4495ed",
      "parents": [
        "f21ce8f8447c8be8847dadcfdbcc76b0d7365fa5",
        "141124c02059eee9dbc5c86ea797b1ca888e77f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "message": "Merge tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system\n\nPull \"Disintegrate and delete asm/system.h\" from David Howells:\n \"Here are a bunch of patches to disintegrate asm/system.h into a set of\n  separate bits to relieve the problem of circular inclusion\n  dependencies.\n\n  I\u0027ve built all the working defconfigs from all the arches that I can\n  and made sure that they don\u0027t break.\n\n  The reason for these patches is that I recently encountered a circular\n  dependency problem that came about when I produced some patches to\n  optimise get_order() by rewriting it to use ilog2().\n\n  This uses bitops - and on the SH arch asm/bitops.h drags in\n  asm-generic/get_order.h by a circuituous route involving asm/system.h.\n\n  The main difficulty seems to be asm/system.h.  It holds a number of\n  low level bits with no/few dependencies that are commonly used (eg.\n  memory barriers) and a number of bits with more dependencies that\n  aren\u0027t used in many places (eg.  switch_to()).\n\n  These patches break asm/system.h up into the following core pieces:\n\n    (1) asm/barrier.h\n\n        Move memory barriers here.  This already done for MIPS and Alpha.\n\n    (2) asm/switch_to.h\n\n        Move switch_to() and related stuff here.\n\n    (3) asm/exec.h\n\n        Move arch_align_stack() here.  Other process execution related bits\n        could perhaps go here from asm/processor.h.\n\n    (4) asm/cmpxchg.h\n\n        Move xchg() and cmpxchg() here as they\u0027re full word atomic ops and\n        frequently used by atomic_xchg() and atomic_cmpxchg().\n\n    (5) asm/bug.h\n\n        Move die() and related bits.\n\n    (6) asm/auxvec.h\n\n        Move AT_VECTOR_SIZE_ARCH here.\n\n  Other arch headers are created as needed on a per-arch basis.\"\n\nFixed up some conflicts from other header file cleanups and moving code\naround that has happened in the meantime, so David\u0027s testing is somewhat\nweakened by that.  We\u0027ll find out anything that got broken and fix it..\n\n* tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)\n  Delete all instances of asm/system.h\n  Remove all #inclusions of asm/system.h\n  Add #includes needed to permit the removal of asm/system.h\n  Move all declarations of free_initmem() to linux/mm.h\n  Disintegrate asm/system.h for OpenRISC\n  Split arch_align_stack() out from asm-generic/system.h\n  Split the switch_to() wrapper out of asm-generic/system.h\n  Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h\n  Create asm-generic/barrier.h\n  Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h\n  Disintegrate asm/system.h for Xtensa\n  Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]\n  Disintegrate asm/system.h for Tile\n  Disintegrate asm/system.h for Sparc\n  Disintegrate asm/system.h for SH\n  Disintegrate asm/system.h for Score\n  Disintegrate asm/system.h for S390\n  Disintegrate asm/system.h for PowerPC\n  Disintegrate asm/system.h for PA-RISC\n  Disintegrate asm/system.h for MN10300\n  ...\n"
    },
    {
      "commit": "9ffc93f203c18a70623f21950f1dd473c9ec48cd",
      "tree": "1eb3536ae183b0bfbf7f5152a6fe4f430ae881c2",
      "parents": [
        "96f951edb1f1bdbbc99b0cd458f9808bb83d58ae"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "message": "Remove all #inclusions of asm/system.h\n\nRemove all #inclusions of asm/system.h preparatory to splitting and killing\nit.  Performed with the following command:\n\nperl -p -i -e \u0027s!^#\\s*include\\s*\u003casm/system[.]h\u003e.*\\n!!\u0027 `grep -Irl \u0027^#\\s*include\\s*\u003casm/system[.]h\u003e\u0027 *`\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "eaddcd76903c28e84bb452a35835babb0800a2c4",
      "tree": "97e512e21955da69d434a34b4e073ba880ec7d3d",
      "parents": [
        "523f610e1be2a4afca605962e137064378883c5f"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Thu Mar 22 16:14:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 22:36:17 2012 -0400"
      },
      "message": "bonding: remove entries for master_ip and vlan_ip and query devices instead\n\nThe following patch aimed to resolve an issue where secondary, tertiary,\netc. addresses added to bond interfaces could overwrite the\nbond-\u003emaster_ip and vlan_ip values.\n\n        commit 917fbdb32f37e9a93b00bb12ee83532982982df3\n        Author: Henrik Saavedra Persson \u003chenrik.e.persson@ericsson.com\u003e\n        Date:   Wed Nov 23 23:37:15 2011 +0000\n\n            bonding: only use primary address for ARP\n\nThat patch was good because it prevented bonds using ARP monitoring from\nsending frames with an invalid source IP address.  Unfortunately, it\ndidn\u0027t always work as expected.\n\nWhen using an ioctl (like ifconfig does) to set the IP address and\nnetmask, 2 separate ioctls are actually called to set the IP and netmask\nif the mask chosen doesn\u0027t match the standard mask for that class of\naddress.  The first ioctl did not have a mask that matched the one in\nthe primary address and would still cause the device address to be\noverwritten.  The second ioctl that was called to set the mask would\nthen detect as secondary and ignored, but the damage was already done.\n\nThis was not an issue when using an application that used netlink\nsockets as the setting of IP and netmask came down at once.  The\ninconsistent behavior between those two interfaces was something that\nneeded to be resolved.\n\nWhile I was thinking about how I wanted to resolve this, Ralf Zeidler\ncame with a patch that resolved this on a RHEL kernel by keeping a full\nshadow of the entries in dev-\u003eifa_list for the bonding device and vlan\ndevices in the bonding driver.  I didn\u0027t like the duplication of the\nlist as I want to see the \u0027bonding\u0027 struct and code shrink rather than\ngrow, but liked the general idea.\n\nAs the Subject indicates this patch drops the master_ip and vlan_ip\nelements from the \u0027bonding\u0027 and \u0027vlan_entry\u0027 structs, respectively.\nThis can be done because a device\u0027s address-list is now traversed to\ndetermine the optimal source IP address for ARP requests and for checks\nto see if the bonding device has a particular IP address.  This code\ncould have all be contained inside the bonding driver, but it made more\nsense to me to EXPORT and call inet_confirm_addr since it did exactly\nwhat was needed.\n\nI tested this and a backported patch and everything works as expected.\nRalf also helped with verification of the backported patch.\n\nThanks to Ralf for all his help on this.\n\nv2: Whitespace and organizational changes based on suggestions from Jay\nVosburgh and Dave Miller.\n\nv3: Fixup incorrect usage of rcu_read_unlock based on Dave Miller\u0027s\nsuggestion.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Ralf Zeidler \u003cralf.zeidler@nsn.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c3ac4289a0e4d60cbd4787b4a91de4a0c785df1",
      "tree": "01a3a0806e24d869b2e0df5e8e8fb0aaeb91bd4e",
      "parents": [
        "ba568335b089e0a27829e3a6117a7e1bf957ad07"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Sat Mar 17 17:23:27 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 19 18:02:05 2012 -0400"
      },
      "message": "bonding: send igmp report for its master\n\nLiang Zheng(lzheng@redhat.com) found that in the following topo,\nbonding does not send igmp report when we trigger a fail-over of bonding.\n\neth0--\n      |-- bond0 -- br0\neth1--\n\nmodprobe bonding mode\u003d1 miimon\u003d100 resend_igmp\u003d10\nifconfig bond0 up\nifenslave bond0 eth0 eth1\n\nbrctl addbr br0\nifconfig br0 192.168.100.2/24 up\nbrctl addif br0 bond0\n\nAdd 192.168.100.2(br0) into a multicast group, like 224.10.10.10,\nthen trigger a fali-over in bonding.\nYou can see that parameter \"resend_igmp\" does not work.\n\nThe reason is that when we add br0 into a multicast group,\nit does not propagate multicast knowledge down to its ports.\n\nIf we choose to propagate multicast knowledge down to all ports for bridge,\nthen we have to track every change that is done to bridge, and keep a backup\nfor all ports. It is hard to track, I think.\n\nInstead I choose to modify bonding to send igmp report for its master.\n\nChangelog:\nV2: correct comments\nV3: move this check into bond_resend_igmp_join_requests()\nV4: only send igmp reports if bond is enslaved to a bridge\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9d6d2dbf45b038a94c63295203525101a9fbbb7",
      "tree": "409f12b4c7e83001f045c4c2e29418dde15a8118",
      "parents": [
        "1f0b6702b5d0c10b8a1637f05baf0d597c9c0cc1"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sun Feb 05 13:18:57 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 05 22:42:00 2012 -0500"
      },
      "message": "bonding: Fix misspelling of \"since\"\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e404decb0fb017be80552adee894b35307b6c7b4",
      "tree": "19b2324328eb1f8cef599f9f164dc9ca6e5699c9",
      "parents": [
        "5f3d9cb2962967d9d7e03abb4a7ca275a9a3fea5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jan 29 12:56:23 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 31 16:20:21 2012 -0500"
      },
      "message": "drivers/net: Remove unnecessary k.alloc/v.alloc OOM messages\n\nalloc failures use dump_stack so emitting an additional\nout-of-memory message is an unnecessary duplication.\n\nRemove the allocation failure messages.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b924551bed09f61b64f21bffe241afc5526b091a",
      "tree": "cafe1bd4b49cf92ef799c86f8d28c9eb02677c0b",
      "parents": [
        "2b53d07891630dead46d65c8f896955fd3ae0302"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Wed Jan 18 12:24:54 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 18 20:59:53 2012 -0500"
      },
      "message": "bonding: fix enslaving in alb mode when link down\n\nbond_alb_init_slave() is called from bond_enslave() and sets the slave\u0027s MAC\naddress. This is done differently for TLB and ALB modes.\nbond-\u003ealb_info.rlb_enabled is used to discriminate between the two modes but\nthis flag may be uninitialized if the slave is being enslaved prior to calling\nbond_open() -\u003e bond_alb_initialize() on the master.\n\nIt turns out all the callers of alb_set_slave_mac_addr() pass\nbond-\u003ealb_info.rlb_enabled as the hw parameter.\n\nThis patch cleans up the unnecessary parameter of alb_set_slave_mac_addr() and\nmakes the function decide based on the bonding mode instead, which fixes the\nabove problem.\n\nReported-by: Narendra K \u003cNarendra_K@Dell.com\u003e\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f515e6b77045b4b1f54617d9fbf4a22b95a58757",
      "tree": "d01dfbd06052f13c88aa6a93b69e9d33cc87c20c",
      "parents": [
        "d6c25beba35a76c002bff9235484d75a6f8e7e6b"
      ],
      "author": {
        "name": "Maxim Uvarov",
        "email": "maxim.uvarov@oracle.com",
        "time": "Mon Jan 09 12:01:37 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 11 12:52:26 2012 -0800"
      },
      "message": "bond_alb: don\u0027t disable softirq under bond_alb_xmit\n\nNo need to lock soft irqs under bond_alb_xmit()\nwhich already has softirq disabled.\n\nChanges:\n1. add non-bh/bh version to tlb_clear_slave()\n\n2. represent BH and non BH hash table locks\n_lock_rx_hashtbl_bh/_unlock_rx_hashtbl_bh\n_lock_rx_hashtbl/_unlock_rx_hashtbl\n_lock_tx_hashtbl_bh/_unlock_tx_hashtbl_bh\n_lock_tx_hashtbl/_unlock_tx_hashtbl\n\nSigned-off-by: Maxim Uvarov \u003cmaxim.uvarov@oracle.com\u003e\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7affca3537d74365128e477b40c529d6f2fe86c8",
      "tree": "20be92bd240029182fc89c2c4f25401b7715dcae",
      "parents": [
        "356b95424cfb456e14a59eaa579422ce014c424b",
        "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (73 commits)\n  arm: fix up some samsung merge sysdev conversion problems\n  firmware: Fix an oops on reading fw_priv-\u003efw in sysfs loading file\n  Drivers:hv: Fix a bug in vmbus_driver_unregister()\n  driver core: remove __must_check from device_create_file\n  debugfs: add missing #ifdef HAS_IOMEM\n  arm: time.h: remove device.h #include\n  driver-core: remove sysdev.h usage.\n  clockevents: remove sysdev.h\n  arm: convert sysdev_class to a regular subsystem\n  arm: leds: convert sysdev_class to a regular subsystem\n  kobject: remove kset_find_obj_hinted()\n  m86k: gpio - convert sysdev_class to a regular subsystem\n  mips: txx9_sram - convert sysdev_class to a regular subsystem\n  mips: 7segled - convert sysdev_class to a regular subsystem\n  sh: dma - convert sysdev_class to a regular subsystem\n  sh: intc - convert sysdev_class to a regular subsystem\n  power: suspend - convert sysdev_class to a regular subsystem\n  power: qe_ic - convert sysdev_class to a regular subsystem\n  power: cmm - convert sysdev_class to a regular subsystem\n  s390: time - convert sysdev_class to a regular subsystem\n  ...\n\nFix up conflicts with \u0027struct sysdev\u0027 removal from various platform\ndrivers that got changed:\n - arch/arm/mach-exynos/cpu.c\n - arch/arm/mach-exynos/irq-eint.c\n - arch/arm/mach-s3c64xx/common.c\n - arch/arm/mach-s3c64xx/cpu.c\n - arch/arm/mach-s5p64x0/cpu.c\n - arch/arm/mach-s5pv210/common.c\n - arch/arm/plat-samsung/include/plat/cpu.h\n - arch/powerpc/kernel/sysfs.c\nand fix up cpu_is_hotpluggable() as per Greg in include/linux/cpu.h\n"
    },
    {
      "commit": "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df",
      "tree": "d851c923f85566572112d4c0f884cff388a3cc05",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610",
        "ea04018e6bc5ddb2f0466c0e5b986bd4901b7e8e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 into Linux 3.2\n\nThis resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,\nand it fixes the build error in the arch/x86/kernel/microcode_core.c\nfile, that the merge did not catch.\n\nThe microcode_core.c patch was provided by Stephen Rothwell\n\u003csfr@canb.auug.org.au\u003e who was invaluable in the merge issues involved\nwith the large sysdev removal process in the driver-core tree.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f7d9821a6a9c83450ac35e76d3709e32fd38b76f",
      "tree": "d9cfb0a3ddba80a7d3fd6ed8064144d90f5ba8af",
      "parents": [
        "f872b237c1750221932e715da2552225afe4a95c"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Dec 31 13:26:46 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 12:49:16 2012 -0500"
      },
      "message": "bonding: fix error handling if slave is busy (v2)\n\nIf slave device already has a receive handler registered, then the\nerror unwind of bonding device enslave function is broken.\n\nThe following will leave a pointer to freed memory in the slave\ndevice list, causing a later kernel panic.\n# modprobe dummy\n# ip li add dummy0-1 link dummy0 type macvlan\n# modprobe bonding\n# echo +dummy0 \u003e/sys/class/net/bond0/bonding/slaves\n\nThe fix is to detach the slave (which removes it from the list)\nin the unwind path.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nReviewed-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "edbaa603eb801655e80808a9cf3d3b622e8ac66b",
      "tree": "a0a0091fc1d17fea32d6d21e3ce13d228fba6325",
      "parents": [
        "7239f65cf364180cdb100a4ed211b2a9f9a72119"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 21 16:26:03 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 16:26:03 2011 -0800"
      },
      "message": "driver-core: remove sysdev.h usage.\n\nThe sysdev.h file should not be needed by any in-kernel code, so remove\nthe .h file from these random files that seem to still want to include\nit.\n\nThe sysdev code will be going away soon, so this include needs to be\nremoved no matter what.\n\nCc: Jiandong Zheng \u003cjdzheng@broadcom.com\u003e\nCc: Scott Branden \u003csbranden@broadcom.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Kukjin Kim \u003ckgene.kim@samsung.com\u003e\nCc: David Brown \u003cdavidb@codeaurora.org\u003e\nCc: Daniel Walker \u003cdwalker@fifo99.com\u003e\nCc: Bryan Huntsman \u003cbryanh@codeaurora.org\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hans-Christian Egtvedt \u003cegtvedt@samfundet.no\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: \"Venkatesh Pallipadi\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\n"
    },
    {
      "commit": "87002b03baabd2b8f6281ab6411ed88d24958de1",
      "tree": "0e5730c0d1ba887488ba420d4ea89a230f272c51",
      "parents": [
        "8e586137e6b63af1e881b328466ab5ffbe562510"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Dec 08 04:11:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:42 2011 -0500"
      },
      "message": "net: introduce vlan_vid_[add/del] and use them instead of direct [add/kill]_vid ndo calls\n\nThis patch adds wrapper for ndo_vlan_rx_add_vid/ndo_vlan_rx_kill_vid\nfunctions. Check for NETIF_F_HW_VLAN_FILTER feature is done in this\nwrapper.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e586137e6b63af1e881b328466ab5ffbe562510",
      "tree": "da0767e1b1361aa24bd32f485453079e31854c0c",
      "parents": [
        "7da82c06ded105bf601bfa0eafc92e84eb0ceeed"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Dec 08 19:52:37 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:37 2011 -0500"
      },
      "message": "net: make vlan ndo_vlan_rx_[add/kill]_vid return error value\n\nLet caller know the result of adding/removing vlan id to/from vlan\nfilter.\n\nIn some drivers I make those functions to just return 0. But in those\nwhere there is able to see if hw setup went correctly, return value is\nset appropriately.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3613118eb30a589d971e4eccbbb2a1314f5dfd4",
      "tree": "868c1ee59e1b5c19a4f2e43716400d0001a994e5",
      "parents": [
        "7505afe28c16a8d386624930a018d0052c75d687",
        "5983fe2b29df5885880d7fa3b91aca306c7564ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "917fbdb32f37e9a93b00bb12ee83532982982df3",
      "tree": "6be75401515d2bbb7dde186a06be521ffef9ecf7",
      "parents": [
        "218fa90f072e4aeff9003d57e390857f4f35513e"
      ],
      "author": {
        "name": "Henrik Saavedra Persson",
        "email": "henrik.e.persson@ericsson.com",
        "time": "Wed Nov 23 23:37:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@drr.davemloft.net",
        "time": "Wed Nov 30 22:59:11 2011 -0500"
      },
      "message": "bonding: only use primary address for ARP\n\nOnly use the primary address of the bond device\nfor master_ip. This will prevent changing the ARP source\naddress in Active-Backup mode whenever a secondry address\nis added to the bond device.\n\nSigned-off-by: Henrik Saavedra Persson \u003chenrik.e.persson@ericsson.com\u003e\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@drr.davemloft.net\u003e\n"
    },
    {
      "commit": "4f5762ec9135d24887844549de3c83e0290a3567",
      "tree": "30f7273649576a5e251ab913e7a6d72c8a13564d",
      "parents": [
        "d11ead75672d655652dbfc1b1a2c359e5b65536d"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Nov 24 08:16:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:50:05 2011 -0500"
      },
      "message": "bonding: Remove obsolete source file \u0027bond_ipv6.c\u0027\n\nThis file is now unused and should have been removed by commit\n7c89943236750537d26421d9bbb6f6575e2d1e1b (\"bonding, ipv4, ipv6, vlan:\nHandle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS\").\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e3fd7a06dc20b2d8ec6892233ad2012968fe7b6",
      "tree": "da3fbec7672ac6b967dfa31cec6c88f468a57fa2",
      "parents": [
        "40ba84993d66469d336099c5af74c3da5b73e28d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Nov 21 03:39:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 22 16:43:32 2011 -0500"
      },
      "message": "net: remove ipv6_addr_copy()\n\nC assignment can handle struct in6_addr copying.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "efd0bf97deeddd9ba53daabfc470a1399c6b0b2d",
      "tree": "eec56da5fbc796bac7c67f1990a18f5e0a304059",
      "parents": [
        "f8a15af093b19b86d56933c8757cee298d0f32a8",
        "6fe4c6d466e95d31164f14b1ac4aefb51f0f4f82"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 21 13:50:33 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 21 13:50:33 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nThe forcedeth changes had a conflict with the conversion over\nto atomic u64 statistics in net-next.\n\nThe libertas cfg.c code had a conflict with the bss reference\ncounting fix by John Linville in net-next.\n\nConflicts:\n\tdrivers/net/ethernet/nvidia/forcedeth.c\n\tdrivers/net/wireless/libertas/cfg.c\n"
    },
    {
      "commit": "4a8bb7e27fbb68da888b55f26defd2855225b2d5",
      "tree": "3eed4c74cbfceea961a8c18c3de1848b60be2437",
      "parents": [
        "596a1b746c56f974240c8df6d8e3a026c54266ff"
      ],
      "author": {
        "name": "Veaceslav Falico",
        "email": "vfalico@redhat.com",
        "time": "Tue Nov 15 06:44:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 17 19:31:54 2011 -0500"
      },
      "message": "bonding: Don\u0027t allow mode change via sysfs with slaves present\n\nWhen changing mode via bonding\u0027s sysfs, the slaves are not initialized\ncorrectly. Forbid to change modes with slaves present to ensure that every\nslave is initialized correctly via bond_enslave().\n\nSigned-off-by: Veaceslav Falico \u003cvfalico@redhat.com\u003e\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nAcked-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "34324dc2bf27c1773045fea63cb11f7e2a6ad2b9",
      "tree": "47cd1f4ea5590c405dc60aee70b49fb14f56859b",
      "parents": [
        "a861a8b233e9024303fb8e73e465e81ad7119d5a"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Nov 15 15:29:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 17:43:12 2011 -0500"
      },
      "message": "net: remove NETIF_F_NO_CSUM feature bit\n\nOnly distinct use is checking if NETIF_F_NOCACHE_COPY should be\nenabled by default. The check heuristics is altered a bit here,\nso it hits other people than before. The default shouldn\u0027t be\ntrusted for performance-critical cases anyway.\n\nFor all other uses NETIF_F_NO_CSUM is equivalent to NETIF_F_HW_CSUM.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c8f44affb7244f2ac3e703cab13d55ede27621bb",
      "tree": "62e7aea2916a8d7cab825fe500670c5113854c0f",
      "parents": [
        "a59e2ecb859f2ab03bb2e230709f8039472ad2c3"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Nov 15 15:29:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 17:43:10 2011 -0500"
      },
      "message": "net: introduce and use netdev_features_t for device features sets\n\nv2:\tadd couple missing conversions in drivers\n\tsplit unexporting netdev_fix_features()\n\timplemented %pNF\n\tconvert sock::sk_route_(no?)caps\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "94956eed14b4b16d401c8ad36d68df0608f968cb",
      "tree": "60e4e1a3c2c44e8f6616db78cd6b22737b2a1f37",
      "parents": [
        "50e696308c3fb18a4a0dae7b3a4d47469149c919",
        "e45a618753d5a8bc9086382f73bbc2d6a3399250"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 07 10:55:33 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 07 10:55:33 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (47 commits)\n  forcedeth: fix a few sparse warnings (variable shadowing)\n  forcedeth: Improve stats counters\n  forcedeth: remove unneeded stats updates\n  forcedeth: Acknowledge only interrupts that are being processed\n  forcedeth: fix race when unloading module\n  MAINTAINERS/rds: update maintainer\n  wanrouter: Remove kernel_lock annotations\n  usbnet: fix oops in usbnet_start_xmit\n  ixgbe: Fix compile for kernel without CONFIG_PCI_IOV defined\n  etherh: Add MAINTAINERS entry for etherh\n  bonding: comparing a u8 with -1 is always false\n  sky2: fix regression on Yukon Optima\n  netlink: clarify attribute length check documentation\n  netlink: validate NLA_MSECS length\n  i825xx:xscale:8390:freescale: Fix Kconfig dependancies\n  macvlan: receive multicast with local address\n  tg3: Update version to 3.121\n  tg3: Eliminate timer race with reset_task\n  tg3: Schedule at most one tg3_reset_task run\n  tg3: Obtain PCI function number from device\n  ...\n"
    },
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "589665f5a6008dbce1d0af2cb93e94a80bf78151",
      "tree": "4f4ec1949dd233a8474c2cb477da3637166b6e75",
      "parents": [
        "27d240fdae2808d727ad9ce48ec029731a457524"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Fri Nov 04 08:21:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 04 18:37:23 2011 -0400"
      },
      "message": "bonding: comparing a u8 with -1 is always false\n\nslave-\u003eduplex is a u8 type so the in bond_info_show_slave() when we\ncheck \"if (slave-\u003eduplex \u003d\u003d -1)\", it\u0027s always false.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "98f41f694f46085fda475cdee8cc0b6d2c5e6f1f",
      "tree": "aabd6b698ba6319c95eabe1a68f37207e94b51ec",
      "parents": [
        "deede2fabe24e00bd7e246eb81cd5767dc6fcfc7"
      ],
      "author": {
        "name": "Weiping Pan",
        "email": "wpan@redhat.com",
        "time": "Mon Oct 31 17:20:48 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 01 17:52:49 2011 -0400"
      },
      "message": "bonding:update speed/duplex for NETDEV_CHANGE\n\nZheng Liang(lzheng@redhat.com) found a bug that if we config bonding with\narp monitor, sometimes bonding driver cannot get the speed and duplex from\nits slaves, it will assume them to be 100Mb/sec and Full, please see\n/proc/net/bonding/bond0.\nBut there is no such problem when uses miimon.\n\n(Take igb for example)\nI find that the reason is that after dev_open() in bond_enslave(),\nbond_update_speed_duplex() will call igb_get_settings()\n, but in that function,\nit runs ethtool_cmd_speed_set(ecmd, -1); ecmd-\u003eduplex \u003d -1;\nbecause igb get an error value of status.\nSo even dev_open() is called, but the device is not really ready to get its\nsettings.\n\nMaybe it is safe for us to call igb_get_settings() only after\nthis message shows up, that is \"igb: p4p1 NIC Link is Up 1000 Mbps Full Duplex,\nFlow Control: RX\".\n\nSo I prefer to update the speed and duplex for a slave when reseices\nNETDEV_CHANGE/NETDEV_UP event.\n\nChangelog\nV2:\n1 remove the \"fake 100/Full\" logic in bond_update_speed_duplex(),\n  set speed and duplex to -1 when it gets error value of speed and duplex.\n2 delete the warning in bond_enslave() if bond_update_speed_duplex() returns\n  error.\n3 make bond_info_show_slave() handle bad values of speed and duplex.\n\nSigned-off-by: Weiping Pan \u003cwpan@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee40fa0656a730491765545ff7550f3c1ceb0fbc",
      "tree": "fd18764b7a60ccc1ca54b15a7611414d8974efbe",
      "parents": [
        "9d9779e723a5d23b94abbe5bb7d1197921f6f3dd"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri May 27 16:14:23 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:31:08 2011 -0400"
      },
      "message": "drivers/net: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE\n\nThese were getting the macros from an implicit module.h\ninclude via device.h, but we are planning to clean that up.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n\ndrivers/net: Add export.h to wireless/brcm80211/brcmfmac/bcmsdh.c\n\nThis relatively recently added file uses EXPORT_SYMBOL and hence\nneeds export.h included so that it is compatible with the module.h\nsplit up work.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "e6d265e8504ab4a3368b8645d318b344ee88b280",
      "tree": "6fd2bc16819bae491e56be2658fc3298b7efa92c",
      "parents": [
        "10ee0faed92c8af4baebd633372136a6608a41ea"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "fubar@us.ibm.com",
        "time": "Fri Oct 28 15:42:50 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 30 03:13:14 2011 -0400"
      },
      "message": "bonding: eliminate bond_close race conditions\n\nThis patch resolves two sets of race conditions.\n\n\tMitsuo Hayasaka \u003cmitsuo.hayasaka.hu@hitachi.com\u003e reported the\nfirst, as follows:\n\nThe bond_close() calls cancel_delayed_work() to cancel delayed works.\nIt, however, cannot cancel works that were already queued in workqueue.\nThe bond_open() initializes work-\u003edata, and proccess_one_work() refers\nget_work_cwq(work)-\u003ewq-\u003eflags. The get_work_cwq() returns NULL when\nwork-\u003edata has been initialized. Thus, a panic occurs.\n\n\tHe included a patch that converted the cancel_delayed_work calls\nin bond_close to flush_delayed_work_sync, which eliminated the above\nproblem.\n\n\tHis patch is incorporated, at least in principle, into this\npatch.  In this patch, we use cancel_delayed_work_sync in place of\nflush_delayed_work_sync, and also convert bond_uninit in addition to\nbond_close.\n\n\tThis conversion to _sync, however, opens new races between\nbond_close and three periodically executing workqueue functions:\nbond_mii_monitor, bond_alb_monitor and bond_activebackup_arp_mon.\n\n\tThe race occurs because bond_close and bond_uninit are always\ncalled with RTNL held, and these workqueue functions may acquire RTNL to\nperform failover-related activities.  If bond_close or bond_uninit is\nwaiting in cancel_delayed_work_sync, deadlock occurs.\n\n\tThese deadlocks are resolved by having the workqueue functions\nacquire RTNL conditionally.  If the rtnl_trylock() fails, the functions\nreschedule and return immediately.  For the cases that are attempting to\nperform link failover, a delay of 1 is used; for the other cases, the\nnormal interval is used (as those activities are not as time critical).\n\n\tAdditionally, the bond_mii_monitor function now stores the delay\nin a variable (mimicing the structure of activebackup_arp_mon).\n\n\tLastly, all of the above renders the kill_timers sentinel moot,\nand therefore it has been removed.\n\nTested-by: Mitsuo Hayasaka \u003cmitsuo.hayasaka.hu@hitachi.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59fdaca9a4497ada47328d7b4b406b98a6f1c1a6",
      "tree": "f441fce4e551e8715cca1710563648b4c752fc17",
      "parents": [
        "b0691c8ee7c28a72748ff32e91b165ec12ae4de6"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Mon Oct 24 19:04:16 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 25 19:22:23 2011 -0400"
      },
      "message": "net: make bonding slaves honour master\u0027s skb-\u003epriority\n\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nAcked-by: Flavio Leitner \u003cfbl@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": "1805b2f04855f07afe3a71d620a68f483b0ed74f",
      "tree": "b823b90f37f5404fcaef70f785c70112ca74a329",
      "parents": [
        "78d81d15b74246c7cedf84894434890b33da3907",
        "f42af6c486aa5ca6ee62800cb45c5b252020509d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 18:18:09 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 18:18:09 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ra.kernel.org:/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "01718e36df750670d0f840932a4d166522ead6c3",
      "tree": "aba9a133a81ac971d670d88eb6c42cb346b08e81",
      "parents": [
        "b5d9c9c281395f0967c8d93f42e8b0b8175b5180"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Oct 21 22:43:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 22 05:08:44 2011 -0400"
      },
      "message": "bonding: Add a forgetten sysfs_attr_init on class_attr_bonding_masters\n\nWhen I made class_attr_bonding_matters per network namespace and dynamically\nallocated I overlooked the need for calling sysfs_attr_init.  Oops.\n\nThis fixes the following lockdep splat:\n\n[    5.749651] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)\n[    5.749655] bonding: MII link monitoring set to 100 ms\n[    5.749676] BUG: key f49a831c not in .data!\n[    5.749677] ------------[ cut here ]------------\n[    5.749752] WARNING: at kernel/lockdep.c:2897 lockdep_init_map+0x1c3/0x460()\n[    5.749809] Hardware name: ProLiant BL460c G1\n[    5.749862] Modules linked in: bonding(+)\n[    5.749978] Pid: 3177, comm: modprobe Not tainted 3.1.0-rc9-02177-gf2d1a4e-dirty #1157\n[    5.750066] Call Trace:\n[    5.750120]  [\u003cc1352c2f\u003e] ? printk+0x18/0x21\n[    5.750176]  [\u003cc103112d\u003e] warn_slowpath_common+0x6d/0xa0\n[    5.750231]  [\u003cc1060133\u003e] ? lockdep_init_map+0x1c3/0x460\n[    5.750287]  [\u003cc1060133\u003e] ? lockdep_init_map+0x1c3/0x460\n[    5.750342]  [\u003cc103117d\u003e] warn_slowpath_null+0x1d/0x20\n[    5.750398]  [\u003cc1060133\u003e] lockdep_init_map+0x1c3/0x460\n[    5.750453]  [\u003cc1355ddd\u003e] ? _raw_spin_unlock+0x1d/0x20\n[    5.750510]  [\u003cc11255c8\u003e] ? sysfs_new_dirent+0x68/0x110\n[    5.750565]  [\u003cc1124d4b\u003e] sysfs_add_file_mode+0x8b/0xe0\n[    5.750621]  [\u003cc1124db3\u003e] sysfs_add_file+0x13/0x20\n[    5.750675]  [\u003cc1124e7c\u003e] sysfs_create_file+0x1c/0x20\n[    5.750737]  [\u003cc1208f09\u003e] class_create_file+0x19/0x20\n[    5.750794]  [\u003cc12c186f\u003e] netdev_class_create_file+0xf/0x20\n[    5.750853]  [\u003cf85deaf4\u003e] bond_create_sysfs+0x44/0x90 [bonding]\n[    5.750911]  [\u003cf8410947\u003e] ? bond_create_proc_dir+0x1e/0x3e [bonding]\n[    5.750970]  [\u003cf841007e\u003e] bond_net_init+0x7e/0x87 [bonding]\n[    5.751026]  [\u003cf8410000\u003e] ? 0xf840ffff\n[    5.751080]  [\u003cc12abc7a\u003e] ops_init.clone.4+0xba/0x100\n[    5.751135]  [\u003cc12abdb2\u003e] ? register_pernet_subsys+0x12/0x30\n[    5.751191]  [\u003cc12abd03\u003e] register_pernet_operations.clone.3+0x43/0x80\n[    5.751249]  [\u003cc12abdb9\u003e] register_pernet_subsys+0x19/0x30\n[    5.751306]  [\u003cf84108b9\u003e] bonding_init+0x832/0x8a2 [bonding]\n[    5.751363]  [\u003cc10011f0\u003e] do_one_initcall+0x30/0x160\n[    5.751420]  [\u003cf8410087\u003e] ? bond_net_init+0x87/0x87 [bonding]\n[    5.751477]  [\u003cc106d5cf\u003e] sys_init_module+0xef/0x1890\n[    5.751533]  [\u003cc1356490\u003e] sysenter_do_call+0x12/0x36\n[    5.751588] ---[ end trace 89f492d83a7f5006 ]---\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nReported-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nTested-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c22400ab64d434a00ecbe0c655a16956c902aa8",
      "tree": "7806378cebccfea754fb566b9a707167071ad207",
      "parents": [
        "672d82c18d222e51b40ff47e660fc54ec3e3e0a9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Oct 12 21:56:25 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 19:24:15 2011 -0400"
      },
      "message": "bonding: Use a per netns implementation of /sys/class/net/bonding_masters.\n\nThis fixes a network namespace misfeature that bonding_masters looked at\ncurrent instead of the remembering the context where in which\n/sys/class/net/bonding_masters was opened in to see which network\nnamespace to act upon.\n\nThis removes the need for sysfs to handle tagged directories with\nuntagged members allowing for a conceptually simpler sysfs\nimplementation.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5edf2906e0a251ddddd76caeb1b79de8bb5e3b8",
      "tree": "402661e622fe9b3a483c216d717291a4eed63b90",
      "parents": [
        "4dc360c5e7e155373bffbb3c1f7ea0022dee650c"
      ],
      "author": {
        "name": "Flavio Leitner",
        "email": "fbl@redhat.com",
        "time": "Thu Oct 13 07:21:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 19:24:14 2011 -0400"
      },
      "message": "bonding: fix wrong port enabling in 802.3ad\n\nThe port shouldn\u0027t be enabled unless its current MUX\nstate is DISTRIBUTING which is correctly handled by\nad_mux_machine(), otherwise the packet sent can be\nlost because the other end may not be ready.\n\nThe issue happens on every port initialization, but\nas the ports are expected to move quickly to DISTRIBUTING,\nit doesn\u0027t cause much problem.  However, it does cause\nconstant packet loss if the other peer has the port\nconfigured to stay in STANDBY (i.e. SYNC set to OFF).\n\nSigned-off-by: Flavio Leitner \u003cfbl@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4d97480b1806e883eb1c7889d4e7a87e936e06d9",
      "tree": "0a690a2f5718826eb871ad655c9acddb5b84f335",
      "parents": [
        "28c213793c994e4aac5f669ce856b5682a549bbb"
      ],
      "author": {
        "name": "Mitsuo Hayasaka",
        "email": "mitsuo.hayasaka.hu@hitachi.com",
        "time": "Wed Oct 12 16:04:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 00:14:22 2011 -0400"
      },
      "message": "bonding: use local function pointer of bond-\u003erecv_probe in bond_handle_frame\n\nThe bond-\u003erecv_probe is called in bond_handle_frame() when\na packet is received, but bond_close() sets it to NULL. So,\na panic occurs when both functions work in parallel.\n\nWhy this happen:\nAfter null pointer check of bond-\u003erecv_probe, an sk_buff is\nduplicated and bond-\u003erecv_probe is called in bond_handle_frame.\nSo, a panic occurs when bond_close() is called between the\ncheck and call of bond-\u003erecv_probe.\n\nPatch:\nThis patch uses a local function pointer of bond-\u003erecv_probe\nin bond_handle_frame(). So, it can avoid the null pointer\ndereference.\n\nSigned-off-by: Mitsuo Hayasaka \u003cmitsuo.hayasaka.hu@hitachi.com\u003e\nCc: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCc: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c5100c28b02c4b2b2c6f6fafbbd76d90f698b9",
      "tree": "08c4399e0341f7eb0ccb24e15f2cab687275c2a4",
      "parents": [
        "8083f0fc969d9b5353061a7a6f963405057e26b1",
        "3ee72ca99288f1de95ec9c570e43f531c8799f06"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 07 13:38:43 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 07 13:38:43 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:davem330/net\n\nConflicts:\n\tnet/batman-adv/soft-interface.c\n"
    },
    {
      "commit": "a0db2dad0935e798973bb79676e722b82f177206",
      "tree": "818935b03072555e34e15dbe2e883b682fcedf67",
      "parents": [
        "12d0d0d3a7349daa95dbfd5d7df8146255bc7c67"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Fri Sep 23 10:53:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 03 13:48:20 2011 -0400"
      },
      "message": "bonding: properly stop queuing work when requested\n\nDuring a test where a pair of bonding interfaces using ARP monitoring\nwere both brought up and torn down (with an rmmod) repeatedly, a panic\nin the timer code was noticed.  I tracked this down and determined that\nany of the bonding functions that ran as workqueue handlers and requeued\nmore work might not properly exit when the module was removed.\n\nThere was a flag protected by the bond lock called kill_timers that is\nset when the interface goes down or the module is removed, but many of\nthe functions that monitor link status now unlock the bond lock to take\nrtnl first.  There is a chance that another CPU running the rmmod could\nget the lock and set kill_timers after the first check has passed.\n\nThis patch does not allow any function to queue work that will make\nitself run unless kill_timers is not set.  I also noticed while doing\nthis work that bond_resend_igmp_join_requests did not have a check for\nkill_timers, so I added the needed call there as well.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nReported-by: Liang Zheng \u003clzheng@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4bc71cb983fd2844e603bf633df2bb53385182d2",
      "tree": "067b6df32fda6c554b2b9263a94a585c2e5a832d",
      "parents": [
        "c5dac7c9984d8a034eb7ae149cedf23ec9259f98"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Sat Sep 03 03:34:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 15 17:32:26 2011 -0400"
      },
      "message": "net: consolidate and fix ethtool_ops-\u003eget_settings calling\n\nThis patch does several things:\n- introduces __ethtool_get_settings which is called from ethtool code and\n  from drivers as well. Put ASSERT_RTNL there.\n- dev_ethtool_get_settings() is replaced by __ethtool_get_settings()\n- changes calling in drivers so rtnl locking is respected. In\n  iboe_get_rate was previously -\u003eget_settings() called unlocked. This\n  fixes it. Also prb_calc_retire_blk_tmo() in af_packet.c had the same\n  problem. Also fixed by calling __dev_get_by_index() instead of\n  dev_get_by_index() and holding rtnl_lock for both calls.\n- introduces rtnl_lock in bnx2fc_vport_create() and fcoe_vport_create()\n  so bnx2fc_if_create() and fcoe_if_create() are called locked as they\n  are from other places.\n- use __ethtool_get_settings() in bonding code\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\n\nv2-\u003ev3:\n\t-removed dev_ethtool_get_settings()\n\t-added ASSERT_RTNL into __ethtool_get_settings()\n\t-prb_calc_retire_blk_tmo - use __dev_get_by_index() and lock\n\t around it and __ethtool_get_settings() call\nv1-\u003ev2:\n        add missing export_symbol\nReviewed-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e [except FCoE bits]\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "823dcd2506fa369aeb8cbd26da5663efe2fda9a9",
      "tree": "853b3e3c05f0b9ee1b5df8464db19b7acc57150c",
      "parents": [
        "eaa36660de7e174498618d69d7277d44a2f24c3d",
        "98e77438aed3cd3343cbb86825127b1d9d2bea33"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 20 10:39:12 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 20 10:39:12 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "afc4b13df143122f99a0eb10bfefb216c2806de0",
      "tree": "5a90e0a8226ce4173d8d366f5bed0322c9623cdd",
      "parents": [
        "01789349ee52e4a3faf376f1485303d9723c4f1f"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Aug 16 06:29:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 20:22:03 2011 -0700"
      },
      "message": "net: remove use of ndo_set_multicast_list in drivers\n\nreplace it by ndo_set_rx_mode\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d03462b999307ec5c186851ec9c5751bd5a675f7",
      "tree": "500f727d52572ae2e5124cde25823c4d3cedbe55",
      "parents": [
        "f3ba150392c85d8175c454a7190b5fa46a49039e"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Aug 16 03:15:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 20:17:47 2011 -0700"
      },
      "message": "bonding: use ndo_change_rx_flags callback\n\nBenefit from use of ndo_change_rx_flags in handling change of promisc\nand allmulti. No need to store previous state locally.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba3211ccd043fae3713793334d64d75bd0a1d029",
      "tree": "ec0c004eabf168afec87fd1686e0aedf3041cfdf",
      "parents": [
        "8919bc13e8d92c5b082c5c0321567383a071f5bc"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Mon Aug 15 15:57:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 20:12:06 2011 -0700"
      },
      "message": "bonding:reset backup and inactive flag of slave\n\nEduard Sinelnikov (eduard.sinelnikov@gmail.com) found that if we change\nbonding mode from active backup to round robin, some slaves are still keeping\n\"backup\", and won\u0027t transmit packets.\n\nAs Jay Vosburgh(fubar@us.ibm.com) pointed out that we can work around that by\nremoving the bond_is_active_slave() check, because the \"backup\" flag is only\nmeaningful for active backup mode.\n\nBut if we just simply ignore the bond_is_active_slave() check,\nthe transmission will work fine, but we can\u0027t maintain the correct value of\n\"backup\" flag for each slaves, though it is meaningless for other mode than\nactive backup.\n\nI\u0027d like to reset \"backup\" and \"inactive\" flag in bond_open,\nthus we can keep the correct value of them.\n\nAs for bond_is_active_slave(), I\u0027d like to prepare another patch to handle it.\n\nV2:\nUse C style comment.\nMove read_lock(\u0026bond-\u003ecurr_slave_lock).\nReplace restore with reset, for active backup mode, it means \"restore\",\nbut for other modes, it means \"reset\".\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@gmail.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5da4510a742bb85182dcab8a47f63baaebb5ec3",
      "tree": "af7172c9cbd42e4b3715f6e47b95f116cca99784",
      "parents": [
        "5098af0abf3c1ed454159e081e75cf7cfc6ddf60"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Aug 10 06:09:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 11 07:44:38 2011 -0700"
      },
      "message": "bonding: implement get_tx_queues rtnk_link_op\n\nIf bonding device is created via rtnl, it is created with default number\nof rx/tx queues. This patch implements callback in bonding so the\ncorrect value (previously specified by bonding module param) is used.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2730f4f842b987c818023a8003e6426cf996985",
      "tree": "b84df061504072115fbc7d455730304c3129b5c0",
      "parents": [
        "f4bb2e9c4fa9e5fdddf90589703613fd1a9c519f"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Wed Jul 27 10:09:26 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 27 22:39:30 2011 -0700"
      },
      "message": "bonding: reduce noise during init\n\nOn Tue, Jul 26, 2011 at 05:40:27PM -0700, Joe Perches wrote:\n\u003e On Tue, 2011-07-26 at 17:37 -0700, Jay Vosburgh wrote:\n\u003e \u003e Joe Perches \u003cjoe@perches.com\u003e wrote:\n\u003e \u003e \u003eI\u0027d prefer you don\u0027t separate the format string\n\u003e \u003e \u003einto multiple pieces.\n\u003e \u003e Why not?  To me, it looks easier to read split into sections\n\u003e \u003e that don\u0027t wrap lines.\n\u003e\n\u003e Harder to grep for a dmesg and the\n\u003e defect rate of these split formats is\n\u003e typically higher than single strings\n\u003e because of bad spacing between string\n\u003e segments.\n\u003e\n\nI noticed that you took some time back in late 2009 to \u0027consolidate\u0027 the\nsplit format-strings present in the bonding driver at the time and I\u0027ve\ndecided I\u0027m fine to leave them the way they are.  The main point of my\npatch was to change the output and I would like to get that included.\nHere is my updated patch...\n\nSubject: [PATCH net-next-2.6 v2] bonding: reduce noise during init\n\nMany are using sysfs to configure bonding rather than module options, so\nthere is no need for bonding to throw this warning in normal cases.\n\nKeep the message around when debugging is enabled as it might be useful\nfor someone desperate enough to enable debugging, but eliminate it\notherwise.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4bb2e9c4fa9e5fdddf90589703613fd1a9c519f",
      "tree": "5f47d2f426c63e1c1d787fbb69e9d52ba6136038",
      "parents": [
        "550fd08c2cebad61c548def135f67aba284c6162"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Tue Jul 26 11:12:27 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 27 22:39:30 2011 -0700"
      },
      "message": "bonding: fix string comparison errors\n\nWhen a bond contains a device where one name is the subset of another\n(eth1 and eth10, for example), one cannot properly set the primary\ndevice or the currently active device.\n\nThis was reported and based on work by Takuma Umeya.  I also verified\nthe problem and tested that this fix resolves it.\n\nV2: A few did not like the the current code or my changes, so I\nrefactored bonding_store_primary and bonding_store_active_slave to be a\nbit cleaner, dropped the use of strnicmp since we did not really need\nthe comparison to be case insensitive, and formatted the input string\nfrom sysfs so a comparison to IFNAMSIZ could be used.\n\nI also discovered an error in bonding_store_active_slave that would\nmodify bond-\u003eprimary_slave rather than bond-\u003ecurr_active_slave before\nforcing the bonding driver to choose a new active slave.\n\nV3: Actually sending the proper patch....\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nReported-by: Takuma Umeya \u003ctumeya@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "550fd08c2cebad61c548def135f67aba284c6162",
      "tree": "8aa7c4d20a9faeb42261b75cfa38d8fd27b574ff",
      "parents": [
        "d8873315065f1f527c7c380402cf59b1e1d0ae36"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Jul 26 06:05:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 27 22:39:30 2011 -0700"
      },
      "message": "net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared\n\nAfter the last patch, We are left in a state in which only drivers calling\nether_setup have IFF_TX_SKB_SHARING set (we assume that drivers touching real\nhardware call ether_setup for their net_devices and don\u0027t hold any state in\ntheir skbs.  There are a handful of drivers that violate this assumption of\ncourse, and need to be fixed up.  This patch identifies those drivers, and marks\nthem as not being able to support the safe transmission of skbs by clearning the\nIFF_TX_SKB_SHARING flag in priv_flags\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCC: Karsten Keil \u003cisdn@linux-pingi.de\u003e\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCC: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCC: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e\nCC: Krzysztof Halasa \u003ckhc@pm.waw.pl\u003e\nCC: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCC: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCC: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nCC: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc0e40700656b09d93b062ef6c818aa45429d09a",
      "tree": "e9501fb2576086a2bb932b8db872276e29340450",
      "parents": [
        "9d846fec22db7b4876353e5e6e97dfc0878b6ada"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jul 20 04:54:46 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:47:58 2011 -0700"
      },
      "message": "bonding: do vlan cleanup\n\nNow when all devices are cleaned up, bond can be cleaned up as well\n\n- remove bond-\u003evlgrp\n- remove bond_vlan_rx_register\n- substitute necessary occurences of vlan_group_get_device\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "033b1142f4bd44a116d1356fe4a0510437ceddf9",
      "tree": "d2a971a7dc9f3a1af8035e38419c4c4ad8c22632",
      "parents": [
        "f5caadbb3d8fc0b71533e880c684b2230bdb76ac",
        "e6625fa48e6580a74b7e700efd7e6463e282810b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:38:42 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:38:42 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n"
    },
    {
      "commit": "62f2a3a48bdc99822a24356e667e52c30df287c9",
      "tree": "acad792fc90ac7d55974729f3b591e75b0f591dd",
      "parents": [
        "b73c43f884b1b26ef8e824a33f3924f92e493c11"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Wed Jul 13 14:10:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 15:18:49 2011 -0700"
      },
      "message": "net: remove NETIF_F_ALL_TX_OFFLOADS\n\nThere is no software fallback implemented for SCTP or FCoE checksumming,\nand so it should not be passed on by software devices like bridge or bonding.\n\nFor VLAN devices, this is different. First, the driver for underlying device\nshould be prepared to get offloaded packets even when the feature is disabled\n(especially if it advertises it in vlan_features). Second, devices under\nVLANs do not get replaced without tearing down the VLAN first.\n\nThis fixes a mess I accidentally introduced while converting bonding to\nndo_fix_features.\n\nNETIF_F_SOFT_FEATURES are removed from BOND_VLAN_FEATURES because they\nare unused as of commit 712ae51afd.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "655f8919d549ad1872e24d826b6ce42530516d2e",
      "tree": "00ecb9724df0f4d162ea7de10fbf74d659e35cfd",
      "parents": [
        "56f8a75c17abb854b5907f4a815dc4c3f186ba11"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Jun 22 09:54:39 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 23 02:12:55 2011 -0700"
      },
      "message": "bonding: add min links parameter to 802.3ad\n\nThis adds support for a configuring the minimum number of links that\nmust be active before asserting carrier. It is similar to the Cisco\nEtherChannel min-links feature. This allows setting the minimum number\nof member ports that must be up (link-up state) before marking the\nbond device as up (carrier on). This is useful for situations where\nhigher level services such as clustering want to ensure a minimum\nnumber of low bandwidth links are active before switchover.\n\nSee:\n   http://bugzilla.vyatta.com/show_bug.cgi?id\u003d7196\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Flavio Leitner \u003cfbl@redhat.com\u003e\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56f8a75c17abb854b5907f4a815dc4c3f186ba11",
      "tree": "6ba333b7668ce7dd04cddecf4f15a0a48b335991",
      "parents": [
        "f470e5ae34d68880a38aa79ee5c102ebc2a1aef6"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Jun 21 20:33:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 20:33:34 2011 -0700"
      },
      "message": "ip: introduce ip_is_fragment helper inline function\n\nThere are enough instances of this:\n\n    iph-\u003efrag_off \u0026 htons(IP_MF | IP_OFFSET)\n\nthat a helper function is probably warranted.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f6ec8d697c08963d83880ccd35c13c5ace716ea",
      "tree": "ad8d93cf6fcdd09b86ade09f5fcbbc66cdb1cca2",
      "parents": [
        "4aa3a715551c93eda32d79bd52042ce500bd5383",
        "56299378726d5f2ba8d3c8cbbd13cb280ba45e4f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -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/iwlwifi/iwl-agn-rxon.c\n\tdrivers/net/wireless/rtlwifi/pci.c\n\tnet/netfilter/ipvs/ip_vs_core.c\n"
    },
    {
      "commit": "cefa9993f161c1c2b6b91b7ea2e84a9bfbd43d2e",
      "tree": "ea1a587dd6a87e2c8c5ea84855ca068484fecdf5",
      "parents": [
        "9aa3c94ce59066f545521033007abb6441706068"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "amwang@redhat.com",
        "time": "Sun Jun 19 16:13:01 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 19 16:13:01 2011 -0700"
      },
      "message": "netpoll: copy dev name of slaves to struct netpoll\n\nOtherwise we will not see the name of the slave dev in error\nmessage:\n\n[  388.469446] (null):  doesn\u0027t support polling, aborting.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf0239a98a7378c6a1a6b01701ec5e27591f52ce",
      "tree": "8282afe86c493615aa787be4ff4e2e1b4024f6ff",
      "parents": [
        "081b1b1bb27f1f4a3b682f4cf75103108f2066d7"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Mon Jun 13 04:30:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@conan.davemloft.net",
        "time": "Mon Jun 13 18:29:41 2011 -0400"
      },
      "message": "bonding:delete a dereference before check\n\nDan Carpenter found that there was a dereference before a check,\nadded in 56d00c677de0(bonding:delete lacp_fast from ad_bond_info).\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@conan.davemloft.net\u003e\n"
    },
    {
      "commit": "830a9c75514b477994fd3847f72654d3dbdfa5ca",
      "tree": "945e3a5187560332c4acbfd6cefee93b19a97d21",
      "parents": [
        "539d3ee6376eba05ebd947c81d097e31a3ee42a8"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Fri Jun 10 10:27:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 11 16:13:29 2011 -0700"
      },
      "message": "bonding: clean up bond_del_vlan()\n\n1) the setting of NETIF_F_VLAN_CHALLENGED in bond_del_vlan() is\nuseless since commit b2a103e6 because bond_fix_features() now\nsets NETIF_F_VLAN_CHALLENGED whenever the last slave is being\nremoved.\n\n2) the code never triggers anyway as vlan_list is never empty\nsince ad1afb00.\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e357964ee66723d0ced63ac1dbd1db4a6a1d417e",
      "tree": "2120ef662eab22ad067ede5ab2fc4748c6895a1b",
      "parents": [
        "0cc42eb608954c1d68be7ac51af7434e5fc45659"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Wed Jun 08 21:19:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 15:02:19 2011 -0700"
      },
      "message": "bonding: delete unused arp_mon_pt\n\nNow all received packets are handled by bond_handle_frame,\nand arp_mon_pt isn\u0027t used any more.\n\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Weiping Pan \u003cpanweiping3@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": "0cc42eb608954c1d68be7ac51af7434e5fc45659",
      "tree": "5022fef7264d5402d8fed3adaf766f026c8d1537",
      "parents": [
        "1a14fbcbc96bd098540eb54b66976c20a73b8473"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Wed Jun 08 21:19:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 15:02:19 2011 -0700"
      },
      "message": "bonding: delete unused ad_timer\n\nNow we use agg_select_timer and ad_work.\n\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Weiping Pan \u003cpanweiping3@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": "1a14fbcbc96bd098540eb54b66976c20a73b8473",
      "tree": "a463fb02729d631467f5d9f3e822256192084651",
      "parents": [
        "56d00c677de0a6285587af4f6c6f10aef3209f9f"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Wed Jun 08 21:19:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 15:02:19 2011 -0700"
      },
      "message": "bonding:delete agg_select_mode from ad_bond_info\n\nbond_params-\u003ead_select and ad_bond_info-\u003eagg_select_mode have the same\nmeaning, they are duplicate and need extra synchronization.\n\n__get_agg_selection_mode() get ad_select from bond_params directly.\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@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": "56d00c677de0a6285587af4f6c6f10aef3209f9f",
      "tree": "eee1af15c0b836495d59e42053bac065827a1618",
      "parents": [
        "ba824a8b2d77942d51ce45ed721f65764c00ab50"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Wed Jun 08 21:19:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 15:02:19 2011 -0700"
      },
      "message": "bonding:delete lacp_fast from ad_bond_info\n\nThese is also a bug, that if you modify lacp_rate via sysfs,\nand add new slaves in bonding, new slaves won\u0027t use the latest lacp_rate,\nsince ad_bond_info-\u003elacp_fast is initialized only once,\nin bond_3ad_initialize().\n\nSince both struct bond_params and ad_bond_info have lacp_fast,\nthey are duplicate and need extra synchronization.\n\nbond_3ad_bind_slave() can use bond_params-\u003elacp_fast to initialize port.\nSo we can just remove lacp_fast from struct ad_bond_info.\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@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": "ba824a8b2d77942d51ce45ed721f65764c00ab50",
      "tree": "87fd6d0d6358faf1fe41e1e5a79e4ff5b5a85397",
      "parents": [
        "b880a954b9e2585ce325aedd76e4741880cab180"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Wed Jun 08 21:19:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 15:02:18 2011 -0700"
      },
      "message": "bonding: make 802.3ad use latest lacp_rate\n\nThere is bug that when you modify lacp_rate via sysfs,\n802.3ad won\u0027t use the new value of lacp_rate to transmit packets.\nThis is because port-\u003eactor_oper_port_state isn\u0027t changed.\n\nSigned-off-by: Weiping Pan \u003cpanweiping3@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": "374eeb5a9d77ea719c5c46f4d70226623f4528ce",
      "tree": "2f9fdad71c04da1fe5cdb12433238d24d0a0b738",
      "parents": [
        "5b446c6a7179513edcb34706088c4ce901b9a039"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Fri Jun 03 10:35:52 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 05 14:31:25 2011 -0700"
      },
      "message": "bonding: reset queue mapping prior to transmission to physical device (v5)\n\nThe bonding driver is multiqueue enabled, in which each queue represents a slave\nto enable optional steering of output frames to given slaves against the default\noutput policy.  However, it needs to reset the skb-\u003equeue_mapping prior to\nqueuing to the physical device or the physical slave (if it is multiqueue) could\nwind up transmitting on an unintended tx queue\n\nChange Notes:\nv2) Based on first pass review, updated the patch to restore the origional queue\nmapping that was found in bond_select_queue, rather than simply resetting to\nzero.  This preserves the value of queue_mapping when it was set on receive in\nthe forwarding case which is desireable.\n\nv3) Fixed spelling an casting error in skb-\u003ecb\n\nv4) fixed to store raw queue_mapping to avoid double decrement\n\nv5) Eric D requested that -\u003ecb access be wrapped in a macro.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCC: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCC: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f92c66f7190b1677ea666249b72298723392115",
      "tree": "e2ad3c8f3f146011396d77360fdcea32846ceb8c",
      "parents": [
        "afab2d2999e9c12cf319e1f19da9a0a754560d80"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Wed Jun 01 10:36:33 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 14:43:56 2011 -0700"
      },
      "message": "bonding: allow all slave speeds\n\nNo need to check for 10, 100, 1000, 10000 explicitly. Just make this\ngeneric and check for invalid values only (similar check is in ethtool\nuserspace app). This enables correct speed handling for slave devices\nwith \"nonstandard\" speeds.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nReviewed-by: Nicolas de Pesloüan \u003cnicolas.2p.debian@free.fr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90e62474fd08e16ba5309886c801243b0eb782f3",
      "tree": "6a505ffdf7cd599e85100e03a472038b82583242",
      "parents": [
        "da7c06c4a773b7903d3c09a25edbcb20bdc4af22"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Wed May 25 04:41:59 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 26 14:57:17 2011 -0400"
      },
      "message": "bonding: cleanup module option descriptions\n\nWeiping Pan noticed that the module option description for\nxmit_hash_policy was incorrect and was nice enough to post a patch to\nfix it.  The text was correct, but created a line over 80 characters and\nI would rather not add those.  I realized I could take a few minutes and\nclean up all the descriptions and things would look much better.  This\nis the result.\n\nBased on patch from Weiping Pan \u003cpanweiping3@gmail.com\u003e.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Weiping Pan \u003cpanweiping3@gmail.com\u003e\nReviewed-by: Weiping Pan \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "94265cf5f731c7df29fdfde262ca3e6d51e6828c",
      "tree": "e19d43a5e8b19a220a4258a5a9f30d63ffc4bf55",
      "parents": [
        "9fe0617d9b6d21f700ee9e658e1c9fe3be2fb402"
      ],
      "author": {
        "name": "Flavio Leitner",
        "email": "fbl@redhat.com",
        "time": "Wed May 25 08:38:58 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 25 17:55:33 2011 -0400"
      },
      "message": "bonding: documentation and code cleanup for resend_igmp\n\nImproves the documentation about how IGMP resend parameter\nworks, fix two missing checks and coding style issues.\n\nSigned-off-by: Flavio Leitner \u003cfbl@redhat.com\u003e\nAcked-by: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9fe0617d9b6d21f700ee9e658e1c9fe3be2fb402",
      "tree": "d1e3c425be5697479514792e8183fc1c9c6a32c4",
      "parents": [
        "2907c35ff64708065e5a7fd54e8ded8263eb3074"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed May 25 08:13:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 25 17:55:33 2011 -0400"
      },
      "message": "bonding: prevent deadlock on slave store with alb mode (v3)\n\nThis soft lockup was recently reported:\n\n[root@dell-per715-01 ~]# echo +bond5 \u003e /sys/class/net/bonding_masters\n[root@dell-per715-01 ~]# echo +eth1 \u003e /sys/class/net/bond5/bonding/slaves\nbonding: bond5: doing slave updates when interface is down.\nbonding bond5: master_dev is not up in bond_enslave\n[root@dell-per715-01 ~]# echo -eth1 \u003e /sys/class/net/bond5/bonding/slaves\nbonding: bond5: doing slave updates when interface is down.\n\nBUG: soft lockup - CPU#12 stuck for 60s! [bash:6444]\nCPU 12:\nModules linked in: bonding autofs4 hidp rfcomm l2cap bluetooth lockd sunrpc\nbe2d\nPid: 6444, comm: bash Not tainted 2.6.18-262.el5 #1\nRIP: 0010:[\u003cffffffff80064bf0\u003e]  [\u003cffffffff80064bf0\u003e]\n.text.lock.spinlock+0x26/00\nRSP: 0018:ffff810113167da8  EFLAGS: 00000286\nRAX: ffff810113167fd8 RBX: ffff810123a47800 RCX: 0000000000ff1025\nRDX: 0000000000000000 RSI: ffff810123a47800 RDI: ffff81021b57f6f8\nRBP: ffff81021b57f500 R08: 0000000000000000 R09: 000000000000000c\nR10: 00000000ffffffff R11: ffff81011d41c000 R12: ffff81021b57f000\nR13: 0000000000000000 R14: 0000000000000282 R15: 0000000000000282\nFS:  00002b3b41ef3f50(0000) GS:ffff810123b27940(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\nCR2: 00002b3b456dd000 CR3: 000000031fc60000 CR4: 00000000000006e0\n\nCall Trace:\n [\u003cffffffff80064af9\u003e] _spin_lock_bh+0x9/0x14\n [\u003cffffffff886937d7\u003e] :bonding:tlb_clear_slave+0x22/0xa1\n [\u003cffffffff8869423c\u003e] :bonding:bond_alb_deinit_slave+0xba/0xf0\n [\u003cffffffff8868dda6\u003e] :bonding:bond_release+0x1b4/0x450\n [\u003cffffffff8006457b\u003e] __down_write_nested+0x12/0x92\n [\u003cffffffff88696ae4\u003e] :bonding:bonding_store_slaves+0x25c/0x2f7\n [\u003cffffffff801106f7\u003e] sysfs_write_file+0xb9/0xe8\n [\u003cffffffff80016b87\u003e] vfs_write+0xce/0x174\n [\u003cffffffff80017450\u003e] sys_write+0x45/0x6e\n [\u003cffffffff8005d28d\u003e] tracesys+0xd5/0xe0\n\nIt occurs because we are able to change the slave configuarion of a bond while\nthe bond interface is down.  The bonding driver initializes some data structures\nonly after its ndo_open routine is called.  Among them is the initalization of\nthe alb tx and rx hash locks.  So if we add or remove a slave without first\nopening the bond master device, we run the risk of trying to lock/unlock a\nspinlock that has garbage for data in it, which results in our above softlock.\n\nNote that sometimes this works, because in many cases an unlocked spinlock has\nthe raw_lock parameter initialized to zero (meaning that the kzalloc of the\nnet_device private data is equivalent to calling spin_lock_init), but thats not\ntrue in all cases, and we aren\u0027t guaranteed that condition, so we need to pass\nthe relevant spinlocks through the spin_lock_init function.\n\nFix it by moving the spin_lock_init calls for the tx and rx hashtable locks to\nthe ndo_init path, so they are ready for use by the bond_store_slaves path.\n\nChange notes:\nv2) Based on conversation with Jay and Nicolas it seems that the ability to\nenslave devices while the bond master is down should be safe to do.  As such\nthis is an outlier bug, and so instead we\u0027ll just initalize the errant spinlocks\nin the init path rather than the open path, solving the problem.  We\u0027ll also\nremove the warnings about the bond being down during enslave operations, since\nit should be safe\n\nv3) Fix spelling error\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nReported-by: jtluka@redhat.com\nCC: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nCC: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: nicolas.2p.debian@gmail.com\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "daf9209bb2c8b07ca025eac82e3d175534086c77",
      "tree": "5101649f4edf2cf316e334c49380b6dd1ecebc77",
      "parents": [
        "bb8ed6302b0613339c1a5f0a2cb0b3807c0af611"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Thu May 19 21:39:12 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 21:01:19 2011 -0400"
      },
      "message": "net: rename NETDEV_BONDING_DESLAVE to NETDEV_RELEASE\n\ns/NETDEV_BONDING_DESLAVE/NETDEV_RELEASE/ as Andy suggested.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d8fc29d02a33e4bd5f4fa47823c1fd386346093",
      "tree": "822657741aca7297209c28c906f6b8caa43d163b",
      "parents": [
        "a37dd3332319260cce81ac91ce25fcc3a31de997"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Thu May 19 21:39:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 21:01:19 2011 -0400"
      },
      "message": "netpoll: disable netpoll when enslave a device\n\nV3: rename NETDEV_ENSLAVE to NETDEV_JOIN\n\nCurrently we do nothing when we enslave a net device which is running netconsole.\nNeil pointed out that we may get weird results in such case, so let\u0027s disable\nnetpoll on the device being enslaved. I think it is too harsh to prevent\nthe device being ensalved if it is running netconsole.\n\nBy the way, this patch also removes the NETDEV_GOING_DOWN from netconsole\nnetdev notifier, because netpoll will check if the device is running or not\nand we don\u0027t handle NETDEV_PRE_UP neither.\n\nThis patch is based on net-next-2.6.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cbc94eabb0791906051bbfac024ef2c2be8e079",
      "tree": "41ba194e687c6c60f5c883f98737ac83257d0c00",
      "parents": [
        "1d1652cbdb9885e4d73972263e4cdbe1b0beebfe",
        "7cc31a9ae1477abc79d5992b3afe889f25c50c99"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:33:11 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:33:11 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/vmxnet3/vmxnet3_ethtool.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "534ea99b063de7c30262a8e22f0ab44dd7d11a71",
      "tree": "b0579e32ac4151d1fc9c075de82bbae9e296c0ed",
      "parents": [
        "3f874adc4ae80828b79e8aac6891c108c1f6be6d"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Fri May 13 21:08:47 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 15 18:01:15 2011 -0400"
      },
      "message": "net: drivers: kill two unused macro definitions\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nReviewed-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a10e14667635dde504ed9e7ee851494c2cf2ae8e",
      "tree": "bf5ad736713e1fcb80fadb05825184b44d50c87e",
      "parents": [
        "ca06707022d6ba4744198a8ebbe4994786b0c613"
      ],
      "author": {
        "name": "Vitalii Demianets",
        "email": "vitas@nppfactor.kiev.ua",
        "time": "Thu May 12 23:04:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 15:13:24 2011 -0400"
      },
      "message": "bonding,llc: Fix structure sizeof incompatibility for some PDUs\n\nWith some combinations of arch/compiler (e.g. arm-linux-gcc) the sizeof\noperator on structure returns value greater than expected. In cases when the\nstructure is used for mapping PDU fields it may lead to unexpected results\n(such as holes and alignment problems in skb data). __packed prevents this\nundesired behavior.\n\nSigned-off-by: Vitalii Demianets \u003cvitas@nppfactor.kiev.ua\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2a103e6d0afa432dff66b36473c5a55b6b0376c",
      "tree": "9a048635ae5cf04e0b6216cb7a9065b6ae63ead3",
      "parents": [
        "afe12cc86b0ba545a01ad8716539ab07ab6e9e89"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Sat May 07 03:22:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 18:45:59 2011 -0400"
      },
      "message": "bonding: convert to ndo_fix_features\n\nThis should also fix updating of vlan_features and propagating changes to\nVLAN devices on the bond.\n\nSide effect: it allows user to force-disable some offloads on the bond\ninterface.\n\nNote: NETIF_F_VLAN_CHALLENGED is managed by bond_fix_features() now.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0693e88e6ccf615d9674548d8b924cdd9a1c976c",
      "tree": "c77546505f150e1e6c8a9a8390e7dc01a292d13d",
      "parents": [
        "48752e1b1802231ef2a076f34d861918b7d571c3"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Sat May 07 01:48:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 12:05:59 2011 -0700"
      },
      "message": "net: bonding: factor out rlock(bond-\u003elock) in xmit path\n\nPull read_lock(\u0026bond-\u003elock) and BOND_IS_OK() to bond_start_xmit() from\nmode-dependent xmit functions.\n\nnetif_running() is always true in hard_start_xmit.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c5cae815d19ffe02bdfda1260949ef2b1806171",
      "tree": "d47a73c05afacd21985abb8df9862136385c58f0",
      "parents": [
        "e8920674979705392abc4db4ebbe78feb68a4da1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Sat Apr 30 01:21:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 05 10:57:45 2011 -0700"
      },
      "message": "net: call dev_alloc_name from register_netdevice\n\nForce dev_alloc_name() to be called from register_netdevice() by\ndev_get_valid_name(). That allows to remove multiple explicit\ndev_alloc_name() calls.\n\nThe possibility to call dev_alloc_name in advance remains.\n\nThis also fixes veth creation regresion caused by\n84c49d8c3e4abefb0a41a77b25aa37ebe8d6b743\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ad246c992bea6d33c6421ba1f03e2b405792adf9",
      "tree": "28afc1b370d856a63a3cd792fc292996c0315c13",
      "parents": [
        "7d36a991e8d36b8ae87e2aa1158d3735e656253b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Tue Apr 26 15:25:52 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 29 12:44:11 2011 -0700"
      },
      "message": "ipv4, ipv6, bonding: Restore control over number of peer notifications\n\nFor backward compatibility, we should retain the module parameters and\nsysfs attributes to control the number of peer notifications\n(gratuitous ARPs and unsolicited NAs) sent after bonding failover.\nAlso, it is possible for failover to take place even though the new\nactive slave does not have link up, and in that case the peer\nnotification should be deferred until it does.\n\nChange ipv4 and ipv6 so they do not automatically send peer\nnotifications on bonding failover.\n\nChange the bonding driver to send separate NETDEV_NOTIFY_PEERS\nnotifications when the link is up, as many times as requested.  Since\nit does not directly control which protocols send notifications, make\nnum_grat_arp and num_unsol_na aliases for a single parameter.  Bump\nthe bonding version number and update its documentation.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nAcked-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bd93d7af1581d40e3c4b25242472661cb7c637a",
      "tree": "43c638422d20857339d8d908d6b65ebb8045edc0",
      "parents": [
        "64cad2ade1e6f890531a58318ca9ee013f92ef2f",
        "0972ddb2373d5e127aabdcabd8305eff0242cd0b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 26 12:16:46 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 26 12:16:46 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nResolved logic conflicts causing a build failure due to\ndrivers/net/r8169.c changes using a patch from Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3aba891dde3842d89ad022237b99c1ed308040b0",
      "tree": "7b89bcdc0362a1fdd50d74c3a8108f16fecfa5b1",
      "parents": [
        "22d5969fb450afd3a4aff606360f7d52c5a3a628"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Apr 19 03:48:16 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 25 12:00:30 2011 -0700"
      },
      "message": "bonding: move processing of recv handlers into handle_frame()\n\nSince now when bonding uses rx_handler, all traffic going into bond\ndevice goes thru bond_handle_frame. So there\u0027s no need to go back into\nbonding code later via ptype handlers. This patch converts\noriginal ptype handlers into \"bonding receive probes\". These functions\nare called from bond_handle_frame and they are registered per-mode.\n\nNote that vlan packets are also handled because they are always untagged\nthanks to vlan_untag()\n\nNote that this also allows arpmon for eth-bond-bridge-vlan topology.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2430af8b7fa37ac0be102c77f9dc6ee669d24ba9",
      "tree": "76199ce83fd1ef26f1438302fb2f4898f537531d",
      "parents": [
        "6f4d6dc167a001267eeff18bdea0ce3e9108c662"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Tue Apr 19 02:09:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 20 01:44:43 2011 -0700"
      },
      "message": "bonding: 802.3ad - fix agg_device_up\n\nThe slave member of struct aggregator does not necessarily point\nto a slave which is part of the aggregator. It points to the\nslave structure containing the aggregator structure, while\ncompletely different slaves (or no slaves at all) may be part of\nthe aggregator.\n\nThe agg_device_up() function wrongly uses agg-\u003eslave to find the state\nof the aggregator.  Use agg-\u003elag_ports-\u003eslave instead. The bug has\nbeen introduced by commit 4cd6fe1c6483cde93e2ec91f58b7af9c9eea51ad\n(\"bonding: fix link down handling in 802.3ad mode\").\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c89943236750537d26421d9bbb6f6575e2d1e1b",
      "tree": "dfbc9b11ddcd20757388b03e9925363c1e1764f3",
      "parents": [
        "99606477a5888b0ead0284fecb13417b1da8e3af"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Fri Apr 15 13:47:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 23:36:03 2011 -0700"
      },
      "message": "bonding, ipv4, ipv6, vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS\n\nIt is undesirable for the bonding driver to be poking into higher\nlevel protocols, and notifiers provide a way to avoid that.  This does\nmean removing the ability to configure reptitition of gratuitous ARPs\nand unsolicited NAs.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7d038eb6dc0e256dbcac88d52972c4ac55a78fc5",
      "tree": "4cd778c6f492bdd0f446056b21560313047f1312",
      "parents": [
        "9e5ebaf852b96aaf4d7f63b920d8016b6784f088"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 00:50:58 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 00:50:58 2011 -0700"
      },
      "message": "bonding: Fix set-but-unused variable.\n\nThe variable \u0027vlan_dev\u0027 is set but unused in\nbond_send_gratuitous_arp().  Just kill it off.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d30530efbb811f875786d788ae1c5d79547c3a4",
      "tree": "ba6c1b23aaf1eb5489ef5e95cc5a45da70bf1321",
      "parents": [
        "65cce19c07756c2b2b51595c967dda93b0727027"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@google.com",
        "time": "Wed Apr 13 15:22:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 14 22:00:32 2011 -0700"
      },
      "message": "net-bonding: Adding support for throughputs larger than 65536 Mbps\n\nThis updates the bonding driver to support v2.6.27-rc3 enhancements\n(b11f8d8c aka. \"ethtool: Expand ethtool_cmd.speed to 32 bits\") which\nallow to encode the Mbps link speed on 32-bits (Max 4 Pbps) instead of\n16 (Max 65536 Mbps).\n\nThis patch also attempts to compact struct slave by reordering its\nfields.\n\nSigned-off-by: David Decotigny \u003cdecot@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65cce19c07756c2b2b51595c967dda93b0727027",
      "tree": "df3f51653b8dccced401c902d8566f068c735cfc",
      "parents": [
        "d30ee670f25ea8f265a2804e2a0a53804cac5185"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@google.com",
        "time": "Wed Apr 13 15:22:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 14 22:00:32 2011 -0700"
      },
      "message": "net-bonding: Fix minor/cosmetic type inconsistencies\n\nThe __get_link_speed() function returns a u16 value which was stored\nin a u32 local variable. This patch uses the return value directly,\nthus fixing that minor type consistency.\n\nThe \u0027duplex\u0027 field in struct slave being encoded on 8 bits, to be more\nconsistent we use a u8 integer (instead of u16) whenever we copy it to\nlocal variables.\n\nSigned-off-by: David Decotigny \u003cdecot@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d30ee670f25ea8f265a2804e2a0a53804cac5185",
      "tree": "7a8d3b92f26cb3e9570df2989a0b8ea462027a1a",
      "parents": [
        "ef9c7ab4a97d53d9cb4912d13e142f52a30ecd54"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@google.com",
        "time": "Wed Apr 13 15:22:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 14 22:00:31 2011 -0700"
      },
      "message": "net-bonding: Fix minor sparse complaints\n\nThis gets rid of minor sparse complaints:\ndrivers/net/bonding/bond_main.c:4361:4: warning: do-while statement is not a compound statement\ndrivers/net/bonding/bond_main.c:243:12: warning: symbol \u0027bond_mode_name\u0027 was not declared. Should it be static?\n\nSigned-off-by: David Decotigny \u003cdecot@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c01a80cfec6f806246f31ff2680cd3639b30e67",
      "tree": "0b554aad2ec1da71ecf6339d4ba51617bfe1dc3c",
      "parents": [
        "c44d79950b2daa1025e62eede73e4e4a274d1ef3",
        "4a9f65f6304a00f6473e83b19c1e83caa1e42530"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:44:25 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:44:25 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/smsc911x.c\n"
    },
    {
      "commit": "77c8e2c01542649f7a02fef8eb3b3d0e7fed6bbd",
      "tree": "2bdeb6ff656f5b0155d1fc001c8f54f47da68c0a",
      "parents": [
        "9814290ad0314fa0ce7991eae34ac44956e40b12"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Mon Apr 11 00:16:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:15:56 2011 -0700"
      },
      "message": "bonding:fix two typos\n\nreplace relpy with reply.\nreplace premanent with permanent.\n\nSigned-off-by: Weiping Pan(潘卫平) \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9814290ad0314fa0ce7991eae34ac44956e40b12",
      "tree": "fd507ee6c38aff738ff764b942d4025d1e42ee4d",
      "parents": [
        "26f007b85a1bb73e1974ebd371cf5cd1e80c0a00"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Mon Apr 11 00:15:57 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:15:56 2011 -0700"
      },
      "message": "net: fix tranmitted/tranmitting typo\n\nreplace tranmitted with transmitted.\nreplace tranmitting with transmitting.\n\nSigned-off-by: Weiping Pan(潘卫平) \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26f007b85a1bb73e1974ebd371cf5cd1e80c0a00",
      "tree": "677b2dc6a4b5d2885aaede92368beb1132134ad4",
      "parents": [
        "3b647568454acedb8f09f72931bfe92b73f812c7"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Sun Apr 10 22:17:25 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:15:55 2011 -0700"
      },
      "message": "bonding:delete unused rlb_interval_counter\n\nNow, alb_bond_info uses rx_ntt,rlb_update_delay_counter and\nrlb_update_retry_counter to decide when to call rlb_update_rx_clients().\n\nSigned-off-by: Weiping Pan(潘卫平) \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b647568454acedb8f09f72931bfe92b73f812c7",
      "tree": "ddb1610b5157c89c75b3ee0694c685c2783a9c3c",
      "parents": [
        "38dbaf0afb518e462de7afca552acad048237a73"
      ],
      "author": {
        "name": "Peter Pan(潘卫平)",
        "email": "panweiping3@gmail.com",
        "time": "Sun Apr 10 22:17:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:15:55 2011 -0700"
      },
      "message": "bonding:delete unused alb_timer\n\nNow bonding-alb uses delayed_work instead of timer_list.\n\nSigned-off-by: Weiping Pan(潘卫平) \u003cpanweiping3@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "38dbaf0afb518e462de7afca552acad048237a73"
}
