)]}'
{
  "log": [
    {
      "commit": "6ef94cfafba159d6b1a902ccb3349ac6a34ff6ad",
      "tree": "f2d7afebf4534ea50273165f4b0798aed704a37c",
      "parents": [
        "d1c53c8e870cdedb6fc9550f41c558bab45b5219"
      ],
      "author": {
        "name": "Stefan Tomanek",
        "email": "stefan.tomanek@wertarbyte.de",
        "time": "Fri Aug 02 17:19:56 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 15:24:22 2013 -0700"
      },
      "message": "fib_rules: add route suppression based on ifgroup\n\nThis change adds the ability to suppress a routing decision based upon the\ninterface group the selected interface belongs to. This allows it to\nexclude specific devices from a routing decision.\n\nSigned-off-by: Stefan Tomanek \u003cstefan.tomanek@wertarbyte.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1c53c8e870cdedb6fc9550f41c558bab45b5219",
      "tree": "b740b4b81c96ec056aec738cb59ed5c003d329a2",
      "parents": [
        "9cc08af3a1d9d1687cb2ad6063ac1552ec2f695a"
      ],
      "author": {
        "name": "Werner Almesberger",
        "email": "werner@almesberger.net",
        "time": "Fri Aug 02 10:51:34 2013 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 15:15:50 2013 -0700"
      },
      "message": "icmpv6_filter: allow ICMPv6 messages with bodies \u003c 4 bytes\n\nBy using sizeof(_hdr), net/ipv6/raw.c:icmpv6_filter implicitly assumes\nthat any valid ICMPv6 message is at least eight bytes long, i.e., that\nthe message body is at least four bytes.\n\nThe DIS message of RPL (RFC 6550 section 6.2, from the 6LoWPAN world),\nhas a minimum length of only six bytes, and is thus blocked by\nicmpv6_filter.\n\nRFC 4443 seems to allow even a zero-sized body, making the minimum\nallowable message size four bytes.\n\nSigned-off-by: Werner Almesberger \u003cwerner@almesberger.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cc08af3a1d9d1687cb2ad6063ac1552ec2f695a",
      "tree": "81f28f1e87e9a1eb68af1bf46517da4656c652f3",
      "parents": [
        "c483e02614551e44ced3fe6eedda8e36d3277ccc"
      ],
      "author": {
        "name": "Werner Almesberger",
        "email": "werner@almesberger.net",
        "time": "Fri Aug 02 10:51:19 2013 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 15:15:50 2013 -0700"
      },
      "message": "icmpv6_filter: fix \"_hdr\" incorrectly being a pointer\n\n\"_hdr\" should hold the ICMPv6 header while \"hdr\" is the pointer to it.\nThis worked by accident.\n\nSigned-off-by: Werner Almesberger \u003cwerner@almesberger.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c483e02614551e44ced3fe6eedda8e36d3277ccc",
      "tree": "7d171a5c01d8212921cd2557aa0749fa81263893",
      "parents": [
        "cbd89acb9eb257ed3b2be867142583fdcf7fdc5b"
      ],
      "author": {
        "name": "Phil Sutter",
        "email": "phil@nwl.cc",
        "time": "Fri Aug 02 11:37:41 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 14:58:32 2013 -0700"
      },
      "message": "af_packet: simplify VLAN frame check in packet_snd\n\nFor ethernet frames, eth_type_trans() already parses the header, so one\ncan skip this when checking the frame size.\n\nSigned-off-by: Phil Sutter \u003cphil@nwl.cc\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbd89acb9eb257ed3b2be867142583fdcf7fdc5b",
      "tree": "7dfaa72d8f217853bb840407a86a9d6b46146525",
      "parents": [
        "0f75b09c798ed00c30d7d5551b896be883bc2aeb"
      ],
      "author": {
        "name": "Phil Sutter",
        "email": "phil@nwl.cc",
        "time": "Fri Aug 02 11:37:40 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 14:58:32 2013 -0700"
      },
      "message": "af_packet: fix for sending VLAN frames via packet_mmap\n\nSince tpacket_fill_skb() parses the protocol field in ethernet frames\u0027\nheaders, it\u0027s easy to see if any passed frame is a VLAN one and account\nfor the extended size.\n\nBut as the real protocol does not turn up before tpacket_fill_skb()\nruns which in turn also checks the frame length, move the max frame\nlength calculation into the function.\n\nSigned-off-by: Phil Sutter \u003cphil@nwl.cc\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f75b09c798ed00c30d7d5551b896be883bc2aeb",
      "tree": "9fc3da6d33d9ce15c1566e30f7bf13bfcefbc58c",
      "parents": [
        "d27fc78208b53ccdfd6a57d4ac44a459ca66806f"
      ],
      "author": {
        "name": "Phil Sutter",
        "email": "phil@nwl.cc",
        "time": "Fri Aug 02 11:37:39 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 14:58:32 2013 -0700"
      },
      "message": "af_packet: when sending ethernet frames, parse header for skb-\u003eprotocol\n\nThis may be necessary when the SKB is passed to other layers on the go,\nwhich check the protocol field on their own. An example is a VLAN packet\nsent out using AF_PACKET on a bridge interface. The bridging code checks\nthe SKB size, accounting for any VLAN header only if the protocol field\nis set accordingly.\n\nNote that eth_type_trans() sets skb-\u003edev to the passed argument, so this\ncan be skipped in packet_snd() for ethernet frames, as well.\n\nSigned-off-by: Phil Sutter \u003cphil@nwl.cc\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d27fc78208b53ccdfd6a57d4ac44a459ca66806f",
      "tree": "700f653b85cac0da64bdcbfb86021a4da07cd3d9",
      "parents": [
        "ba5082c71476891623757956ebfc36040ac317e2"
      ],
      "author": {
        "name": "fan.du",
        "email": "fan.du@windriver.com",
        "time": "Fri Aug 02 10:45:13 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 02 12:36:00 2013 -0700"
      },
      "message": "sctp: Don\u0027t lookup dst if transport dst is still valid\n\nWhen sctp sits on IPv6, sctp_transport_dst_check pass cookie as ZERO,\nas a result ip6_dst_check always fail out. This behaviour makes\ntransport-\u003edst useless, because every sctp_packet_transmit must look\nfor valid dst.\n\nAdd a dst_cookie into sctp_transport, and set the cookie whenever we\nget new dst for sctp_transport. So dst validness could be checked\nagainst it.\n\nSince I have split genid for IPv4 and IPv6, also delete/add IPv6 address\nwill also bump IPv6 genid. So issues we discussed in:\nhttp://marc.info/?l\u003dlinux-netdev\u0026m\u003d137404469219410\u0026w\u003d4\nhave all been sloved for this patch.\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nAcked-by: Vlad Yasevich \u003cvyasevich@gmail.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "439677d766ba9095e5afc4a30147f65bc363b6e7",
      "tree": "61c976d20b54e9de16f51b62d569e450f5f14661",
      "parents": [
        "c1fc20aa16b3d0c52d88fffb3eca6981f3f82ca7"
      ],
      "author": {
        "name": "fan.du",
        "email": "fan.du@windriver.com",
        "time": "Thu Aug 01 17:44:44 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 01 16:33:32 2013 -0700"
      },
      "message": "ipv6: bump genid when delete/add address\n\nServer           Client\n2001:1::803/64  \u003c-\u003e 2001:1::805/64\n2001:2::804/64  \u003c-\u003e 2001:2::806/64\n\nServer side fib binary tree looks like this:\n\n                                   (2001:/64)\n                                   /\n                                  /\n                   ffff88002103c380\n                 /                 \\\n     (2)        /                   \\\n (2001::803/128)                     ffff880037ac07c0\n                                    /               \\\n                                   /                 \\  (3)\n                      ffff880037ac0640               (2001::806/128)\n                       /             \\\n             (1)      /               \\\n        (2001::804/128)               (2001::805/128)\n\nDelete 2001::804/64 won\u0027t cause prefix route deleted as well as rt in (3)\ndestinate to 2001::806 with source address as 2001::804/64. That\u0027s because\n2001::803/64 is still alive, which make onlink\u003d1 in ipv6_del_addr, this is\nwhere the substantial difference between same prefix configuration and\ndifferent prefix configuration :) So packet are still transmitted out to\n2001::806 with source address as 2001::804/64.\n\nSo bump genid will clear rt in (3), and up layer protocol will eventually\nfind the right one for themselves.\n\nThis problem arised from the discussion in here:\nhttp://marc.info/?l\u003dlinux-netdev\u0026m\u003d137404469219410\u0026w\u003d4\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46b3a421903aa2a4bc9731ca4663cee3ea869dab",
      "tree": "79fe45a2dcc4055edddf87069ce278f3ce78176f",
      "parents": [
        "378307217ed9c318212ec3050d38d0e34b77604c"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Thu Aug 01 08:54:47 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 01 00:26:22 2013 -0700"
      },
      "message": "ipv6: fib6_rules should return exact return value\n\nWith the addition of the suppress operation\n(7764a45a8f1fe74d4f7d301eaca2e558e7e2831a (\"fib_rules: add .suppress\noperation\") we rely on accurate error reporting of the fib_rules.actions.\n\nfib6_rule_action always returned -EAGAIN in case we could not find a\nmatching route and 0 if a rule was matched. This also included a match\nfor blackhole or prohibited rule actions which could get suppressed by\nthe new logic.\n\nSo adapt fib6_rule_action to always return the correct error code as\nits counterpart fib4_rule_action does. This also fixes a possiblity of\nnullptr-deref where we don\u0027t find a table, thus rt \u003d\u003d NULL. Because\nthe condition rt !\u003d ip6_null_entry still holdes it seems we could later\nget a nullptr bug on dereference rt-\u003edst.\n\nv2:\na) Fixed a brain fart in the commit msg (the rule \u003d\u003e a table, etc). No\n   changes to the patch.\n\nCc: Stefan Tomanek \u003cstefan.tomanek@wertarbyte.de\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7764a45a8f1fe74d4f7d301eaca2e558e7e2831a",
      "tree": "39e20aa1dd22859d315da33b858074651efed7b9",
      "parents": [
        "5c15257f93234aaa9775291a041b49eeb38fd95a"
      ],
      "author": {
        "name": "Stefan Tomanek",
        "email": "stefan.tomanek@wertarbyte.de",
        "time": "Thu Aug 01 02:17:15 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 31 17:27:17 2013 -0700"
      },
      "message": "fib_rules: add .suppress operation\n\nThis change adds a new operation to the fib_rules_ops struct; it allows the\nsuppression of routing decisions if certain criteria are not met by its\nresults.\n\nThe first implemented constraint is a minimum prefix length added to the\nstructures of routing rules. If a rule is added with a minimum prefix length\n\u003e0, only routes meeting this threshold will be considered. Any other (more\ngeneral) routing table entries will be ignored.\n\nWhen configuring a system with multiple network uplinks and default routes, it\nis often convinient to reference the main routing table multiple times - but\nomitting the default route. Using this patch and a modified \"ip\" utility, this\ncan be achieved by using the following command sequence:\n\n  $ ip route add table secuplink default via 10.42.23.1\n\n  $ ip rule add pref 100            table main prefixlength 1\n  $ ip rule add pref 150 fwmark 0xA table secuplink\n\nWith this setup, packets marked 0xA will be processed by the additional routing\ntable \"secuplink\", but only if no suitable route in the main routing table can\nbe found. By using a minimal prefixlength of 1, the default route (/0) of the\ntable \"main\" is hidden to packets processed by rule 100; packets traveling to\ndestinations with more specific routing entries are processed as usual.\n\nSigned-off-by: Stefan Tomanek \u003cstefan.tomanek@wertarbyte.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2f872f9272a79a1048877ea14c15576f46c225e",
      "tree": "22af2e425ac96068c2d383c052e1d287db867211",
      "parents": [
        "ca4c3fc24e293719fe7410c4e63da9b6bc633b83"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Jul 30 17:55:08 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 31 14:59:49 2013 -0700"
      },
      "message": "netem: Introduce skb_orphan_partial() helper\n\nCommit 547669d483e578 (\"tcp: xps: fix reordering issues\") added\nunexpected reorders in case netem is used in a MQ setup for high\nperformance test bed.\n\nETH\u003deth0\ntc qd del dev $ETH root 2\u003e/dev/null\ntc qd add dev $ETH root handle 1: mq\nfor i in `seq 1 32`\ndo\n tc qd add dev $ETH parent 1:$i netem delay 100ms\ndone\n\nAs all tcp packets are orphaned by netem, TCP stack believes it can\nset skb-\u003eooo_okay on all packets.\n\nIn order to allow producers to send more packets, we want to\nkeep sk_wmem_alloc from reaching sk_sndbuf limit.\n\nWe can do that by accounting one byte per skb in netem queues,\nso that TCP stack is not fooled too much.\n\nTested:\n\nWith above MQ/netem setup, scaling number of concurrent flows gives\nlinear results and no reorders/retransmits\n\nlpq83:~# for n in 1 10 20 30 40 50 60 70 80 90 100\n do echo -n \"n:$n \" ; ./super_netperf $n -H 10.7.7.84; done\nn:1 198.46\nn:10 2002.69\nn:20 4000.98\nn:30 6006.35\nn:40 8020.93\nn:50 10032.3\nn:60 12081.9\nn:70 13971.3\nn:80 16009.7\nn:90 17117.3\nn:100 17425.5\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ca4c3fc24e293719fe7410c4e63da9b6bc633b83",
      "tree": "0461841f3d10b11a26ebe1a0adc99c7b00a489a2",
      "parents": [
        "ba361cb3d4c977e2b94b5d97905f66b4d48964de"
      ],
      "author": {
        "name": "fan.du",
        "email": "fan.du@windriver.com",
        "time": "Tue Jul 30 08:33:53 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 31 14:56:36 2013 -0700"
      },
      "message": "net: split rt_genid for ipv4 and ipv6\n\nCurrent net name space has only one genid for both IPv4 and IPv6, it has below\ndrawbacks:\n\n- Add/delete an IPv4 address will invalidate all IPv6 routing table entries.\n- Insert/remove XFRM policy will also invalidate both IPv4/IPv6 routing table\n  entries even when the policy is only applied for one address family.\n\nThus, this patch attempt to split one genid for two to cater for IPv4 and IPv6\nseparately in a fine granularity.\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nAcked-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0155b2da4cd6583b1b729451249ca346e1c05a2",
      "tree": "908835cb5413849e658f1dd1761b1ff19ad66dea",
      "parents": [
        "4299c8a94fa9d26b54222d7781244137623d4b39"
      ],
      "author": {
        "name": "Dmitry Popov",
        "email": "dp@highloadlab.com",
        "time": "Wed Jul 31 13:39:45 2013 +0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 31 12:16:45 2013 -0700"
      },
      "message": "tcp: Remove unused tcpct declarations and comments\n\nRemove declaration, 4 defines and confusing comment that are no longer used\nsince 1a2c6181c4 (\"tcp: Remove TCPCT\").\n\nSigned-off-by: Dmitry Popov \u003cdp@highloadlab.com\u003e\nAcked-by: Christoph Paasch \u003cchristoph.paasch@uclouvain.be\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4299c8a94fa9d26b54222d7781244137623d4b39",
      "tree": "acb059dbb51d5d83b5dedaf074256aba3d7fba80",
      "parents": [
        "b438f940d3541f478c6b37106ed095f1be7959ef"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Mon Jul 29 22:15:19 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 19:24:16 2013 -0700"
      },
      "message": "net: remove an unneeded check\n\n\"ifa-\u003eifa_label\" is an array inside the in_ifaddr struct.  It can never\nbe NULL so we can remove this check.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nReviewed-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b438f940d3541f478c6b37106ed095f1be7959ef",
      "tree": "ee997b510b1cb91a3977945f1f119187f5c9ab89",
      "parents": [
        "fca418955148e4f4555d7ce911e9eee3e7970a7f"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Mon Jul 29 11:07:42 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 19:16:52 2013 -0700"
      },
      "message": "flow_dissector: add support for IPPROTO_IPV6\n\nSupport IPPROTO_IPV6 similar to IPPROTO_IPIP\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fca418955148e4f4555d7ce911e9eee3e7970a7f",
      "tree": "d4403a0fa1f31c96ca5880f2c062018d78b1bf13",
      "parents": [
        "69e12d887cf4a22de736209df27604e3d2ff9845"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Mon Jul 29 11:07:36 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 19:16:51 2013 -0700"
      },
      "message": "flow_dissector: clean up IPIP case\n\nExplicitly set proto to ETH_P_IP and jump directly to ip processing.\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff80e519ab1b3a6abb2c6bbf684b98be07111879",
      "tree": "35c295ad35956c5e92916b2b9dc0d80514fe0f09",
      "parents": [
        "66cae9ed6bc46b8cc57a9693f99f69926f3cc7ef"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@resnulli.us",
        "time": "Mon Jul 29 18:16:51 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 17:31:25 2013 -0700"
      },
      "message": "net: export physical port id via sysfs\n\nSigned-off-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nAcked-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Narendra K \u003cnarendra_k@dell.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66cae9ed6bc46b8cc57a9693f99f69926f3cc7ef",
      "tree": "32b187701434051c013863bdd7c65d3a69f7b64d",
      "parents": [
        "66b52b0dc82c5c88d769dc1c7d44cf45d0deb07c"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@resnulli.us",
        "time": "Mon Jul 29 18:16:50 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 17:31:24 2013 -0700"
      },
      "message": "rtnl: export physical port id via RT netlink\n\nSigned-off-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nAcked-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Narendra K \u003cnarendra_k@dell.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66b52b0dc82c5c88d769dc1c7d44cf45d0deb07c",
      "tree": "2fa19024bd1afefcc0fc4a09ea7ae1b6c095edcd",
      "parents": [
        "9ad8fef6c61a9dfcaa8444e526020de88c540fa9"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@resnulli.us",
        "time": "Mon Jul 29 18:16:49 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 17:31:24 2013 -0700"
      },
      "message": "net: add ndo to get id of physical port of the device\n\nThis patch adds a ndo for getting physical port of the device. Driver\nwhich is aware of being virtual function of some physical port should\nimplement this ndo. This is applicable not only for IOV, but for other\nsolutions (NPAR, multichannel) as well. Basically if there is possible\nto have multiple netdevs on the single hw port.\n\nSigned-off-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nAcked-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffd756b3174e496cf6f3c5458c434e31d2cd48b0",
      "tree": "ddb9510cf8984b8611346fc3b3d7bff2ac74f3d1",
      "parents": [
        "5ad37d5deee1ff7150a2d0602370101de158ad86"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Mon Jul 29 13:44:15 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 16:45:09 2013 -0700"
      },
      "message": "pktgen: Require CONFIG_INET due to use of IPv4 checksum function\n\nUnlike for IPv6, the IPv4 checksum functions are only available\nif CONFIG_INET is set.\n\nReported-by: kbuild test robot \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ad37d5deee1ff7150a2d0602370101de158ad86",
      "tree": "602cac8fe98e0911753b7ff0485756962c2d232a",
      "parents": [
        "dcfd8d5830f8cc9062eb7040f455c034e8d160e6"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Fri Jul 26 17:43:23 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 16:15:18 2013 -0700"
      },
      "message": "tcp: add tcp_syncookies mode to allow unconditionally generation of syncookies\n\n| If you want to test which effects syncookies have to your\n| network connections you can set this knob to 2 to enable\n| unconditionally generation of syncookies.\n\nOriginal idea and first implementation by Eric Dumazet.\n\nCc: Florian Westphal \u003cfw@strlen.de\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60ff779c4abba37a31bd8624ef45026f7fb1b70c",
      "tree": "eb0cec51eb8c3a9885a7014cd46333973ec5b988",
      "parents": [
        "4ce1fd6110e1fb1747194d830a3f85952ad06172"
      ],
      "author": {
        "name": "Andi Shyti",
        "email": "andi@etezian.org",
        "time": "Thu Jul 25 10:54:24 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 30 15:54:28 2013 -0700"
      },
      "message": "9p: client: remove unused code and any reference to \"cancelled\" function\n\nThis patch reverts commit\n\n80b45261a0b263536b043c5ccfc4ba4fc27c2acc\n\nwhich was implementing a \u0027cancelled\u0027 functionality to notify that\na cancelled request will not be replied.\n\nThis implementation was not used anywhere and therefore removed.\n\nSigned-off-by: Andi Shyti \u003candi@etezian.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73d94e9481a20817abe2f1b41ee441bb4f6461f7",
      "tree": "8d0a77f4a0e16f548c8b1b9c31300f3953036a20",
      "parents": [
        "34d073fcd3dd79207e65e87fd2e5ffdd9cd1b957"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Jul 29 16:21:26 2013 +1000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 29 00:47:14 2013 -0700"
      },
      "message": "pktgen: add needed include file\n\nFixes this on PowerPC (at least):\n\nnet/core/pktgen.c: In function \u0027fill_packet_ipv6\u0027:\nnet/core/pktgen.c:2906:3: error: implicit declaration of function \u0027csum_ipv6_magic\u0027 [-Werror\u003dimplicit-function-declaration]\n   udph-\u003echeck \u003d ~csum_ipv6_magic(\u0026iph-\u003esaddr, \u0026iph-\u003edaddr, udplen, IPPROTO_UDP, 0);\n   ^\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d4a0314642918cbda9ed4012df51e8df608fce6",
      "tree": "721b3fad6c1b19258416962ca9846bde797a4e60",
      "parents": [
        "dcfe8048de66c3468060c8a2ec2c04ae3725d002"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Fri Jul 26 17:05:16 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 28 11:13:55 2013 -0700"
      },
      "message": "ipv4, ipv6: send igmpv3/mld packets with TC_PRIO_CONTROL\n\nv2:\na) Also send ipv4 igmp messages with TC_PRIO_CONTROL\n\nCc: William Manley \u003cwilliam.manley@youview.com\u003e\nCc: Lukas Tribus \u003cluky-37@hotmail.com\u003e\nAcked-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "03c633e73353d3c116cab6164933d69ee2180470",
      "tree": "a8ce3baa7df828490c8ea1635b624794ed30b32c",
      "parents": [
        "c26bf4a51308c85a6f97628253b99767a84ff90a"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Thu Jul 25 14:08:04 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 27 22:18:00 2013 -0700"
      },
      "message": "pktgen: Use ip_send_check() to compute checksum\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c26bf4a51308c85a6f97628253b99767a84ff90a",
      "tree": "5c59f55f34fe58225fd37789ce14689d2c4005b9",
      "parents": [
        "82a54d0ebbee03a8dcf4e1e4016a53fed4d6c933"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Thu Jul 25 18:12:18 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 27 22:16:36 2013 -0700"
      },
      "message": "pktgen: Add UDPCSUM flag to support UDP checksums\n\nUDP checksums are optional, hence pktgen has been omitting them in\nfavour of performance. The optional flag UDPCSUM enables UDP\nchecksumming. If the output device supports hardware checksumming\nthe skb is prepared and marked CHECKSUM_PARTIAL, otherwise the\nchecksum is generated in software.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nCc: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82a54d0ebbee03a8dcf4e1e4016a53fed4d6c933",
      "tree": "6ffaeb247c68620fe550fd717e9beb6d00b3b896",
      "parents": [
        "a648ab58f28ceb158a5fca34ec876dbe5a0d97bf"
      ],
      "author": {
        "name": "Asias He",
        "email": "asias@redhat.com",
        "time": "Thu Jul 25 17:39:34 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 27 22:14:06 2013 -0700"
      },
      "message": "VSOCK: Move af_vsock.h and vsock_addr.h to include/net\n\nThis is useful for other VSOCK transport implemented outside the\nnet/vmw_vsock/ directory to use these headers.\n\nSigned-off-by: Asias He \u003casias@redhat.com\u003e\nAcked-by: Andy King \u003cacking@vmware.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "024ec3deac33ddbd81f3c887506f132b24ea21a7",
      "tree": "32e21519a6180435415dc89628929d0e6ed56ecf",
      "parents": [
        "e7428e95a06fb516fac1308bd0e176e27c0b9287"
      ],
      "author": {
        "name": "Joe Stringer",
        "email": "joe@wand.net.nz",
        "time": "Thu Jul 25 10:52:05 2013 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 27 20:07:15 2013 -0700"
      },
      "message": "net/sctp: Refactor SCTP skb checksum computation\n\nThis patch consolidates the SCTP checksum calculation code from various\nplaces to a single new function, sctp_compute_cksum(skb, offset).\n\nSigned-off-by: Joe Stringer \u003cjoe@wand.net.nz\u003e\nReviewed-by: Julian Anastasov \u003cja@ssi.bg\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93d8bf9fb8f39d6d3e461db60f883d9f81006159",
      "tree": "76a01206abcaa10ba5c2733257306cb85eb75e4d",
      "parents": [
        "f52809483caceaf83bd2c7915a35ace3b6e7b0ef"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "stephen@networkplumber.org",
        "time": "Wed Jul 24 11:51:41 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 26 15:24:32 2013 -0700"
      },
      "message": "bridge: cleanup netpoll code\n\nThis started out with fixing a sparse warning, then I realized that\nthe wrapper function br_netpoll_info could just be collapsed away\nby rolling it into the enable code.\n\nAlso, eliminate unnecessary goto\u0027s\n\nSigned-off-by: Stephen Hemminger \u003cstephen@networkplumber.org\u003e\nReviewed-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18afa4b028b46f8b45ca64f94aefe717c297b07d",
      "tree": "9ef226f810b232cbfc1166340abf006b29c959f2",
      "parents": [
        "c9bee3b7fdecb0c1d070c7b54113b3bdfb9a3d36"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 23 16:13:17 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 17:57:26 2013 -0700"
      },
      "message": "net: Make devnet_rename_seq static\n\nNo users outside net/core/dev.c.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9bee3b7fdecb0c1d070c7b54113b3bdfb9a3d36",
      "tree": "6bcaa39bbd312c070bf31b703df4d6bb2a44fea9",
      "parents": [
        "64dc61306ce7da370833289739e2f52dfc6b37ba"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Jul 22 20:27:07 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 17:54:48 2013 -0700"
      },
      "message": "tcp: TCP_NOTSENT_LOWAT socket option\n\nIdea of this patch is to add optional limitation of number of\nunsent bytes in TCP sockets, to reduce usage of kernel memory.\n\nTCP receiver might announce a big window, and TCP sender autotuning\nmight allow a large amount of bytes in write queue, but this has little\nperformance impact if a large part of this buffering is wasted :\n\nWrite queue needs to be large only to deal with large BDP, not\nnecessarily to cope with scheduling delays (incoming ACKS make room\nfor the application to queue more bytes)\n\nFor most workloads, using a value of 128 KB or less is OK to give\napplications enough time to react to POLLOUT events in time\n(or being awaken in a blocking sendmsg())\n\nThis patch adds two ways to set the limit :\n\n1) Per socket option TCP_NOTSENT_LOWAT\n\n2) A sysctl (/proc/sys/net/ipv4/tcp_notsent_lowat) for sockets\nnot using TCP_NOTSENT_LOWAT socket option (or setting a zero value)\nDefault value being UINT_MAX (0xFFFFFFFF), meaning this has no effect.\n\nThis changes poll()/select()/epoll() to report POLLOUT\nonly if number of unsent bytes is below tp-\u003enosent_lowat\n\nNote this might increase number of sendmsg()/sendfile() calls\nwhen using non blocking sockets,\nand increase number of context switches for blocking sockets.\n\nNote this is not related to SO_SNDLOWAT (as SO_SNDLOWAT is\ndefined as :\n Specify the minimum number of bytes in the buffer until\n the socket layer will pass the data to the protocol)\n\nTested:\n\nnetperf sessions, and watching /proc/net/protocols \"memory\" column for TCP\n\nWith 200 concurrent netperf -t TCP_STREAM sessions, amount of kernel memory\nused by TCP buffers shrinks by ~55 % (20567 pages instead of 45458)\n\nlpq83:~# echo -1 \u003e/proc/sys/net/ipv4/tcp_notsent_lowat\nlpq83:~# (super_netperf 200 -t TCP_STREAM -H remote -l 90 \u0026); sleep 60 ; grep TCP /proc/net/protocols\nTCPv6     1880      2   45458   no     208   yes  ipv6        y  y  y  y  y  y  y  y  y  y  y  y  y  n  y  y  y  y  y\nTCP       1696    508   45458   no     208   yes  kernel      y  y  y  y  y  y  y  y  y  y  y  y  y  n  y  y  y  y  y\n\nlpq83:~# echo 131072 \u003e/proc/sys/net/ipv4/tcp_notsent_lowat\nlpq83:~# (super_netperf 200 -t TCP_STREAM -H remote -l 90 \u0026); sleep 60 ; grep TCP /proc/net/protocols\nTCPv6     1880      2   20567   no     208   yes  ipv6        y  y  y  y  y  y  y  y  y  y  y  y  y  n  y  y  y  y  y\nTCP       1696    508   20567   no     208   yes  kernel      y  y  y  y  y  y  y  y  y  y  y  y  y  n  y  y  y  y  y\n\nUsing 128KB has no bad effect on the throughput or cpu usage\nof a single flow, although there is an increase of context switches.\n\nA bonus is that we hold socket lock for a shorter amount\nof time and should improve latencies of ACK processing.\n\nlpq83:~# echo -1 \u003e/proc/sys/net/ipv4/tcp_notsent_lowat\nlpq83:~# perf stat -e context-switches ./netperf -H 7.7.7.84 -t omni -l 20 -c -i10,3\nOMNI Send TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 7.7.7.84 () port 0 AF_INET : +/-2.500% @ 99% conf.\nLocal       Remote      Local  Elapsed Throughput Throughput  Local Local  Remote Remote Local   Remote  Service\nSend Socket Recv Socket Send   Time               Units       CPU   CPU    CPU    CPU    Service Service Demand\nSize        Size        Size   (sec)                          Util  Util   Util   Util   Demand  Demand  Units\nFinal       Final                                             %     Method %      Method\n1651584     6291456     16384  20.00   17447.90   10^6bits/s  3.13  S      -1.00  U      0.353   -1.000  usec/KB\n\n Performance counter stats for \u0027./netperf -H 7.7.7.84 -t omni -l 20 -c -i10,3\u0027:\n\n           412,514 context-switches\n\n     200.034645535 seconds time elapsed\n\nlpq83:~# echo 131072 \u003e/proc/sys/net/ipv4/tcp_notsent_lowat\nlpq83:~# perf stat -e context-switches ./netperf -H 7.7.7.84 -t omni -l 20 -c -i10,3\nOMNI Send TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 7.7.7.84 () port 0 AF_INET : +/-2.500% @ 99% conf.\nLocal       Remote      Local  Elapsed Throughput Throughput  Local Local  Remote Remote Local   Remote  Service\nSend Socket Recv Socket Send   Time               Units       CPU   CPU    CPU    CPU    Service Service Demand\nSize        Size        Size   (sec)                          Util  Util   Util   Util   Demand  Demand  Units\nFinal       Final                                             %     Method %      Method\n1593240     6291456     16384  20.00   17321.16   10^6bits/s  3.35  S      -1.00  U      0.381   -1.000  usec/KB\n\n Performance counter stats for \u0027./netperf -H 7.7.7.84 -t omni -l 20 -c -i10,3\u0027:\n\n         2,675,818 context-switches\n\n     200.029651391 seconds time elapsed\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-By: Yuchung Cheng \u003cycheng@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64dc61306ce7da370833289739e2f52dfc6b37ba",
      "tree": "3d04f970a54863e025f13c7f9de18c221e16b7d7",
      "parents": [
        "4d58c0252002646ea522f5c6c623e558af459b39"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Jul 22 20:26:31 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 17:54:48 2013 -0700"
      },
      "message": "net: add sk_stream_is_writeable() helper\n\nSeveral call sites use the hardcoded following condition :\n\nsk_stream_wspace(sk) \u003e\u003d sk_stream_min_wspace(sk)\n\nLets use a helper because TCP_NOTSENT_LOWAT support will change this\ncondition for TCP sockets.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91705c61b52029ab5da67a15a23eef08667bf40e",
      "tree": "703e4a25d5ad698b927fd7b59e6c9b0fa109b28d",
      "parents": [
        "d97185466cc83902de49c7bea512651c7af12566"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "dborkman@redhat.com",
        "time": "Tue Jul 23 14:51:47 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 17:53:38 2013 -0700"
      },
      "message": "net: sctp: trivial: update mailing list address\n\nThe SCTP mailing list address to send patches or questions\nto is linux-sctp@vger.kernel.org and not\nlksctp-developers@lists.sourceforge.net anymore. Therefore,\nupdate all occurences.\n\nSigned-off-by: Daniel Borkmann \u003cdborkman@redhat.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Vlad Yasevich \u003cvyasevich@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59ea52dc461ebb05b78545064604d92faf8bb16f",
      "tree": "f7dee0b1591713ba1d47eebe7bf9da86396e9cd1",
      "parents": [
        "9812a9d62a582afb2905e15e51866489115d0765"
      ],
      "author": {
        "name": "Andi Shyti",
        "email": "andi@etezian.org",
        "time": "Mon Jul 22 14:59:16 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 15:46:27 2013 -0700"
      },
      "message": "net: trans_rdma: remove unused function\n\nThis patch gets rid of the following warning:\n\nnet/9p/trans_rdma.c:594:12: warning: ‘rdma_cancelled’ defined but not used [-Wunused-function]\n static int rdma_cancelled(struct p9_client *client, struct p9_req_t *req)\n\nThe rdma_cancelled function is not called anywhere in the kernel\n\nSigned-off-by: Andi Shyti \u003candi@etezian.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9225b23057aeba13957e8033f69a554dc246a80e",
      "tree": "9b6b4a8ad37fe06fffdeb350a02cac7bdc30cd6d",
      "parents": [
        "86a37def2bba8d22f8b512e7c8a0f6f6e197728c"
      ],
      "author": {
        "name": "fan.du",
        "email": "fan.du@windriver.com",
        "time": "Mon Jul 22 14:21:09 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 14:24:56 2013 -0700"
      },
      "message": "net: ipv6 eliminate parameter \"int addrlen\" in function fib6_add_1\n\nThe \"int addrlen\" in fib6_add_1 is rebundant, as we can get it from\nparameter \"struct in6_addr *addr\" once we modified its type.\nAnd also fix some coding style issues in fib6_add_1\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nAcked-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86a37def2bba8d22f8b512e7c8a0f6f6e197728c",
      "tree": "216b3aded2758d5b7af6ee0356d931081d60ef19",
      "parents": [
        "b9959fd3b0fa8ee5f45012ae5258d87ee6852baa"
      ],
      "author": {
        "name": "fan.du",
        "email": "fan.du@windriver.com",
        "time": "Mon Jul 22 14:20:12 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 24 14:24:56 2013 -0700"
      },
      "message": "net ipv6: Remove rebundant rt6i_nsiblings initialization\n\nSeting rt-\u003ert6i_nsiblings to zero is rebundant, because above memset\nzeroed the rest of rt excluding the first dst memember.\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nAcked-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nAcked-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9959fd3b0fa8ee5f45012ae5258d87ee6852baa",
      "tree": "541d67a444cbc9f5ab491dc2d5b0de40aaed0500",
      "parents": [
        "2b52c3ada8f4391d82d8088d9169ac2a8c4d0411"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Sun Jul 21 10:46:25 2013 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 23 17:27:32 2013 -0700"
      },
      "message": "vti: switch to new ip tunnel code\n\nGRE tunnel and IPIP tunnel already switched to the new\nip tunnel code, VTI tunnel can use it too.\n\nCc: Pravin B Shelar \u003cpshelar@nicira.com\u003e\nCc: Stephen Hemminger \u003cstephen@networkplumber.org\u003e\nCc: Saurabh Mohan \u003csaurabh.mohan@vyatta.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b52c3ada8f4391d82d8088d9169ac2a8c4d0411",
      "tree": "71738043e06acbf75da27e91b1a5c3a28a54588d",
      "parents": [
        "c4854ec8c483fb8deea7400c11cd7fd7c03e306c"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Sun Jul 21 03:00:31 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 23 17:20:37 2013 -0700"
      },
      "message": "ip6mr: change the prototype of ip6_mr_forward().\n\nThis patch changes the prototpye of the ip6_mr_forward() method to return void\ninstead of int.\n\nThe ip6_mr_forward() method always returns 0; moreover, the return value of this\nmethod is not checked anywhere.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nAcked-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4854ec8c483fb8deea7400c11cd7fd7c03e306c",
      "tree": "cb3fab37794007da32a71276164383c576c63a65",
      "parents": [
        "45c9149024dd082f1ac51fe46b0622f7c923f77f"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Sat Jul 20 15:09:28 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 23 17:01:05 2013 -0700"
      },
      "message": "ipmr: change the prototype of ip_mr_forward().\n\nThis patch changes the prototpye of the ip_mr_forward() method to return void\ninstead of int.\n\nThe ip_mr_forward() method always returns 0; moreover, the return value of this\nmethod is not checked anywhere.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nAcked-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4aa5dee4d9997879adff858514844efab5a15a01",
      "tree": "f3f3bf83f34dd832c8e163095c03e6aff29f20df",
      "parents": [
        "fc423ff00df3a19554414eed80aef9de9b50313e"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jiri@resnulli.us",
        "time": "Sat Jul 20 12:13:53 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 23 16:52:47 2013 -0700"
      },
      "message": "net: convert resend IGMP to notifier event\n\nUntil now, bond_resend_igmp_join_requests() looks for vlans attached to\nbonding device, bridge where bonding act as port manually. It does not\ncare of other scenarios, like stacked bonds or team device above. Make\nthis more generic and use netdev notifier to propagate the event to\nupper devices and to actually call ip_mc_rejoin_groups().\n\nSigned-off-by: Jiri Pirko \u003cjiri@resnulli.us\u003e\nAcked-by: Veaceslav Falico \u003cvfalico@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed08495c31bb991de636d2488abaa50b39f2ff4a",
      "tree": "ecbd6be76046918abb5a61941d0f845ea2c97b27",
      "parents": [
        "59c9af4234b0c21a1ed05cf65bf014d0c1a67bfd"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Mon Jul 22 16:20:48 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 22 17:53:42 2013 -0700"
      },
      "message": "tcp: use RTT from SACK for RTO\n\nIf RTT is not available because Karn\u0027s check has failed or no\nnew packet is acked, use the RTT measured from SACK to estimate\nthe RTO. The sender can continue to estimate the RTO during loss\nrecovery or reordering event upon receiving non-partial ACKs.\n\nThis also changes when the RTO is re-armed. Previously it is\nonly re-armed when some data is cummulatively acknowledged (i.e.,\nSND.UNA advances), but now it is re-armed whenever RTT estimator\nis updated. This feature is particularly useful to reduce spurious\ntimeout for buffer bloat including cellular carriers [1], and\nRTT estimation on reordering events.\n\n[1] \"An In-depth Study of LTE: Effect of Network Protocol and\n Application Behavior on Performance\", In Proc. of SIGCOMM 2013\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59c9af4234b0c21a1ed05cf65bf014d0c1a67bfd",
      "tree": "04c219fec569b465394cd4c9497f74e74e4f802a",
      "parents": [
        "5b08e47caf1f2034a3a5b566bbccc8b0be3961ca"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Mon Jul 22 16:20:47 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 22 17:53:42 2013 -0700"
      },
      "message": "tcp: measure RTT from new SACK\n\nTake RTT sample if an ACK selectively acks some sequences that\nhave never been retransmitted. The Karn\u0027s algorithm does not apply\neven if that ACK (s)acks other retransmitted sequences, because it\nmust been generated by an original but perhaps out-of-order packet.\nThere is no ambiguity. In case when multiple blocks are newly\nsacked because of ACK losses the earliest block is used to\nmeasure RTT, similar to cummulative ACKs.\n\nSuch RTT samples allow the sender to estimate the RTO during loss\nrecovery and packet reordering events. It is still useful even with\nTCP timestamps. That\u0027s because during these events the SND.UNA may\nnot advance preventing RTT samples from TS ECR (thus the FLAG_ACKED\ncheck before calling tcp_ack_update_rtt()).  Therefore this new\nRTT source is complementary to existing ACK and TS RTT mechanisms.\n\nThis patch does not update the RTO. It is done in the next patch.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b08e47caf1f2034a3a5b566bbccc8b0be3961ca",
      "tree": "5cdd3ad01a4b854c80bad612051ac7ce7140e948",
      "parents": [
        "375fe02c91792917aa26d68a87ab110d1937f44e"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Mon Jul 22 16:20:46 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 22 17:53:42 2013 -0700"
      },
      "message": "tcp: prefer packet timing to TS-ECR for RTT\n\nPrefer packet timings to TS-ecr for RTT measurements when both\nsources are available. That\u0027s because broken middle-boxes and remote\npeer can return packets with corrupted TS ECR fields. Similarly most\ncongestion controls that require RTT signals favor timing-based\nsources as well. Also check for bad TS ECR values to avoid RTT\nblow-ups. It has happened on production Web servers.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "375fe02c91792917aa26d68a87ab110d1937f44e",
      "tree": "2a6c1205f6b136f7ac55f191912b386a0f3b2491",
      "parents": [
        "c3f51d5f387b552b9d9fd7f41e19b84929712f82"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Mon Jul 22 16:20:45 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 22 17:53:42 2013 -0700"
      },
      "message": "tcp: consolidate SYNACK RTT sampling\n\nThe first patch consolidates SYNACK and other RTT measurement to use a\ncentral function tcp_ack_update_rtt(). A (small) bonus is now SYNACK\nRTT measurement happens after PAWS check, potentially reducing the\nimpact of RTO seeding on bad TCP timestamps values.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb820f8e4b7f73d1a32175e6591735b25bb5398d",
      "tree": "0a361e6465be4bd549c17d957708d2e280914f21",
      "parents": [
        "0887a576a17965732270b2f8d37821fc02ef2feb"
      ],
      "author": {
        "name": "Richard Cochran",
        "email": "richardcochran@gmail.com",
        "time": "Fri Jul 19 19:40:09 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 22 14:58:19 2013 -0700"
      },
      "message": "net: Provide a generic socket error queue delivery method for Tx time stamps.\n\nThis patch moves the private error queue delivery function from the\naf_packet code to the core socket method. In this way, network layers\nonly needing the error queue for transmit time stamping can share common\ncode.\n\nSigned-off-by: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aafee33423e78e86becda986b24a5819a7d16ff7",
      "tree": "f5a2678fbca5fc4a93d8f382343ee64691b07216",
      "parents": [
        "ecb2cf1a6b63825a258ff4fe0d7f3070fbe4676b"
      ],
      "author": {
        "name": "Dragos Foianu",
        "email": "dragos.foianu@gmail.com",
        "time": "Wed Jul 17 12:25:38 2013 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 19 17:34:40 2013 -0700"
      },
      "message": "net/irda: fixed style issues in irttp\n\nApplied error fixes suggested by checpatch.pl\n\nSigned-off-by: Dragos Foianu \u003cdragos.foianu@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ecb2cf1a6b63825a258ff4fe0d7f3070fbe4676b",
      "tree": "4b03d332066d148f0d6c416528c6ba5e874d466a",
      "parents": [
        "ee114b97e67b2a572f94982567a21ac4ee17c133",
        "3e3aac497513c669e1c62c71e1d552ea85c1d974"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 18 20:08:47 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 18 20:08:47 2013 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n \"A couple interesting SKB fragment handling fixes, plus the usual small\n  bits here and there:\n\n   1) Fix 64-bit divide build failure on 32-bit platforms in mlx5, from\n      Tim Gardner.\n\n   2) Get rid of a stupid reimplementation on \"%*phC\" in our sysfs MAC\n      address printing helper.\n\n   3) Fix NETIF_F_SG capability advertisement in hyperv driver, if the\n      device can\u0027t do checksumming offloads then it shouldn\u0027t say it can\n      do SG either.  From Haiyang Zhang.\n\n   4) bgmac needs to depend on PHYLIB, from Hauke Mehrtens.\n\n   5) Don\u0027t leak DMA mappings on mapping failures, from Neil Horman.\n\n   6) We need to reset the transport header of SKBs in ipv4 before we\n      attempt to perform early socket demux, just like ipv6 does.  From\n      Eric Dumazet.\n\n   7) Add missing locking on vxlan device removal, from Stephen\n      Hemminger.\n\n   8) xen-netfront has to make two passes over an SKB to prepare it for\n      transfer.  One pass calculates the number of slots needed, the\n      second massages the SKB and fills the slots.  Unfortunately, the\n      first pass doesn\u0027t calculate the number of slots properly so we\n      can end up trying to build a MAX_SKB_FRAGS + 1 SKB which doesn\u0027t\n      work out so well.  Fix from Jan Beulich with help and discussion\n      with several others.\n\n   9) Fix a similar problem in tun and macvtap, which have to split up\n      scatter-gather elements at PAGE_SIZE boundaries.  Don\u0027t do\n      zerocopy if it would result in a \u003e MAX_SKB_FRAGS skb.  Fixes from\n      Jason Wang.\n\n  10) On receive, once we\u0027ve decoded the VLAN state completely, clear\n      skb-\u003evlan_tci.  Otherwise demuxed tunnels underneath can trigger\n      the VLAN code again, corrupting the packet.  Fix from Eric\n      Dumazet\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  vlan: fix a race in egress prio management\n  vlan: mask vlan prio bits\n  macvtap: do not zerocopy if iov needs more pages than MAX_SKB_FRAGS\n  tuntap: do not zerocopy if iov needs more pages than MAX_SKB_FRAGS\n  pkt_sched: sch_qfq: remove a source of high packet delay/jitter\n  xen-netfront: pull on receive skb may need to happen earlier\n  vxlan: add necessary locking on device removal\n  hyperv: Fix the NETIF_F_SG flag setting in netvsc\n  net: Fix sysfs_format_mac() code duplication.\n  be2net: Fix to avoid hardware workaround when not needed\n  macvtap: do not assume 802.1Q when send vlan packets\n  macvtap: fix the missing ret value of TUNSETQUEUE\n  ipv4: set transport header earlier\n  mlx5 core: Fix __udivdi3 when compiling for 32 bit arches\n  bgmac: add dependency to phylib\n  net/irda: fixed style issues in irlan_eth\n  ethtool: fixed trailing statements in ethtool\n  ndisc: bool initializations should use true and false\n  atl1e: unmap partially mapped skb on dma error and free skb\n"
    },
    {
      "commit": "3e3aac497513c669e1c62c71e1d552ea85c1d974",
      "tree": "3bedf6a0f9585d0279f8a791998a29d70214fea9",
      "parents": [
        "d4b812dea4a236f729526facf97df1a9d18e191c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Jul 18 09:35:10 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 18 13:07:13 2013 -0700"
      },
      "message": "vlan: fix a race in egress prio management\n\negress_priority_map[] hash table updates are protected by rtnl,\nand we never remove elements until device is dismantled.\n\nWe have to make sure that before inserting an new element in hash table,\nall its fields are committed to memory or else another cpu could\nfind corrupt values and crash.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d4b812dea4a236f729526facf97df1a9d18e191c",
      "tree": "55effa330847edd70cf20502603c23e4ca8084a4",
      "parents": [
        "ece793fcfc417b3925844be88a6a6dc82ae8f7c6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Jul 18 07:19:26 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 18 13:05:23 2013 -0700"
      },
      "message": "vlan: mask vlan prio bits\n\nIn commit 48cc32d38a52d0b68f91a171a8d00531edc6a46e\n(\"vlan: don\u0027t deliver frames for unknown vlans to protocols\")\nFlorian made sure we set pkt_type to PACKET_OTHERHOST\nif the vlan id is set and we could find a vlan device for this\nparticular id.\n\nBut we also have a problem if prio bits are set.\n\nSteinar reported an issue on a router receiving IPv6 frames with a\nvlan tag of 4000 (id 0, prio 2), and tunneled into a sit device,\nbecause skb-\u003evlan_tci is set.\n\nForwarded frame is completely corrupted : We can see (8100:4000)\nbeing inserted in the middle of IPv6 source address :\n\n16:48:00.780413 IP6 2001:16d8:8100:4000:ee1c:0:9d9:bc87 \u003e\n9f94:4d95:2001:67c:29f4::: ICMP6, unknown icmp6 type (0), length 64\n       0x0000:  0000 0029 8000 c7c3 7103 0001 a0ae e651\n       0x0010:  0000 0000 ccce 0b00 0000 0000 1011 1213\n       0x0020:  1415 1617 1819 1a1b 1c1d 1e1f 2021 2223\n       0x0030:  2425 2627 2829 2a2b 2c2d 2e2f 3031 3233\n\nIt seems we are not really ready to properly cope with this right now.\n\nWe can probably do better in future kernels :\nvlan_get_ingress_priority() should be a netdev property instead of\na per vlan_dev one.\n\nFor stable kernels, lets clear vlan_tci to fix the bugs.\n\nReported-by: Steinar H. Gunderson \u003csesse@google.com\u003e\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87f40dd6ce7042caca0b3b557e8923127f51f902",
      "tree": "a81a1db77339e7c7bb5ea8aa827b17c59a3274ac",
      "parents": [
        "093b9c71b6e450e375f4646ba86faed0195ec7df"
      ],
      "author": {
        "name": "Paolo Valente",
        "email": "paolo.valente@unimore.it",
        "time": "Tue Jul 16 08:52:30 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 18 13:02:00 2013 -0700"
      },
      "message": "pkt_sched: sch_qfq: remove a source of high packet delay/jitter\n\nQFQ+ inherits from QFQ a design choice that may cause a high packet\ndelay/jitter and a severe short-term unfairness. As QFQ, QFQ+ uses a\nspecial quantity, the system virtual time, to track the service\nprovided by the ideal system it approximates. When a packet is\ndequeued, this quantity must be incremented by the size of the packet,\ndivided by the sum of the weights of the aggregates waiting to be\nserved. Tracking this sum correctly is a non-trivial task, because, to\npreserve tight service guarantees, the decrement of this sum must be\ndelayed in a special way [1]: this sum can be decremented only after\nthat its value would decrease also in the ideal system approximated by\nQFQ+. For efficiency, QFQ+ keeps track only of the \u0027instantaneous\u0027\nweight sum, increased and decreased immediately as the weight of an\naggregate changes, and as an aggregate is created or destroyed (which,\nin its turn, happens as a consequence of some class being\ncreated/destroyed/changed). However, to avoid the problems caused to\nservice guarantees by these immediate decreases, QFQ+ increments the\nsystem virtual time using the maximum value allowed for the weight\nsum, 2^10, in place of the dynamic, instantaneous value. The\ninstantaneous value of the weight sum is used only to check whether a\nrequest of weight increase or a class creation can be satisfied.\n\nUnfortunately, the problems caused by this choice are worse than the\ntemporary degradation of the service guarantees that may occur, when a\nclass is changed or destroyed, if the instantaneous value of the\nweight sum was used to update the system virtual time. In fact, the\nfraction of the link bandwidth guaranteed by QFQ+ to each aggregate is\nequal to the ratio between the weight of the aggregate and the sum of\nthe weights of the competing aggregates. The packet delay guaranteed\nto the aggregate is instead inversely proportional to the guaranteed\nbandwidth. By using the maximum possible value, and not the actual\nvalue of the weight sum, QFQ+ provides each aggregate with the worst\npossible service guarantees, and not with service guarantees related\nto the actual set of competing aggregates. To see the consequences of\nthis fact, consider the following simple example.\n\nSuppose that only the following aggregates are backlogged, i.e., that\nonly the classes in the following aggregates have packets to transmit:\none aggregate with weight 10, say A, and ten aggregates with weight 1,\nsay B1, B2, ..., B10. In particular, suppose that these aggregates are\nalways backlogged. Given the weight distribution, the smoothest and\nfairest service order would be:\nA B1 A B2 A B3 A B4 A B5 A B6 A B7 A B8 A B9 A B10 A B1 A B2 ...\n\nQFQ+ would provide exactly this optimal service if it used the actual\nvalue for the weight sum instead of the maximum possible value, i.e.,\n11 instead of 2^10. In contrast, since QFQ+ uses the latter value, it\nserves aggregates as follows (easy to prove and to reproduce\nexperimentally):\nA B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 A A A A A A A A A A B1 B2 ... B10 A A ...\n\nBy replacing 10 with N in the above example, and by increasing N, one\ncan increase at will the maximum packet delay and the jitter\nexperienced by the classes in aggregate A.\n\nThis patch addresses this issue by just using the above\n\u0027instantaneous\u0027 value of the weight sum, instead of the maximum\npossible value, when updating the system virtual time.  After the\ninstantaneous weight sum is decreased, QFQ+ may deviate from the ideal\nservice for a time interval in the order of the time to serve one\nmaximum-size packet for each backlogged class. The worst-case extent\nof the deviation exhibited by QFQ+ during this time interval [1] is\nbasically the same as of the deviation described above (but, without\nthis patch, QFQ+ suffers from such a deviation all the time). Finally,\nthis patch modifies the comment to the function qfq_slot_insert, to\nmake it coherent with the fact that the weight sum used by QFQ+ can\nnow be lower than the maximum possible value.\n\n[1] P. Valente, \"Extending WF2Q+ to support a dynamic traffic mix\",\nProceedings of AAA-IDEA\u002705, June 2005.\n\nSigned-off-by: Paolo Valente \u003cpaolo.valente@unimore.it\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3f334c20811d2970cbe14dbd2db3c08da0220fe8",
      "tree": "823577e6c7cb2fddfa5330b02d1cb29281838207",
      "parents": [
        "c66bce9b655aac0869254dcaefd2365145477f53",
        "0b776b062843b63cb4c9acdfc092b2581be3c2f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 18 10:50:26 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 18 10:50:26 2013 -0700"
      },
      "message": "Merge branch \u0027cpuinit_phase2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull phase two of __cpuinit removal from Paul Gortmaker:\n \"With the __cpuinit infrastructure removed earlier, this group of\n  commits only removes the function/data tagging that was done with the\n  various (now no-op) __cpuinit related prefixes.\n\n  Now that the dust has settled with yesterday\u0027s v3.11-rc1, there\n  hopefully shouldn\u0027t be any new users leaking back in tree, but I think\n  we can leave the harmless no-op stubs there for a release as a\n  courtesy to those who still have out of tree stuff and weren\u0027t paying\n  attention.\n\n  Although the commits are against the recent tag to allow for minor\n  context refreshes for things like yesterday\u0027s v3.11-rc1~ slab content,\n  the patches have been largely unchanged for weeks, aside from such\n  trivial updates.\n\n  For detail junkies, the largely boring and mostly irrelevant history\n  of the patches can be viewed at:\n\n    http://git.kernel.org/cgit/linux/kernel/git/paulg/cpuinit-delete.git\n\n  If nothing else, I guess it does at least demonstrate the level of\n  involvement required to shepherd such a treewide change to completion.\n\n  This is the same repository of patches that has been applied to the\n  end of the daily linux-next branches for the past several weeks\"\n\n* \u0027cpuinit_phase2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (28 commits)\n  block: delete __cpuinit usage from all block files\n  drivers: delete __cpuinit usage from all remaining drivers files\n  kernel: delete __cpuinit usage from all core kernel files\n  rcu: delete __cpuinit usage from all rcu files\n  net: delete __cpuinit usage from all net files\n  acpi: delete __cpuinit usage from all acpi files\n  hwmon: delete __cpuinit usage from all hwmon files\n  cpufreq: delete __cpuinit usage from all cpufreq files\n  clocksource+irqchip: delete __cpuinit usage from all related files\n  x86: delete __cpuinit usage from all x86 files\n  score: delete __cpuinit usage from all score files\n  xtensa: delete __cpuinit usage from all xtensa files\n  openrisc: delete __cpuinit usage from all openrisc files\n  m32r: delete __cpuinit usage from all m32r files\n  hexagon: delete __cpuinit usage from all hexagon files\n  frv: delete __cpuinit usage from all frv files\n  cris: delete __cpuinit usage from all cris files\n  metag: delete __cpuinit usage from all metag files\n  tile: delete __cpuinit usage from all tile files\n  sh: delete __cpuinit usage from all sh files\n  ...\n"
    },
    {
      "commit": "61f98b0fca802d7e0191072606519e2230a6226d",
      "tree": "2f6d5f85ea21042c0299e6204c9a99f3a7172279",
      "parents": [
        "c0d15cc7ee8c0d1970197d9eb1727503bcdd2471",
        "b2781e1021525649c0b33fffd005ef219da33926"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 17 13:43:55 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 17 13:43:55 2013 -0700"
      },
      "message": "Merge branch \u0027for-3.11\u0027 of git://linux-nfs.org/~bfields/linux\n\nPull nfsd bugfixes from Bruce Fields:\n \"Just three minor bugfixes\"\n\n* \u0027for-3.11\u0027 of git://linux-nfs.org/~bfields/linux:\n  svcrdma: underflow issue in decode_write_list()\n  nfsd4: fix minorversion support interface\n  lockd: protect nlm_blocked access in nlmsvc_retry_blocked\n"
    },
    {
      "commit": "ae8e9c5a1a7889315229a741fd48a5dd0bc2964c",
      "tree": "6ea199fad466af8253da9ae617ce112bb182ee43",
      "parents": [
        "52fe29e4bb614367c108b717c6d7fe5953eb7af3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 17:09:15 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 17:09:22 2013 -0700"
      },
      "message": "net: Fix sysfs_format_mac() code duplication.\n\nIt\u0027s just a duplicate implementation of \"%*phC\".  Thanks to Joe\nPerches for showing that we had exactly this support in the\nlib/vsprintf.c code already.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21d1196a35f5686c4323e42a62fdb4b23b0ab4a3",
      "tree": "559c3cf32d2da124090fd6d256948d0d59eeb7e0",
      "parents": [
        "9a0f06fee1f453370e87b6568dc1d39d676f53fc"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Jul 15 20:03:19 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 12:59:28 2013 -0700"
      },
      "message": "ipv4: set transport header earlier\n\ncommit 45f00f99d6e (\"ipv4: tcp: clean up tcp_v4_early_demux()\") added a\nperformance regression for non GRO traffic, basically disabling\nIP early demux.\n\nIPv6 stack resets transport header in ip6_rcv() before calling\nIP early demux in ip6_rcv_finish(), while IPv4 does this only in\nip_local_deliver_finish(), _after_ IP early demux.\n\nGRO traffic happened to enable IP early demux because transport header\nis also set in inet_gro_receive()\n\nInstead of reverting the faulty commit, we can make IPv4/IPv6 behave the\nsame : transport_header should be set in ip_rcv() instead of\nip_local_deliver_finish()\n\nip_local_deliver_finish() can also use skb_network_header_len() which is\nfaster than ip_hdrlen()\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b6a82dd233cabcc1517c0744d7a8f0b61f559caf",
      "tree": "51f2d12c18cef956269f05a1ec63a7842f9c5555",
      "parents": [
        "8a73125c36809527236e1d8d367a09a3f0e9f9e1"
      ],
      "author": {
        "name": "Dragos Foianu",
        "email": "dragos.foianu@gmail.com",
        "time": "Sat Jul 13 15:03:55 2013 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 12:16:03 2013 -0700"
      },
      "message": "net/irda: fixed style issues in irlan_eth\n\nApplied fixes suggested by checkpatch.pl\n\nSigned-off-by: Dragos Foianu \u003cdragos.foianu@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a73125c36809527236e1d8d367a09a3f0e9f9e1",
      "tree": "b9ac90f72c821b98509ffe2515e813efe8be47af",
      "parents": [
        "f2f79cca13e36972978ffd1fb6483c8a1141b510"
      ],
      "author": {
        "name": "Dragos Foianu",
        "email": "dragos.foianu@gmail.com",
        "time": "Sat Jul 13 14:43:00 2013 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 12:14:51 2013 -0700"
      },
      "message": "ethtool: fixed trailing statements in ethtool\n\nApplied fixes suggested by checkpatch.pl.\n\nSigned-off-by: Dragos Foianu \u003cdragos.foianu@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2f79cca13e36972978ffd1fb6483c8a1141b510",
      "tree": "0fdb6da81e79e903b31abe25aa2ef54288a0ea46",
      "parents": [
        "584ec4355355ffac43571b02a314d43eb2f7fcbf"
      ],
      "author": {
        "name": "Daniel Baluta",
        "email": "dbaluta@ixiacom.com",
        "time": "Sat Jul 13 11:26:51 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 16 12:13:31 2013 -0700"
      },
      "message": "ndisc: bool initializations should use true and false\n\nSigned-off-by: Daniel Baluta \u003cdbaluta@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2781e1021525649c0b33fffd005ef219da33926",
      "tree": "8169f00611f6e56b1201d56fbbcd9e4020859231",
      "parents": [
        "35f7a14fc1180164d6358a5885031fc187ef1bfa"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Fri Jul 12 09:39:03 2013 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Jul 15 11:46:23 2013 -0400"
      },
      "message": "svcrdma: underflow issue in decode_write_list()\n\nMy static checker marks everything from ntohl() as untrusted and it\ncomplains we could have an underflow problem doing:\n\n\treturn (u32 *)\u0026ary-\u003ewc_array[nchunks];\n\nAlso on 32 bit systems the upper bound check could overflow.\n\nCc: stable@vger.kernel.org\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "013dbb325be702d777118d5e4ffefff3dad2b153",
      "tree": "965c954cf64f8e2e4072381cc35bc04d88ae1605",
      "parents": [
        "fe7bf106ebc22730797ba9b51308b166d68b77f9"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Jun 19 14:32:33 2013 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Jul 14 19:36:58 2013 -0400"
      },
      "message": "net: delete __cpuinit usage from all net files\n\nThe __cpuinit type of throwaway sections might have made sense\nsome time ago when RAM was more constrained, but now the savings\ndo not offset the cost and complications.  For example, the fix in\ncommit 5e427ec2d0 (\"x86: Fix bit corruption at CPU resume time\")\nis a good example of the nasty type of bugs that can be created\nwith improper use of the various __init prefixes.\n\nAfter a discussion on LKML[1] it was decided that cpuinit should go\nthe way of devinit and be phased out.  Once all the users are gone,\nwe can then finally remove the macros themselves from linux/init.h.\n\nThis removes all the net/* uses of the __cpuinit macros\nfrom all C files.\n\n[1] https://lkml.org/lkml/2013/5/20/589\n\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "41d9884c44237cd66e2bdbc412028b29196b344c",
      "tree": "7a386f6de2f07c01f87f3a16965c9bb8b40f63c1",
      "parents": [
        "63345b4794aef4ebe16502cfe35b02bc9822d763",
        "dae3794fd603b92dcbac2859fe0bc7fe129a5188"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 11:42:26 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 11:42:26 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull more vfs stuff from Al Viro:\n \"O_TMPFILE ABI changes, Oleg\u0027s fput() series, misc cleanups, including\n  making simple_lookup() usable for filesystems with non-NULL s_d_op,\n  which allows us to get rid of quite a bit of ugliness\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:\n  sunrpc: now we can just set -\u003es_d_op\n  cgroup: we can use simple_lookup() now\n  efivarfs: we can use simple_lookup() now\n  make simple_lookup() usable for filesystems that set -\u003es_d_op\n  configfs: don\u0027t open-code d_alloc_name()\n  __rpc_lookup_create_exclusive: pass string instead of qstr\n  rpc_create_*_dir: don\u0027t bother with qstr\n  llist: llist_add() can use llist_add_batch()\n  llist: fix/simplify llist_add() and llist_add_batch()\n  fput: turn \"list_head delayed_fput_list\" into llist_head\n  fs/file_table.c:fput(): add comment\n  Safer ABI for O_TMPFILE\n"
    },
    {
      "commit": "dae3794fd603b92dcbac2859fe0bc7fe129a5188",
      "tree": "cb6f142aeb4089e23e85fd9732d628b82ae5f667",
      "parents": [
        "786e1448d9c5d2a469bcc9d2aecacd418ee1aca0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 17:55:39 2013 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 17:55:39 2013 +0400"
      },
      "message": "sunrpc: now we can just set -\u003es_d_op\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d3db90b0a448bfdf77ab3d887c9579fead656cc5",
      "tree": "82e363aec98fbbedcfa3f8f26405c711a6771359",
      "parents": [
        "a95e691f9c4a6e24fdeab6d7feae6d5411fe8a69"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 17:09:57 2013 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 17:09:57 2013 +0400"
      },
      "message": "__rpc_lookup_create_exclusive: pass string instead of qstr\n\n... and use d_hash_and_lookup() instead of open-coding it, for fsck sake...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a95e691f9c4a6e24fdeab6d7feae6d5411fe8a69",
      "tree": "ebe142c51935b977861e9d911a505bc63ef8ee29",
      "parents": [
        "e9a17bd73a29e5323c37ec5ffe50fc0e825d3d03"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 16:43:54 2013 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 14 17:02:28 2013 +0400"
      },
      "message": "rpc_create_*_dir: don\u0027t bother with qstr\n\njust pass the name\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "be9c6d9169705504296bdb42ffec8f406691d99f",
      "tree": "60e25d5f33f80a1c09476e770b89ca4661f2e944",
      "parents": [
        "03ce3ca4b02bfc1e6567a7851ae231ad3cc9418e",
        "307f2fb95e9b96b3577916e73d92e104f8f26494"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 17:42:22 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 17:42:22 2013 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n \"Just a bunch of small fixes and tidy ups:\n\n   1) Finish the \"busy_poll\" renames, from Eliezer Tamir.\n\n   2) Fix RCU stalls in IFB driver, from Ding Tianhong.\n\n   3) Linearize buffers properly in tun/macvtap zerocopy code.\n\n   4) Don\u0027t crash on rmmod in vxlan, from Pravin B Shelar.\n\n   5) Spinlock used before init in alx driver, from Maarten Lankhorst.\n\n   6) A sparse warning fix in bnx2x broke TSO checksums, fix from Dmitry\n      Kravkov.\n\n   7) Dummy and ifb driver load failure paths can oops, fixes from Tan\n      Xiaojun and Ding Tianhong.\n\n   8) Correct MTU calculations in IP tunnels, from Alexander Duyck.\n\n   9) Account all TCP retransmits in SNMP stats properly, from Yuchung\n      Cheng.\n\n  10) atl1e and via-rhine do not handle DMA mapping failures properly,\n      from Neil Horman.\n\n  11) Various equal-cost multipath route fixes in ipv6 from Hannes\n      Frederic Sowa\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (36 commits)\n  ipv6: only static routes qualify for equal cost multipathing\n  via-rhine: fix dma mapping errors\n  atl1e: fix dma mapping warnings\n  tcp: account all retransmit failures\n  usb/net/r815x: fix cast to restricted __le32\n  usb/net/r8152: fix integer overflow in expression\n  net: access page-\u003eprivate by using page_private\n  net: strict_strtoul is obsolete, use kstrtoul instead\n  drivers/net/ieee802154: don\u0027t use devm_pinctrl_get_select_default() in probe\n  drivers/net/ethernet/cadence: don\u0027t use devm_pinctrl_get_select_default() in probe\n  drivers/net/can/c_can: don\u0027t use devm_pinctrl_get_select_default() in probe\n  net/usb: add relative mii functions for r815x\n  net/tipc: use %*phC to dump small buffers in hex form\n  qlcnic: Adding Maintainers.\n  gre: Fix MTU sizing check for gretap tunnels\n  pkt_sched: sch_qfq: remove forward declaration of qfq_update_agg_ts\n  pkt_sched: sch_qfq: improve efficiency of make_eligible\n  gso: Update tunnel segmentation to support Tx checksum offload\n  inet: fix spacing in assignment\n  ifb: fix oops when loading the ifb failed\n  ...\n"
    },
    {
      "commit": "307f2fb95e9b96b3577916e73d92e104f8f26494",
      "tree": "7e39923fb1915bfeb1532eabcae35dd150a91f29",
      "parents": [
        "9b4fe5fb0bdd8f31f24cbfe77e38ec8155c250c5"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Fri Jul 12 23:46:33 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 12 16:29:54 2013 -0700"
      },
      "message": "ipv6: only static routes qualify for equal cost multipathing\n\nStatic routes in this case are non-expiring routes which did not get\nconfigured by autoconf or by icmpv6 redirects.\n\nTo make sure we actually get an ecmp route while searching for the first\none in this fib6_node\u0027s leafs, also make sure it matches the ecmp route\nassumptions.\n\nv2:\na) Removed RTF_EXPIRE check in dst.from chain. The check of RTF_ADDRCONF\n   already ensures that this route, even if added again without\n   RTF_EXPIRES (in case of a RA announcement with infinite timeout),\n   does not cause the rt6i_nsiblings logic to go wrong if a later RA\n   updates the expiration time later.\n\nv3:\na) Allow RTF_EXPIRES routes to enter the ecmp route set. We have to do so,\n   because an pmtu event could update the RTF_EXPIRES flag and we would\n   not count this route, if another route joins this set. We now filter\n   only for RTF_GATEWAY|RTF_ADDRCONF|RTF_DYNAMIC, which are flags that\n   don\u0027t get changed after rt6_info construction.\n\nCc: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24ab6bec80861d0c55263047e8bf97e460a32e7b",
      "tree": "251608b48a332a1cc7b0fa0c72fd2e4679dcaf01",
      "parents": [
        "e76385240ee5c812267319c9084e5a0d62bfbf90"
      ],
      "author": {
        "name": "Yuchung Cheng",
        "email": "ycheng@google.com",
        "time": "Fri Jul 12 11:33:04 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 12 16:15:56 2013 -0700"
      },
      "message": "tcp: account all retransmit failures\n\nChange snmp RETRANSFAILS stat to include timeout retransmit failures\nin addition to other loss recoveries.\n\nSigned-off-by: Yuchung Cheng \u003cycheng@google.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "40dadff26539d1695d2a37b44f66c53158439ae9",
      "tree": "3efcb99f70f244369a2bc12ee0ade502fb003311",
      "parents": [
        "92338dc2fb33c8526256a458a520af73d9ab2d14"
      ],
      "author": {
        "name": "Sunghan Suh",
        "email": "sunghan.suh@samsung.com",
        "time": "Fri Jul 12 16:17:23 2013 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 12 16:10:34 2013 -0700"
      },
      "message": "net: access page-\u003eprivate by using page_private\n\nSigned-off-by: Sunghan Suh \u003csunghan.suh@samsung.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "92338dc2fb33c8526256a458a520af73d9ab2d14",
      "tree": "cc22c849786fe20b12946413103bead84b15898e",
      "parents": [
        "fdb70270015466076846a0525f195f59849c1966"
      ],
      "author": {
        "name": "“Cosmin",
        "email": "cosmin90stanescu@gmail.com",
        "time": "Fri Jul 12 09:33:33 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 12 16:09:14 2013 -0700"
      },
      "message": "net: strict_strtoul is obsolete, use kstrtoul instead\n\npatch found using checkpatch.pl\n\nSigned-off-by: Cosmin Stanescu \u003ccosmin90stanescu@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d77e41e12744e53ca7f98f920350998b5f00c93a",
      "tree": "d2c69e8c5417798ffba6916df6d260984122e200",
      "parents": [
        "7ad031ee468e4ed9196215394d7e18a78a66a7da"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Wed Jul 10 17:30:34 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 17:03:36 2013 -0700"
      },
      "message": "net/tipc: use %*phC to dump small buffers in hex form\n\nInstead of passing each byte by stack let\u0027s use nice specifier for that.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c91e162e058bb91b7766f26f4d5823a21941026",
      "tree": "430170c009409c6ea04eae1718e232a2a8c0621a",
      "parents": [
        "88d4f419a43b474a4524f41f55c36bee13416bdd"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Thu Jul 11 13:12:22 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 16:12:03 2013 -0700"
      },
      "message": "gre: Fix MTU sizing check for gretap tunnels\n\nThis change fixes an MTU sizing issue seen with gretap tunnels when non-gso\npackets are sent from the interface.\n\nIn my case I was able to reproduce the issue by simply sending a ping of\n1421 bytes with the gretap interface created on a device with a standard\n1500 mtu.\n\nThis fix is based on the fact that the tunnel mtu is already adjusted by\ndev-\u003ehard_header_len so it would make sense that any packets being compared\nagainst that mtu should also be adjusted by hard_header_len and the tunnel\nheader instead of just the tunnel header.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nReported-by: Cong Wang \u003camwang@redhat.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88d4f419a43b474a4524f41f55c36bee13416bdd",
      "tree": "79a496331241109fc98752c14565a0f6453fad7e",
      "parents": [
        "87f1369d6e2e820c77cf9eac542eed4dcf036f64"
      ],
      "author": {
        "name": "Paolo Valente",
        "email": "paolo.valente@unimore.it",
        "time": "Wed Jul 10 15:46:09 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 13:01:07 2013 -0700"
      },
      "message": "pkt_sched: sch_qfq: remove forward declaration of qfq_update_agg_ts\n\nThis patch removes the forward declaration of qfq_update_agg_ts, by moving\nthe definition of the function above its first call. This patch also\nremoves a useless forward declaration of qfq_schedule_agg.\n\nReported-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paolo Valente \u003cpaolo.valente@unimore.it\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87f1369d6e2e820c77cf9eac542eed4dcf036f64",
      "tree": "65cbaa15e9378cc680aa2db5b00d99abdfea1a61",
      "parents": [
        "cdbaa0bb26d8116d00be24e6b49043777b382f3a"
      ],
      "author": {
        "name": "Paolo Valente",
        "email": "paolo.valente@unimore.it",
        "time": "Wed Jul 10 15:46:08 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 13:01:07 2013 -0700"
      },
      "message": "pkt_sched: sch_qfq: improve efficiency of make_eligible\n\nIn make_eligible, a mask is used to decide which groups must become eligible:\nthe i-th group becomes eligible only if the i-th bit of the mask (from the\nright) is set. The mask is computed by left-shifting a 1 by a given number of\nplaces, and decrementing the result.  The shift is performed on a ULL to avoid\nproblems in case the number of places to shift is higher than 31.  On a 32-bit\nmachine, this is more costly than working on an UL. This patch replaces such a\ncostly operation with two cheaper branches.\n\nThe trick is based on the following fact: in case of a shift of at least 32\nplaces, the resulting mask has at least the 32 less significant bits set,\nwhereas the total number of groups is lower than 32.  As a consequence, in this\ncase it is enough to just set the 32 less significant bits of the mask with a\ncheaper ~0UL. In the other case, the shift can be safely performed on a UL.\n\nReported-by: David S. Miller \u003cdavem@davemloft.net\u003e\nReported-by: David Laight \u003cDavid.Laight@ACULAB.COM\u003e\nSigned-off-by: Paolo Valente \u003cpaolo.valente@unimore.it\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cdbaa0bb26d8116d00be24e6b49043777b382f3a",
      "tree": "51f4ebf87605daf9637d6ef5f36e7e1f80768aa1",
      "parents": [
        "3b8ccd447375acebed9af0a3798e1ab4e58bedf4"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Wed Jul 10 17:05:06 2013 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 12:18:49 2013 -0700"
      },
      "message": "gso: Update tunnel segmentation to support Tx checksum offload\n\nThis change makes it so that the GRE and VXLAN tunnels can make use of Tx\nchecksum offload support provided by some drivers via the hw_enc_features.\nWithout this fix enabling GSO means sacrificing Tx checksum offload and\nthis actually leads to a performance regression as shown below:\n\n            Utilization\n            Send\nThroughput  local         GSO\n10^6bits/s  % S           state\n  6276.51   8.39          enabled\n  7123.52   8.42          disabled\n\nTo resolve this it was necessary to address two items.  First\nnetif_skb_features needed to be updated so that it would correctly handle\nthe Trans Ether Bridging protocol without impacting the need to check for\nQ-in-Q tagging.  To do this it was necessary to update harmonize_features\nso that it used skb_network_protocol instead of just using the outer\nprotocol.\n\nSecond it was necessary to update the GRE and UDP tunnel segmentation\noffloads so that they would reset the encapsulation bit and inner header\noffsets after the offload was complete.\n\nAs a result of this change I have seen the following results on a interface\nwith Tx checksum enabled for encapsulated frames:\n\n            Utilization\n            Send\nThroughput  local         GSO\n10^6bits/s  % S           state\n  7123.52   8.42          disabled\n  8321.75   5.43          enabled\n\nv2: Instead of replacing refrence to skb-\u003eprotocol with\n    skb_network_protocol just replace the protocol reference in\n    harmonize_features to allow for double VLAN tag checks.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1466b77a7be75144dee1cb09839be3435854dd0b",
      "tree": "977a0b6c1cd69ff98e5027359bb7de7b8897276a",
      "parents": [
        "19d2f8e0fb7bba99cc585d2467e9fa54a84c8557",
        "eeee245268c951262b861bc1be4e9dc812352499"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 12:11:35 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 12:11:35 2013 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.11-2\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull second set of NFS client updates from Trond Myklebust:\n \"This mainly contains some small readdir optimisations that had\n  dependencies on Al Viro\u0027s readdir rewrite.  There is also a fix for a\n  nasty deadlock which surfaced earlier in this merge window.\n\n  Highlights include:\n   - Fix an_rpc pipefs regression that causes a deadlock on mount\n   - Readdir optimisations by Scott Mayhew and Jeff Layton\n   - clean up the rpc_pipefs dentry operation setup\"\n\n* tag \u0027nfs-for-3.11-2\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs:\n  SUNRPC: Fix a deadlock in rpc_client_register()\n  rpc_pipe: rpc_dir_inode_operations can be static\n  NFS: Allow nfs_updatepage to extend a write under additional circumstances\n  NFS: Make nfs_readdir revalidate less often\n  NFS: Make nfs_attribute_cache_expired() non-static\n  rpc_pipe: set dentry operations at d_alloc time\n  nfs: set verifier on existing dentries in nfs_prime_dcache\n"
    },
    {
      "commit": "3b8ccd447375acebed9af0a3798e1ab4e58bedf4",
      "tree": "4c5be56f1d86d7c310102e7967d4e80767e2d993",
      "parents": [
        "f2966cd5691058b8674a20766525bedeaea9cbcf"
      ],
      "author": {
        "name": "Camelia Groza",
        "email": "camelia.groza@gmail.com",
        "time": "Thu Jul 11 09:55:51 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 12:02:39 2013 -0700"
      },
      "message": "inet: fix spacing in assignment\n\nFound using checkpatch.pl\n\nSigned-off-by: Camelia Groza \u003ccamelia.groza@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "afc154e978de1eb11c555bc8bcec1552f75ebc43",
      "tree": "9398696864b0d770b0c108eda89dc4cf1bbf4482",
      "parents": [
        "1b4fc0e249d61916b8a525b0e7b3c028232457c9"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Thu Jul 11 12:43:42 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 11:51:10 2013 -0700"
      },
      "message": "ipv6: fix route selection if kernel is not compiled with CONFIG_IPV6_ROUTER_PREF\n\nThis is a follow-up patch to 3630d40067a21d4dfbadc6002bb469ce26ac5d52\n(\"ipv6: rt6_check_neigh should successfully verify neigh if no NUD\ninformation are available\").\n\nSince the removal of rt-\u003en in rt6_info we can end up with a dst \u003d\u003d\nNULL in rt6_check_neigh. In case the kernel is not compiled with\nCONFIG_IPV6_ROUTER_PREF we should also select a route with unkown\nNUD state but we must not avoid doing round robin selection on routes\nwith the same target. So introduce and pass down a boolean ``do_rr\u0027\u0027 to\nindicate when we should update rt-\u003err_ptr. As soon as no route is valid\nwe do backtracking and do a lookup on a higher level in the fib trie.\n\nv2:\na) Improved rt6_check_neigh logic (no need to create neighbour there)\n   and documented return values.\n\nv3:\na) Introduce enum rt6_nud_state to get rid of the magic numbers\n   (thanks to David Miller).\nb) Update and shorten commit message a bit to actualy reflect\n   the source.\n\nReported-by: Pierre Emeriaud \u003cpetrus.lt@gmail.com\u003e\nCc: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "110ecd69a9feea82a152bbf9b12aba57e6396883",
      "tree": "cb92199f51a7bd132671ff3f4ec2bbc29030aa48",
      "parents": [
        "b41e6a51d57e231d2ed237f17f002cc536c0987c"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "sasha.levin@oracle.com",
        "time": "Thu Jul 11 13:16:54 2013 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 11 11:36:02 2013 -0700"
      },
      "message": "9p: fix off by one causing access violations and memory corruption\n\np9_release_pages() would attempt to dereference one value past the end of\npages[]. This would cause the following crashes:\n\n[ 6293.171817] BUG: unable to handle kernel paging request at ffff8807c96f3000\n[ 6293.174146] IP: [\u003cffffffff8412793b\u003e] p9_release_pages+0x3b/0x60\n[ 6293.176447] PGD 79c5067 PUD 82c1e3067 PMD 82c197067 PTE 80000007c96f3060\n[ 6293.180060] Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC\n[ 6293.180060] Modules linked in:\n[ 6293.180060] CPU: 62 PID: 174043 Comm: modprobe Tainted: G        W    3.10.0-next-20130710-sasha #3954\n[ 6293.180060] task: ffff8807b803b000 ti: ffff880787dde000 task.ti: ffff880787dde000\n[ 6293.180060] RIP: 0010:[\u003cffffffff8412793b\u003e]  [\u003cffffffff8412793b\u003e] p9_release_pages+0x3b/0x60\n[ 6293.214316] RSP: 0000:ffff880787ddfc28  EFLAGS: 00010202\n[ 6293.214316] RAX: 0000000000000001 RBX: ffff8807c96f2ff8 RCX: 0000000000000000\n[ 6293.222017] RDX: ffff8807b803b000 RSI: 0000000000000001 RDI: ffffea001c7e3d40\n[ 6293.222017] RBP: ffff880787ddfc48 R08: 0000000000000000 R09: 0000000000000000\n[ 6293.222017] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000001\n[ 6293.222017] R13: 0000000000000001 R14: ffff8807cc50c070 R15: ffff8807cc50c070\n[ 6293.222017] FS:  00007f572641d700(0000) GS:ffff8807f3600000(0000) knlGS:0000000000000000\n[ 6293.256784] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n[ 6293.256784] CR2: ffff8807c96f3000 CR3: 00000007c8e81000 CR4: 00000000000006e0\n[ 6293.256784] Stack:\n[ 6293.256784]  ffff880787ddfcc8 ffff880787ddfcc8 0000000000000000 ffff880787ddfcc8\n[ 6293.256784]  ffff880787ddfd48 ffffffff84128be8 ffff880700000002 0000000000000001\n[ 6293.256784]  ffff8807b803b000 ffff880787ddfce0 0000100000000000 0000000000000000\n[ 6293.256784] Call Trace:\n[ 6293.256784]  [\u003cffffffff84128be8\u003e] p9_virtio_zc_request+0x598/0x630\n[ 6293.256784]  [\u003cffffffff8115c610\u003e] ? wake_up_bit+0x40/0x40\n[ 6293.256784]  [\u003cffffffff841209b1\u003e] p9_client_zc_rpc+0x111/0x3a0\n[ 6293.256784]  [\u003cffffffff81174b78\u003e] ? sched_clock_cpu+0x108/0x120\n[ 6293.256784]  [\u003cffffffff84122a21\u003e] p9_client_read+0xe1/0x2c0\n[ 6293.256784]  [\u003cffffffff81708a90\u003e] v9fs_file_read+0x90/0xc0\n[ 6293.256784]  [\u003cffffffff812bd073\u003e] vfs_read+0xc3/0x130\n[ 6293.256784]  [\u003cffffffff811a78bd\u003e] ? trace_hardirqs_on+0xd/0x10\n[ 6293.256784]  [\u003cffffffff812bd5a2\u003e] SyS_read+0x62/0xa0\n[ 6293.256784]  [\u003cffffffff841a1a00\u003e] tracesys+0xdd/0xe2\n[ 6293.256784] Code: 66 90 48 89 fb 41 89 f5 48 8b 3f 48 85 ff 74 29 85 f6 74 25 45 31 e4 66 0f 1f 84 00 00 00 00 00 e8 eb 14 12 fd 41 ff c4 49 63 c4 \u003c48\u003e 8b 3c c3 48 85 ff 74 05 45 39 e5 75 e7 48 83 c4 08 5b 41 5c\n[ 6293.256784] RIP  [\u003cffffffff8412793b\u003e] p9_release_pages+0x3b/0x60\n[ 6293.256784]  RSP \u003cffff880787ddfc28\u003e\n[ 6293.256784] CR2: ffff8807c96f3000\n[ 6293.256784] ---[ end trace 50822ee72cd360fc ]---\n\nSigned-off-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19d2f8e0fb7bba99cc585d2467e9fa54a84c8557",
      "tree": "10f2abe6c32e83f5a6017a2c77335a67af0f0ac4",
      "parents": [
        "746919d2668037f297595da9281a22cd558f3d18",
        "f2692ea8d5b535277bc06b315eabd32ef4e7a11c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 10:21:23 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 10:21:23 2013 -0700"
      },
      "message": "Merge tag \u0027for-linus-3.11-merge-window-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\nPull second round of 9p patches from Eric Van Hensbergen:\n \"Several of these patches were rebased in order to correct style\n  issues.  Only stylistic changes were made versus the patches which\n  were in linux-next for two weeks.  The rebases have been in linux-next\n  for 3 days and have passed my regressions.\n\n  The bulk of these are RDMA fixes and improvements.  There\u0027s also some\n  additions on the extended attributes front to support some additional\n  namespaces and a new option for TCP to force allocation of mount\n  requests from a priviledged port\"\n\n* tag \u0027for-linus-3.11-merge-window-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  fs/9p: Remove the unused variable \"err\" in v9fs_vfs_getattr()\n  9P: Add cancelled() to the transport functions.\n  9P/RDMA: count posted buffers without a pending request\n  9P/RDMA: Improve error handling in rdma_request\n  9P/RDMA: Do not free req-\u003erc in error handling in rdma_request()\n  9P/RDMA: Use a semaphore to protect the RQ\n  9P/RDMA: Protect against duplicate replies\n  9P/RDMA: increase P9_RDMA_MAXSIZE to 1MB\n  9pnet: refactor struct p9_fcall alloc code\n  9P/RDMA: rdma_request() needs not allocate req-\u003erc\n  9P: Fix fcall allocation for rdma\n  fs/9p: xattr: add trusted and security namespaces\n  net/9p: add privport option to 9p tcp transport\n"
    },
    {
      "commit": "0ff08ba5d066619f9973bfcdb5a21320d54219d0",
      "tree": "526e4a5799eb3023e9d5d81e81c0964b1d928a3e",
      "parents": [
        "c72bb316916b1a6cf35e1d5238566ef27b0b7f80",
        "d109148111cdfcdae94f797dc142468bd0ff7557"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 10:17:13 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 11 10:17:13 2013 -0700"
      },
      "message": "Merge branch \u0027for-3.11\u0027 of git://linux-nfs.org/~bfields/linux\n\nPull nfsd changes from Bruce Fields:\n \"Changes this time include:\n\n   - 4.1 enabled on the server by default: the last 4.1-specific issues\n     I know of are fixed, so we\u0027re not going to find the rest of the\n     bugs without more exposure.\n   - Experimental support for NFSv4.2 MAC Labeling (to allow running\n     selinux over NFS), from Dave Quigley.\n   - Fixes for some delicate cache/upcall races that could cause rare\n     server hangs; thanks to Neil Brown and Bodo Stroesser for extreme\n     debugging persistence.\n   - Fixes for some bugs found at the recent NFS bakeathon, mostly v4\n     and v4.1-specific, but also a generic bug handling fragmented rpc\n     calls\"\n\n* \u0027for-3.11\u0027 of git://linux-nfs.org/~bfields/linux: (31 commits)\n  nfsd4: support minorversion 1 by default\n  nfsd4: allow destroy_session over destroyed session\n  svcrpc: fix failures to handle -1 uid\u0027s\n  sunrpc: Don\u0027t schedule an upcall on a replaced cache entry.\n  net/sunrpc: xpt_auth_cache should be ignored when expired.\n  sunrpc/cache: ensure items removed from cache do not have pending upcalls.\n  sunrpc/cache: use cache_fresh_unlocked consistently and correctly.\n  sunrpc/cache: remove races with queuing an upcall.\n  nfsd4: return delegation immediately if lease fails\n  nfsd4: do not throw away 4.1 lock state on last unlock\n  nfsd4: delegation-based open reclaims should bypass permissions\n  svcrpc: don\u0027t error out on small tcp fragment\n  svcrpc: fix handling of too-short rpc\u0027s\n  nfsd4: minor read_buf cleanup\n  nfsd4: fix decoding of compounds across page boundaries\n  nfsd4: clean up nfs4_open_delegation\n  NFSD: Don\u0027t give out read delegations on creates\n  nfsd4: allow client to send no cb_sec flavors\n  nfsd4: fail attempts to request gss on the backchannel\n  nfsd4: implement minimal SP4_MACH_CRED\n  ...\n"
    },
    {
      "commit": "1eb4f758286884e7566627164bca4c4a16952a83",
      "tree": "7bcd5b5dc76b422671b17f789ac3aa6650841a3e",
      "parents": [
        "61d46bf979d5cd7c164709a80ad5676a35494aae"
      ],
      "author": {
        "name": "Hannes Frederic Sowa",
        "email": "hannes@stressinduktion.org",
        "time": "Wed Jul 10 23:00:57 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 10 19:45:39 2013 -0700"
      },
      "message": "ipv6: in case of link failure remove route directly instead of letting it expire\n\nWe could end up expiring a route which is part of an ecmp route set. Doing\nso would invalidate the rt-\u003ert6i_nsiblings calculations and could provoke\nthe following panic:\n\n[   80.144667] ------------[ cut here ]------------\n[   80.145172] kernel BUG at net/ipv6/ip6_fib.c:733!\n[   80.145172] invalid opcode: 0000 [#1] SMP\n[   80.145172] Modules linked in: 8021q nf_conntrack_netbios_ns nf_conntrack_broadcast ipt_MASQUERADE ip6table_mangle ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 iptable_nat nf_nat_ipv4 nf_nat iptable_mangle nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ebtable_filter ebtables ip6table_filter ip6_tables\n+snd_hda_intel snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm snd_page_alloc snd_timer virtio_balloon snd soundcore i2c_piix4 i2c_core virtio_net virtio_blk\n[   80.145172] CPU: 1 PID: 786 Comm: ping6 Not tainted 3.10.0+ #118\n[   80.145172] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011\n[   80.145172] task: ffff880117fa0000 ti: ffff880118770000 task.ti: ffff880118770000\n[   80.145172] RIP: 0010:[\u003cffffffff815f3b5d\u003e]  [\u003cffffffff815f3b5d\u003e] fib6_add+0x75d/0x830\n[   80.145172] RSP: 0018:ffff880118771798  EFLAGS: 00010202\n[   80.145172] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff88011350e480\n[   80.145172] RDX: ffff88011350e238 RSI: 0000000000000004 RDI: ffff88011350f738\n[   80.145172] RBP: ffff880118771848 R08: ffff880117903280 R09: 0000000000000001\n[   80.145172] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88011350f680\n[   80.145172] R13: ffff880117903280 R14: ffff880118771890 R15: ffff88011350ef90\n[   80.145172] FS:  00007f02b5127740(0000) GS:ffff88011fd00000(0000) knlGS:0000000000000000\n[   80.145172] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n[   80.145172] CR2: 00007f981322a000 CR3: 00000001181b1000 CR4: 00000000000006e0\n[   80.145172] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n[   80.145172] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n[   80.145172] Stack:\n[   80.145172]  0000000000000001 ffff880100000000 ffff880100000000 ffff880117903280\n[   80.145172]  0000000000000000 ffff880119a4cf00 0000000000000400 00000000000007fa\n[   80.145172]  0000000000000000 0000000000000000 0000000000000000 ffff88011350f680\n[   80.145172] Call Trace:\n[   80.145172]  [\u003cffffffff815eeceb\u003e] ? rt6_bind_peer+0x4b/0x90\n[   80.145172]  [\u003cffffffff815ed985\u003e] __ip6_ins_rt+0x45/0x70\n[   80.145172]  [\u003cffffffff815eee35\u003e] ip6_ins_rt+0x35/0x40\n[   80.145172]  [\u003cffffffff815ef1e4\u003e] ip6_pol_route.isra.44+0x3a4/0x4b0\n[   80.145172]  [\u003cffffffff815ef34a\u003e] ip6_pol_route_output+0x2a/0x30\n[   80.145172]  [\u003cffffffff81616077\u003e] fib6_rule_action+0xd7/0x210\n[   80.145172]  [\u003cffffffff815ef320\u003e] ? ip6_pol_route_input+0x30/0x30\n[   80.145172]  [\u003cffffffff81553026\u003e] fib_rules_lookup+0xc6/0x140\n[   80.145172]  [\u003cffffffff81616374\u003e] fib6_rule_lookup+0x44/0x80\n[   80.145172]  [\u003cffffffff815ef320\u003e] ? ip6_pol_route_input+0x30/0x30\n[   80.145172]  [\u003cffffffff815edea3\u003e] ip6_route_output+0x73/0xb0\n[   80.145172]  [\u003cffffffff815dfdf3\u003e] ip6_dst_lookup_tail+0x2c3/0x2e0\n[   80.145172]  [\u003cffffffff813007b1\u003e] ? list_del+0x11/0x40\n[   80.145172]  [\u003cffffffff81082a4c\u003e] ? remove_wait_queue+0x3c/0x50\n[   80.145172]  [\u003cffffffff815dfe4d\u003e] ip6_dst_lookup_flow+0x3d/0xa0\n[   80.145172]  [\u003cffffffff815fda77\u003e] rawv6_sendmsg+0x267/0xc20\n[   80.145172]  [\u003cffffffff815a8a83\u003e] inet_sendmsg+0x63/0xb0\n[   80.145172]  [\u003cffffffff8128eb93\u003e] ? selinux_socket_sendmsg+0x23/0x30\n[   80.145172]  [\u003cffffffff815218d6\u003e] sock_sendmsg+0xa6/0xd0\n[   80.145172]  [\u003cffffffff81524a68\u003e] SYSC_sendto+0x128/0x180\n[   80.145172]  [\u003cffffffff8109825c\u003e] ? update_curr+0xec/0x170\n[   80.145172]  [\u003cffffffff81041d09\u003e] ? kvm_clock_get_cycles+0x9/0x10\n[   80.145172]  [\u003cffffffff810afd1e\u003e] ? __getnstimeofday+0x3e/0xd0\n[   80.145172]  [\u003cffffffff8152509e\u003e] SyS_sendto+0xe/0x10\n[   80.145172]  [\u003cffffffff8164efd9\u003e] system_call_fastpath+0x16/0x1b\n[   80.145172] Code: fe ff ff 41 f6 45 2a 06 0f 85 ca fe ff ff 49 8b 7e 08 4c 89 ee e8 94 ef ff ff e9 b9 fe ff ff 48 8b 82 28 05 00 00 e9 01 ff ff ff \u003c0f\u003e 0b 49 8b 54 24 30 0d 00 00 40 00 89 83 14 01 00 00 48 89 53\n[   80.145172] RIP  [\u003cffffffff815f3b5d\u003e] fib6_add+0x75d/0x830\n[   80.145172]  RSP \u003cffff880118771798\u003e\n[   80.387413] ---[ end trace 02f20b7a8b81ed95 ]---\n[   80.390154] Kernel panic - not syncing: Fatal exception in interrupt\n\nCc: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nCc: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64b0dc517ea1b35d02565a779e6cb77ae9045685",
      "tree": "f4701c62374a44db9f3be2d46f9420a328cd49ee",
      "parents": [
        "8b80cda536ea9bceec0364e897868a30ee13b992"
      ],
      "author": {
        "name": "Eliezer Tamir",
        "email": "eliezer.tamir@linux.intel.com",
        "time": "Wed Jul 10 17:13:36 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 10 17:08:27 2013 -0700"
      },
      "message": "net: rename busy poll socket op and globals\n\nRename LL_SO to BUSY_POLL_SO\nRename sysctl_net_ll_{read,poll} to sysctl_busy_{read,poll}\nFix up users of these variables.\nFix documentation for sysctl.\n\na patch for the socket.7  man page will follow separately,\nbecause of limitations of my mail setup.\n\nSigned-off-by: Eliezer Tamir \u003celiezer.tamir@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b80cda536ea9bceec0364e897868a30ee13b992",
      "tree": "75edd97f04e379e6afedd67beef81eb80ba0adaf",
      "parents": [
        "076bb0c82a44fbe46fe2c8527a5b5b64b69f679d"
      ],
      "author": {
        "name": "Eliezer Tamir",
        "email": "eliezer.tamir@linux.intel.com",
        "time": "Wed Jul 10 17:13:26 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 10 17:08:27 2013 -0700"
      },
      "message": "net: rename ll methods to busy-poll\n\nRename ndo_ll_poll to ndo_busy_poll.\nRename sk_mark_ll to sk_mark_napi_id.\nRename skb_mark_ll to skb_mark_napi_id.\nCorrect all useres of these functions.\nUpdate comments and defines  in include/net/busy_poll.h\n\nSigned-off-by: Eliezer Tamir \u003celiezer.tamir@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "076bb0c82a44fbe46fe2c8527a5b5b64b69f679d",
      "tree": "c97290b972a4c942bb1e312b67f4a4f22e3670e5",
      "parents": [
        "bfffbea1aaeeb1eb6500c83ff9653416daa5b490"
      ],
      "author": {
        "name": "Eliezer Tamir",
        "email": "eliezer.tamir@linux.intel.com",
        "time": "Wed Jul 10 17:13:17 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 10 17:08:27 2013 -0700"
      },
      "message": "net: rename include/net/ll_poll.h to include/net/busy_poll.h\n\nRename the file and correct all the places where it is included.\n\nSigned-off-by: Eliezer Tamir \u003celiezer.tamir@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eeee245268c951262b861bc1be4e9dc812352499",
      "tree": "055c5d4ea0406bbb5457052ee85148b5f9746cf7",
      "parents": [
        "4f8568cb5290295c384d5c1328c52790e33a8a0d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 10 15:33:01 2013 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 10 15:58:55 2013 -0400"
      },
      "message": "SUNRPC: Fix a deadlock in rpc_client_register()\n\nCommit 384816051ca9125cd54750e59c780c2a2655fa4f (SUNRPC: fix races on\nPipeFS MOUNT notifications) introduces a regression when we call\nrpc_setup_pipedir() with RPCSEC_GSS as the auth flavour.\n\nBy calling rpcauth_create() while holding the sn-\u003epipefs_sb_lock, we\nend up deadlocking in gss_pipes_dentries_create_net().\nFix is to register the client and release the mutex before calling\nrpcauth_create().\n\nReported-by: Weston Andros Adamson \u003cdros@netapp.com\u003e\nTested-by: Weston Andros Adamson \u003cdros@netapp.com\u003e\nCc: Stanislav Kinsbursky \u003cskinsbursky@parallels.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e # : 3848160: SUNRPC: fix races on PipeFS MOUNT\nCc: \u003cstable@vger.kernel.org\u003e # : e73f4cc: SUNRPC: split client creation\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4f8568cb5290295c384d5c1328c52790e33a8a0d",
      "tree": "48235459134c28186c40d5a79cb1d9934a2f7240",
      "parents": [
        "c7559663e42f4294ffe31fe159da6b6a66b35d61"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jul 10 09:17:14 2013 +0800"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 09 21:35:27 2013 -0400"
      },
      "message": "rpc_pipe: rpc_dir_inode_operations can be static\n\nHi Jeff,\n\nFYI, there are new sparse warnings show up in\n\ntree:   git://git.linux-nfs.org/projects/trondmy/linux-nfs.git nfs-for-next\nhead:   296afe1f58d55fd56ed85daaafafcfee39f59ece\ncommit: 76fa66657900071016f2bae61de28f059f3f2abf [2/5] rpc_pipe: set dentry operations at d_alloc time\n\n\u003e\u003e net/sunrpc/rpc_pipe.c:496:31: sparse: symbol \u0027rpc_dir_inode_operations\u0027 was not declared. Should it be static?\n\nPlease consider folding the attached diff :-)\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "496322bc91e35007ed754184dcd447a02b6dd685",
      "tree": "f5298d0a74c0a6e65c0e98050b594b8d020904c1",
      "parents": [
        "2e17c5a97e231f3cb426f4b7895eab5be5c5442e",
        "56e0ef527b184b3de2d7f88c6190812b2b2ac6bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 18:24:39 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 18:24:39 2013 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking updates from David Miller:\n \"This is a re-do of the net-next pull request for the current merge\n  window.  The only difference from the one I made the other day is that\n  this has Eliezer\u0027s interface renames and the timeout handling changes\n  made based upon your feedback, as well as a few bug fixes that have\n  trickeled in.\n\n  Highlights:\n\n   1) Low latency device polling, eliminating the cost of interrupt\n      handling and context switches.  Allows direct polling of a network\n      device from socket operations, such as recvmsg() and poll().\n\n      Currently ixgbe, mlx4, and bnx2x support this feature.\n\n      Full high level description, performance numbers, and design in\n      commit 0a4db187a999 (\"Merge branch \u0027ll_poll\u0027\")\n\n      From Eliezer Tamir.\n\n   2) With the routing cache removed, ip_check_mc_rcu() gets exercised\n      more than ever before in the case where we have lots of multicast\n      addresses.  Use a hash table instead of a simple linked list, from\n      Eric Dumazet.\n\n   3) Add driver for Atheros CQA98xx 802.11ac wireless devices, from\n      Bartosz Markowski, Janusz Dziedzic, Kalle Valo, Marek Kwaczynski,\n      Marek Puzyniak, Michal Kazior, and Sujith Manoharan.\n\n   4) Support reporting the TUN device persist flag to userspace, from\n      Pavel Emelyanov.\n\n   5) Allow controlling network device VF link state using netlink, from\n      Rony Efraim.\n\n   6) Support GRE tunneling in openvswitch, from Pravin B Shelar.\n\n   7) Adjust SOCK_MIN_RCVBUF and SOCK_MIN_SNDBUF for modern times, from\n      Daniel Borkmann and Eric Dumazet.\n\n   8) Allow controlling of TCP quickack behavior on a per-route basis,\n      from Cong Wang.\n\n   9) Several bug fixes and improvements to vxlan from Stephen\n      Hemminger, Pravin B Shelar, and Mike Rapoport.  In particular,\n      support receiving on multiple UDP ports.\n\n  10) Major cleanups, particular in the area of debugging and cookie\n      lifetime handline, to the SCTP protocol code.  From Daniel\n      Borkmann.\n\n  11) Allow packets to cross network namespaces when traversing tunnel\n      devices.  From Nicolas Dichtel.\n\n  12) Allow monitoring netlink traffic via AF_PACKET sockets, in a\n      manner akin to how we monitor real network traffic via ptype_all.\n      From Daniel Borkmann.\n\n  13) Several bug fixes and improvements for the new alx device driver,\n      from Johannes Berg.\n\n  14) Fix scalability issues in the netem packet scheduler\u0027s time queue,\n      by using an rbtree.  From Eric Dumazet.\n\n  15) Several bug fixes in TCP loss recovery handling, from Yuchung\n      Cheng.\n\n  16) Add support for GSO segmentation of MPLS packets, from Simon\n      Horman.\n\n  17) Make network notifiers have a real data type for the opaque\n      pointer that\u0027s passed into them.  Use this to properly handle\n      network device flag changes in arp_netdev_event().  From Jiri\n      Pirko and Timo Teräs.\n\n  18) Convert several drivers over to module_pci_driver(), from Peter\n      Huewe.\n\n  19) tcp_fixup_rcvbuf() can loop 500 times over loopback, just use a\n      O(1) calculation instead.  From Eric Dumazet.\n\n  20) Support setting of explicit tunnel peer addresses in ipv6, just\n      like ipv4.  From Nicolas Dichtel.\n\n  21) Protect x86 BPF JIT against spraying attacks, from Eric Dumazet.\n\n  22) Prevent a single high rate flow from overruning an individual cpu\n      during RX packet processing via selective flow shedding.  From\n      Willem de Bruijn.\n\n  23) Don\u0027t use spinlocks in TCP md5 signing fast paths, from Eric\n      Dumazet.\n\n  24) Don\u0027t just drop GSO packets which are above the TBF scheduler\u0027s\n      burst limit, chop them up so they are in-bounds instead.  Also\n      from Eric Dumazet.\n\n  25) VLAN offloads are missed when configured on top of a bridge, fix\n      from Vlad Yasevich.\n\n  26) Support IPV6 in ping sockets.  From Lorenzo Colitti.\n\n  27) Receive flow steering targets should be updated at poll() time\n      too, from David Majnemer.\n\n  28) Fix several corner case regressions in PMTU/redirect handling due\n      to the routing cache removal, from Timo Teräs.\n\n  29) We have to be mindful of ipv4 mapped ipv6 sockets in\n      upd_v6_push_pending_frames().  From Hannes Frederic Sowa.\n\n  30) Fix L2TP sequence number handling bugs, from James Chapman.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1214 commits)\n  drivers/net: caif: fix wrong rtnl_is_locked() usage\n  drivers/net: enic: release rtnl_lock on error-path\n  vhost-net: fix use-after-free in vhost_net_flush\n  net: mv643xx_eth: do not use port number as platform device id\n  net: sctp: confirm route during forward progress\n  virtio_net: fix race in RX VQ processing\n  virtio: support unlocked queue poll\n  net/cadence/macb: fix bug/typo in extracting gem_irq_read_clear bit\n  Documentation: Fix references to defunct linux-net@vger.kernel.org\n  net/fs: change busy poll time accounting\n  net: rename low latency sockets functions to busy poll\n  bridge: fix some kernel warning in multicast timer\n  sfc: Fix memory leak when discarding scattered packets\n  sit: fix tunnel update via netlink\n  dt:net:stmmac: Add dt specific phy reset callback support.\n  dt:net:stmmac: Add support to dwmac version 3.610 and 3.710\n  dt:net:stmmac: Allocate platform data only if its NULL.\n  net:stmmac: fix memleak in the open method\n  ipv6: rt6_check_neigh should successfully verify neigh if no NUD information are available\n  net: ipv6: fix wrong ping_v6_sendmsg return value\n  ...\n"
    },
    {
      "commit": "76fa66657900071016f2bae61de28f059f3f2abf",
      "tree": "79fa6e7b03a149acaa1c6ac1ca29b5c6b6c05685",
      "parents": [
        "cda57a1ef6f0da7e24f392ffdf00538ec0480310"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jul 02 13:00:52 2013 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 09 17:16:39 2013 -0400"
      },
      "message": "rpc_pipe: set dentry operations at d_alloc time\n\nCurrently the way these get set is a little convoluted. If the dentry is\nallocated via lookup from userland, then it gets set by simple_lookup.\nIf it gets allocated when the kernel is populating the directory, then\nit gets set via __rpc_lookup_create_exclusive, which has to check\nwhether they might already be set. Between both of these, this ensures\nthat all dentries have their d_op pointer set.\n\nInstead of doing that, just have them set at d_alloc time by pointing\nsb-\u003es_d_op at them. With that change, we no longer want the lookup op\nto set them, so we must move to using our own lookup routine.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "899dd388853071f5c8848545209d4e2c5d95b1d9",
      "tree": "d3ff654d58b96c3b93f29e5ae5084d94283dfeea",
      "parents": [
        "9a5889ae1ce41f376e6a5b56e17e0c5a755fda80",
        "2315cb14010c4cb0eb7c1d19fcf90475e4688207"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:55:13 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:55:13 2013 -0700"
      },
      "message": "Merge tag \u0027for-linus-3.11-merge-window-part-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\nPull 9p update from Eric Van Hensbergen:\n \"Grab bag of little fixes and enhancements:\n  - optional security enhancements\n  - fix path coverage in MAINTAINERS\n  - switch to using most used protocol and transport as default\n  - clean up buffer dumps in trace code\n\n  Held off on RDMA patches as they need to be cleaned up a bit, but will\n  try to get the cleaned, checked, and pushed by mid-week\"\n\n* tag \u0027for-linus-3.11-merge-window-part-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: Add rest of 9p files to MAINTAINERS entry\n  9p: trace: use %*ph to dump buffer\n  net/9p: Handle error in zero copy request correctly for 9p2000.u\n  net/9p: Use virtio transpart as the default transport\n  net/9p: Make 9P2000.L the default protocol for 9p file system\n"
    },
    {
      "commit": "8c2f414ad1b3aa3af05791cd7312eb8ff9d80e0d",
      "tree": "5d4281f3fbb68256211eaa2d39e45dc85c0874d8",
      "parents": [
        "e1d6fbc3dedbb463fc79b48ddb05ab6b20fd088a"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "dborkman@redhat.com",
        "time": "Tue Jul 09 16:17:04 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 09 12:49:56 2013 -0700"
      },
      "message": "net: sctp: confirm route during forward progress\n\nThis fix has been proposed originally by Vlad Yasevich. He says:\n\n  When SCTP makes forward progress (receives a SACK that acks new chunks,\n  renegs, or answeres 0-window probes) or when HB-ACK arrives, mark\n  the route as confirmed so we don\u0027t unnecessarily send NUD probes.\n\nHaving a simple SCTP client/server that exchange data chunks every 1sec,\nwithout this patch ARP requests are sent periodically every 40-60sec.\nWith this fix applied, an ARP request is only done once right at the\n\"session\" beginning. Also, when clearing the related ARP cache entry\nmanually during the session, a new request is correctly done. I have\nonly \"backported\" this to net-next and tested that it works, so full\ncredit goes to Vlad.\n\nSigned-off-by: Vlad Yasevich \u003cvyasevich@gmail.com\u003e\nSigned-off-by: Daniel Borkmann \u003cdborkman@redhat.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a5889ae1ce41f376e6a5b56e17e0c5a755fda80",
      "tree": "0eaadb5530d5b82460e0bfb0b4403e080d7b1b8f",
      "parents": [
        "e3a0dd98e1ddfd135b7ef889fcc0269e8c2ca445",
        "8b8cf8917f9b5d74e04f281272d8719ce335a497"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:39:10 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:39:10 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\nPull Ceph updates from Sage Weil:\n \"There is some follow-on RBD cleanup after the last window\u0027s code drop,\n  a series from Yan fixing multi-mds behavior in cephfs, and then a\n  sprinkling of bug fixes all around.  Some warnings, sleeping while\n  atomic, a null dereference, and cleanups\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (36 commits)\n  libceph: fix invalid unsigned-\u003esigned conversion for timespec encoding\n  libceph: call r_unsafe_callback when unsafe reply is received\n  ceph: fix race between cap issue and revoke\n  ceph: fix cap revoke race\n  ceph: fix pending vmtruncate race\n  ceph: avoid accessing invalid memory\n  libceph: Fix NULL pointer dereference in auth client code\n  ceph: Reconstruct the func ceph_reserve_caps.\n  ceph: Free mdsc if alloc mdsc-\u003emdsmap failed.\n  ceph: remove sb_start/end_write in ceph_aio_write.\n  ceph: avoid meaningless calling ceph_caps_revoking if sync_mode \u003d\u003d WB_SYNC_ALL.\n  ceph: fix sleeping function called from invalid context.\n  ceph: move inode to proper flushing list when auth MDS changes\n  rbd: fix a couple warnings\n  ceph: clear migrate seq when MDS restarts\n  ceph: check migrate seq before changing auth cap\n  ceph: fix race between page writeback and truncate\n  ceph: reset iov_len when discarding cap release messages\n  ceph: fix cap release race\n  libceph: fix truncate size calculation\n  ...\n"
    },
    {
      "commit": "be0c5d8c0bb0023e11f5c6d38e90f7b0f24edb64",
      "tree": "6d7a6e290f8ed2f2ca250965a8debdd9f02a9cc9",
      "parents": [
        "1f792dd1765e6f047ecd2d5f6a81f025b50d471a",
        "959d921f5eb8878ea16049a7f6e9bcbb6dfbcb88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:09:43 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 12:09:43 2013 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.11-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates from Trond Myklebust:\n \"Feature highlights include:\n   - Add basic client support for NFSv4.2\n   - Add basic client support for Labeled NFS (selinux for NFSv4.2)\n   - Fix the use of credentials in NFSv4.1 stateful operations, and add\n     support for NFSv4.1 state protection.\n\n  Bugfix highlights:\n   - Fix another NFSv4 open state recovery race\n   - Fix an NFSv4.1 back channel session regression\n   - Various rpc_pipefs races\n   - Fix another issue with NFSv3 auth negotiation\n\n  Please note that Labeled NFS does require some additional support from\n  the security subsystem.  The relevant changesets have all been\n  reviewed and acked by James Morris.\"\n\n* tag \u0027nfs-for-3.11-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (54 commits)\n  NFS: Set NFS_CS_MIGRATION for NFSv4 mounts\n  NFSv4.1 Refactor nfs4_init_session and nfs4_init_channel_attrs\n  nfs: have NFSv3 try server-specified auth flavors in turn\n  nfs: have nfs_mount fake up a auth_flavs list when the server didn\u0027t provide it\n  nfs: move server_authlist into nfs_try_mount_request\n  nfs: refactor \"need_mount\" code out of nfs_try_mount\n  SUNRPC: PipeFS MOUNT notification optimization for dying clients\n  SUNRPC: split client creation routine into setup and registration\n  SUNRPC: fix races on PipeFS UMOUNT notifications\n  SUNRPC: fix races on PipeFS MOUNT notifications\n  NFSv4.1 use pnfs_device maxcount for the objectlayout gdia_maxcount\n  NFSv4.1 use pnfs_device maxcount for the blocklayout gdia_maxcount\n  NFSv4.1 Fix gdia_maxcount calculation to fit in ca_maxresponsesize\n  NFS: Improve legacy idmapping fallback\n  NFSv4.1 end back channel session draining\n  NFS: Apply v4.1 capabilities to v4.2\n  NFSv4.1: Clean up layout segment comparison helper names\n  NFSv4.1: layout segment comparison helpers should take \u0027const\u0027 parameters\n  NFSv4: Move the DNS resolver into the NFSv4 module\n  rpc_pipefs: only set rpc_dentry_ops if d_op isn\u0027t already set\n  ...\n"
    },
    {
      "commit": "cbf55001b2ddb814329735641be5d29b08c82b08",
      "tree": "110c1191f4b6699bef04ebdf45e4677c623a7ceb",
      "parents": [
        "c7e8e8a8f7a70b343ca1e0f90a31e35ab2d16de1"
      ],
      "author": {
        "name": "Eliezer Tamir",
        "email": "eliezer.tamir@linux.intel.com",
        "time": "Mon Jul 08 16:20:34 2013 +0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 08 19:25:45 2013 -0700"
      },
      "message": "net: rename low latency sockets functions to busy poll\n\nRename functions in include/net/ll_poll.h to busy wait.\nClarify documentation about expected power use increase.\nRename POLL_LL to POLL_BUSY_LOOP.\nAdd need_resched() testing to poll/select busy loops.\n\nNote, that in select and poll can_busy_poll is dynamic and is\nupdated continuously to reflect the existence of supported\nsockets with valid queue information.\n\nSigned-off-by: Eliezer Tamir \u003celiezer.tamir@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0979292bfa301cb87d936b69af428090d2feea1b",
      "tree": "b18525dae7ff397f0ead97f49985a3ece9993df9",
      "parents": [
        "0bebc633f1428163c9659fd16b34c745e60a0757"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Jul 08 13:44:45 2013 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Jul 08 17:27:23 2013 -0400"
      },
      "message": "svcrpc: fix failures to handle -1 uid\u0027s\n\nAs of f025adf191924e3a75ce80e130afcd2485b53bb8 \"sunrpc: Properly decode\nkuids and kgids in RPC_AUTH_UNIX credentials\" any rpc containing a -1\n(0xffff) uid or gid would fail with a badcred error.\n\nCommit afe3c3fd5392b2f0066930abc5dbd3f4b14a0f13 \"svcrpc: fix failures to\nhandle -1 uid\u0027s and gid\u0027s\" fixed part of the problem, but overlooked the\ngid upcall--the kernel can request supplementary gid\u0027s for the -1 uid,\nbut mountd\u0027s attempt write a response will get -EINVAL.\n\nSymptoms were nfsd failing to reply to the first attempt to use a newly\nnegotiated krb5 context.\n\nReported-by: Sven Geggus \u003clists@fuchsschwanzdomain.de\u003e\nTested-by: Sven Geggus \u003clists@fuchsschwanzdomain.de\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "80b45261a0b263536b043c5ccfc4ba4fc27c2acc",
      "tree": "b4d06110f4f121b8e2c26e521c164f5c668e2cc0",
      "parents": [
        "1cff33069a4a1ac9ed080756113ecd17ad408282"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:43 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:18:18 2013 -0500"
      },
      "message": "9P: Add cancelled() to the transport functions.\n\nRDMA needs to post a buffer for each incoming reply.\nHence it needs to keep count of these and needs to be\naware of whether a flushed request has received a reply\nor not.\n\nThis patch adds the cancelled() callback to the transport modules.\nIt is called when RFLUSH has been received and that the corresponding\nrequest will never receive a reply.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "1cff33069a4a1ac9ed080756113ecd17ad408282",
      "tree": "bc7c5e50fb6ad102b16b93da9263fc36506d5d32",
      "parents": [
        "2f52d07cb75d96fcbb5b9ab72938590fa9ffb19d"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:42 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:04:36 2013 -0500"
      },
      "message": "9P/RDMA: count posted buffers without a pending request\n\nIn rdma_request():\n\nIf an error occurs between posting the recv and the send,\nthere will be a reply context posted without a pending\nrequest.\nSince there is no way to \"un-post\" it, we remember it and\nskip post_recv() for the next request.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "2f52d07cb75d96fcbb5b9ab72938590fa9ffb19d",
      "tree": "ec7258ce3685ab86bbea93f8b5dd666fcc6da98b",
      "parents": [
        "b530e252e291c27fdcb1b73c72ad17f75c8bdba6"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:41 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:02:29 2013 -0500"
      },
      "message": "9P/RDMA: Improve error handling in rdma_request\n\nMost importantly:\n- do not free the recv context (rpl_context) after a successful post_recv()\n- but do free the send context (c) after a failed send.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "b530e252e291c27fdcb1b73c72ad17f75c8bdba6",
      "tree": "0f9c42053871a3b5036d6cc39b7c3847ac539288",
      "parents": [
        "fd453d0ed6c1dacef8eff466df473d62d63db1e9"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:40 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:02:29 2013 -0500"
      },
      "message": "9P/RDMA: Do not free req-\u003erc in error handling in rdma_request()\n\nrdma_request() should never be in charge of freeing rc.\n\nWhen an error occurs:\n* Either the rc buffer has been recv_post()\u0027ed.\n  then kfree()\u0027ing it certainly is a bad idea.\n* Or is has not, and in that case req-\u003erc still points to it,\n  hence it needs not be freed.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "fd453d0ed6c1dacef8eff466df473d62d63db1e9",
      "tree": "d1858110c400fc20cf403e2798a5a3d1546dcbaf",
      "parents": [
        "47229ff85e5a0b0613df2288d212938aeb9687da"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:39 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:02:29 2013 -0500"
      },
      "message": "9P/RDMA: Use a semaphore to protect the RQ\n\nThe current code keeps track of the number of buffers posted in the RQ,\nand will prevent it from overflowing. But it does so by simply dropping\npost requests (And leaking memory in the process).\nWhen this happens there will actually be too few buffers posted, and\nsoon the 9P server will complain about \u0027RNR retry counter exceeded\u0027\nerrors.\n\nInstead, use a semaphore, and block until the RQ is ready for another\nbuffer to be posted.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "47229ff85e5a0b0613df2288d212938aeb9687da",
      "tree": "8ebb938dc2b5187b44bf2e5e980dca96e5e1e3c2",
      "parents": [
        "3fcc62f4e8620fd5f85f957a5e708e69a20adb51"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:38 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:02:28 2013 -0500"
      },
      "message": "9P/RDMA: Protect against duplicate replies\n\nA well-behaved server would not send twice the reply to a request.\nBut if it ever happens...\nThis additional check prevents the kernel from leaking memory\nand possibly more nasty consequences in that unlikely event.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "3fcc62f4e8620fd5f85f957a5e708e69a20adb51",
      "tree": "5b86208a0449a6f8ef0fd316ab9ce76e3b4afa1a",
      "parents": [
        "5387320d4814aa1e40b50529d960a8f2b3340535"
      ],
      "author": {
        "name": "Simon Derr",
        "email": "simon.derr@bull.net",
        "time": "Fri Jun 21 15:32:37 2013 +0200"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sun Jul 07 22:02:28 2013 -0500"
      },
      "message": "9P/RDMA: increase P9_RDMA_MAXSIZE to 1MB\n\nThe current value is too low to get good performance.\n\nSigned-off-by: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    }
  ],
  "next": "5387320d4814aa1e40b50529d960a8f2b3340535"
}
