)]}'
{
  "log": [
    {
      "commit": "dca9b2404a6d6579828da2425c051462701efd3f",
      "tree": "c8f5fdd5f52e1ede8716703323f4297234a1e687",
      "parents": [
        "b672083ed36a49c323737b7c7e1d5264a7c193af"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Wed Dec 01 18:05:17 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 13:27:33 2010 -0800"
      },
      "message": "net: kill unused macros from head file\n\nThese macros have been defined for several years since v2.6.12-rc2（tracing by git）,\nbut never be used. So remove them.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a9527a3b621e507c85b639c183c3aa22afd4eb61",
      "tree": "663c9bc25246548ffac265ea9718bd8941bb44cb",
      "parents": [
        "2989042ca86b94bf4ffa9486921bb300ad44225f"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Wed Dec 01 18:04:43 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 13:27:31 2010 -0800"
      },
      "message": "net: snmp: fix the wrong ICMP_MIB_MAX value\n\n__ICMP_MIB_MAX is equal to the total number of icmp mib,\nSo no need to add 1. This wastes 4/8 bytes memory.\n\nChange it to be same as ICMP6_MIB_MAX, TCP_MIB_MAX, UDP_MIB_MAX.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ae4694b2d3e4c0f47c0e804a68417be57e5daf85",
      "tree": "f432ea91b11a003f70e27c346252db91d5876bd0",
      "parents": [
        "15c054251ab84895ec043e90826612c1a3d6d4f1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 10:59:22 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 10:59:22 2010 -0800"
      },
      "message": "ipv6: Create inet6_csk_route_req().\n\nBrother of ipv4\u0027s inet_csk_route_req().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "15c054251ab84895ec043e90826612c1a3d6d4f1",
      "tree": "6c96a382d981ab7229665550be8332891f31f500",
      "parents": [
        "ccb7c410ddc054b8c1ae780319bc98ae092d3854"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 10:16:06 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 02 10:16:06 2010 -0800"
      },
      "message": "ipv6: Add rt6_get_peer() helper.\n\nTo go along side ipv4\u0027s rt_get_peer().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccb7c410ddc054b8c1ae780319bc98ae092d3854",
      "tree": "6a363c7232121d2390c091b232ee758fa10e4446",
      "parents": [
        "4399ce402c7c837dec80bf9fb40d079b39b9265a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 18:09:13 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 18:09:13 2010 -0800"
      },
      "message": "timewait_sock: Create and use getpeer op.\n\nThe only thing AF-specific about remembering the timestamp\nfor a time-wait TCP socket is getting the peer.\n\nAbstract that behind a new timewait_sock_ops vector.\n\nSupport for real IPV6 sockets is not filled in yet, but\ncuriously this makes timewait recycling start to work\nfor v4-mapped ipv6 sockets.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4399ce402c7c837dec80bf9fb40d079b39b9265a",
      "tree": "d60fdcdd13b019fba90bbef24e3b530b8ff3c5d4",
      "parents": [
        "8790ca172a1550949804a2ad59ccea310f680c9f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 17:29:08 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 17:29:08 2010 -0800"
      },
      "message": "inetpeer: Fix incorrect comment about inetpeer struct size.\n\nNow with ipv6 support it is no longer less than 64 bytes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8790ca172a1550949804a2ad59ccea310f680c9f",
      "tree": "f9a0bf451adc36dab6e4cb9f5430827bbd827384",
      "parents": [
        "67d5288049f46f816181f63eaa8f1371877ad8ea"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 17:28:18 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 01 17:28:18 2010 -0800"
      },
      "message": "inetpeer: Kill use of inet_peer_address_t typedef.\n\nThey are verboten these days.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3f419d2d487821093ee46e898b5f8747f9edc9cd",
      "tree": "a3f7731eb0706c5ae6d0f4ec004ba0d08d7f951b",
      "parents": [
        "b3419363808f2481b24a817f491878e1795db4c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 29 13:37:14 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 12:28:06 2010 -0800"
      },
      "message": "inet: Turn -\u003eremember_stamp into -\u003eget_peer in connection AF ops.\n\nThen we can make a completely generic tcp_remember_stamp()\nthat uses -\u003eget_peer() as a helper, minimizing the AF specific\ncode and minimizing the eventual code duplication when we implement\nthe ipv6 side of TW recycling.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3419363808f2481b24a817f491878e1795db4c7",
      "tree": "76cfa3c55d6798a9bf25d200778dc212841f6cb0",
      "parents": [
        "672f007d65f50468a4a1e55825fe58e5b035324d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 12:27:11 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 12:27:11 2010 -0800"
      },
      "message": "ipv6: Add infrastructure to bind inet_peer objects to routes.\n\nThey are only allowed on cached ipv6 routes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "672f007d65f50468a4a1e55825fe58e5b035324d",
      "tree": "1c4c74ed6cdc6881cccc1c24a97b8117efe93d6c",
      "parents": [
        "021e9299113363cc1b713f86b2cba30b8e6cb5dd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 12:20:00 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 12:20:00 2010 -0800"
      },
      "message": "inetpeer: Add inet_getpeer_v6()\n\nNow that all of the infrastructure is in place, we can add\nthe ipv6 shorthand for peer creation.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b534ecf1cd26f094497da6ae28a6ab64cdbe1617",
      "tree": "bdf8a55183a38926b8f34f709cb51a4db2f5f6b8",
      "parents": [
        "582a72da9a41be9227dc931d728ae2906880a589"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 11:54:19 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 11:54:19 2010 -0800"
      },
      "message": "inetpeer: Make inet_getpeer() take an inet_peer_adress_t pointer.\n\nAnd make an inet_getpeer_v4() helper, update callers.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "582a72da9a41be9227dc931d728ae2906880a589",
      "tree": "0c1943d6c5eabdbfef6560ac49db322d4becf43d",
      "parents": [
        "98158f5a853cafd33b254ae0eacc0dd69f90b93b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 11:53:55 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 30 11:53:55 2010 -0800"
      },
      "message": "inetpeer: Introduce inet_peer_address_t.\n\nCurrently only the v4 aspect is used, but this will change.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77148625e10d0fda50d05e92d199c0df17b66e9a",
      "tree": "fdb5bb1e06933dc8891a3c4d3c93c371801d8b37",
      "parents": [
        "a41778694806ac1ccd4b1dafed1abef8d5ba98ac",
        "51cce8a590c4696d62bfacc63378d1036084cef7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 29 11:19:09 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 29 11:19:09 2010 -0800"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "49b4a6546fac02f58784f0744e0f99a6562ccc03",
      "tree": "69504924d37630618d9b20cf699af7a0cf8db021",
      "parents": [
        "e9248fbd6b6f7ef1917bfffe998654e40dfb4cfd"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Mon Nov 29 00:14:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 29 09:41:12 2010 -0800"
      },
      "message": "sctp: kill unused macros in head file\n\n1. SCTP_CMD_NUM_VERBS,SCTP_CMD_MAX\nThese two macros have never been used for several years since v2.6.12-rc2.\n\n2.sctp_port_rover,sctp_port_alloc_lock\nThe commit 063930 abandoned global variables of port_rover and port_alloc_lock,\nbut still keep two macros to refer to them.\nSo, remove them now.\n\ncommit 06393009000779b00a558fd2f280882cc7dc2008\nAuthor: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nDate:   Wed Oct 10 17:30:18 2007 -0700\n\n    [SCTP]: port randomization\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa285b1740f5b13e5a2606a927f3129954583d78",
      "tree": "4845acc70e17cbd0c3a16f490aa24e1a00e8eb3c",
      "parents": [
        "6a632625c7da7594d059b88dae0e9c591af147ba"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Tue Nov 23 04:03:45 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 28 11:22:17 2010 -0800"
      },
      "message": "xfrm: fix gre key endianess\n\nfl-\u003efl_gre_key is network byte order contrary to fl-\u003efl_icmp_*.\nMake xfrm_flowi_{s|d}port return network byte order values for gre\nkey too.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5595a1a5997953dbd8c5df7c2f7d4b3a2eb2be4b",
      "tree": "56be68f4ddeae78c0751494264ffff88ce015304",
      "parents": [
        "5892b9e9ebdde50fbd524570d61ceb74f8be33f3"
      ],
      "author": {
        "name": "andrew hendry",
        "email": "andrew.hendry@gmail.com",
        "time": "Thu Nov 25 02:18:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 28 11:12:20 2010 -0800"
      },
      "message": "X25 remove bkl in subscription ioctls\n\nSigned-off-by: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5584b8078a60e34ec7d37c9b67a0f3d389a1a2f6",
      "tree": "fc9054931639b0753a9eb95054f4a928186cab6b",
      "parents": [
        "cf7afbfeb8ceb0187348d0a1a0db61305e25f05f"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Mon Nov 22 23:00:42 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 28 10:47:15 2010 -0800"
      },
      "message": "sctp: kill unused macro definition\n\nThese macros have been existed for several years since v2.6.12-rc2.\nBut they never be used. So remove them now.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf7afbfeb8ceb0187348d0a1a0db61305e25f05f",
      "tree": "8b1c07c8ae6a5b3f6f050d3286b53b3d7d72c858",
      "parents": [
        "89bf67f1f080c947c92f8773482d9e57767ca292"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@infradead.org",
        "time": "Mon Nov 22 01:31:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 27 22:56:08 2010 -0800"
      },
      "message": "rtnl: make link af-specific updates atomic\n\nAs David pointed out correctly, updates to af-specific attributes\nare currently not atomic. If multiple changes are requested and\none of them fails, previous updates may have been applied already\nleaving the link behind in a undefined state.\n\nThis patch splits the function parse_link_af() into two functions\nvalidate_link_af() and set_link_at(). validate_link_af() is placed\nto validate_linkmsg() check for errors as early as possible before\nany changes to the link have been made. set_link_af() is called to\ncommit the changes later.\n\nThis method is not fail proof, while it is currently sufficient\nto make set_link_af() inerrable and thus 100% atomic, the\nvalidation function method will not be able to detect all error\nscenarios in the future, there will likely always be errors\ndepending on states which are f.e. not protected by rtnl_mutex\nand thus may change between validation and setting.\n\nAlso, instead of silently ignoring unknown address families and\nconfig blocks for address families which did not register a set\nfunction the errors EAFNOSUPPORT respectively EOPNOSUPPORT are\nreturned to avoid comitting 4 out of 5 update requests without\nnotifying the user.\n\nSigned-off-by: Thomas Graf \u003ctgraf@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "51cce8a590c4696d62bfacc63378d1036084cef7",
      "tree": "dc24485bdff37ca6a83c69e93ffdbe5c5807b59d",
      "parents": [
        "2fe66ec242d3f76e3b0101f36419e7e5405bcff3",
        "4f8559383c41262b50dc758e2e310f257ce6a14d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:49:20 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:49:20 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n"
    },
    {
      "commit": "c063dbf52b998b852122dff07a8b8dd430b38437",
      "tree": "b27cc73fa8a1d9ed8fb5b0a1306e8194e18662a9",
      "parents": [
        "79b1c460a0b55e55981c25c56597c4d5d2872de3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 24 08:10:05 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:36 2010 -0500"
      },
      "message": "cfg80211: allow using CQM event to notify packet loss\n\nThis adds the ability for drivers to use CQM events\nto notify about packet loss for specific stations\n(which could be the AP for the managed mode case).\nSince the threshold might be determined by the\ndriver (it isn\u0027t passed in right now) it will be\npassed out of the driver to userspace in the event.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "79b1c460a0b55e55981c25c56597c4d5d2872de3",
      "tree": "aa146ddc5db00e1bad9f61ee4ca5c91fce55debd",
      "parents": [
        "48124d1a91fb77defc9734b4556350d59671fb2c"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Nov 24 14:34:41 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:36 2010 -0500"
      },
      "message": "cfg80211: Add documentation for antenna ops\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dd5b4cc71cd09c33e1579cc6d5720656e94e52de",
      "tree": "86a27c86480109d9b6bbedddc083095035fbef2d",
      "parents": [
        "46090979a55a0dc2cdb3d939f94fa47742108194"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Nov 22 20:58:24 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:35 2010 -0500"
      },
      "message": "cfg80211/mac80211: improve ad-hoc multicast rate handling\n\n- store the multicast rate as an index instead of the rate value\n  (reduces cpu overhead in a hotpath)\n- validate the rate values (must match a bitrate in at least one sband)\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d7a066c92394f3e777351de0c903beeb8a08af76",
      "tree": "f54ce8ac77d32b4c3166b4a2ca92525174a3213b",
      "parents": [
        "ccb14354017272ddac002e859a2711610b6af174",
        "e476a5a41ad67d0e2b4a652820c49a3923eb936b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:24 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:24 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "ccb14354017272ddac002e859a2711610b6af174",
      "tree": "fa39f9b944508e596763c49b0088dc1cc2e263ca",
      "parents": [
        "f8afa42b01c7a9f45b7cbaadb0481a0eeb96f18d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "message": "Revert \"nl80211/mac80211: Report signal average\"\n\nThis reverts commit 86107fd170bc379869250eb7e1bd393a3a70e8ae.\n\nThis patch inadvertantly changed the userland ABI.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bba14de98753cb6599a2dae0e520714b2153522d",
      "tree": "b771ef780aa0808d3eb7827d527920c07215c4fa",
      "parents": [
        "456b61bca8ee324ab6c18b065e632c9a8c88aa39"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 23 14:09:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 24 11:16:43 2010 -0800"
      },
      "message": "scm: lower SCM_MAX_FD\n\nLower SCM_MAX_FD from 255 to 253 so that allocations for scm_fp_list are\nhalved. (commit f8d570a4 added two pointers in this structure)\n\nscm_fp_dup() should not copy whole structure (and trigger kmemcheck\nwarnings), but only the used part. While we are at it, only allocate\nneeded size.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "456b61bca8ee324ab6c18b065e632c9a8c88aa39",
      "tree": "d1d458d78b6fffa32558ffbf7cdfc49a316a660c",
      "parents": [
        "2757a15f08adbed9480c30bdb4e9a0bbf2b6f33a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 23 13:12:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 24 11:16:42 2010 -0800"
      },
      "message": "ipv6: mcast: RCU conversion\n\nipv6_sk_mc_lock rwlock becomes a spinlock.\n\nreaders (inet6_mc_check()) now takes rcu_read_lock() instead of read\nlock. Writers dont need to disable BH anymore.\n\nstruct ipv6_mc_socklist objects are reclaimed after one RCU grace\nperiod.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2e253cf300c5e33f49b7dd8b593bfc722177401",
      "tree": "0da4d4121996f7869b0ce5ac469c6dd5e7c7beaa",
      "parents": [
        "b0e2880b0518ad11af20c7c93ec5cac93f9f03b0"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Nov 17 21:46:09 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 22 15:48:51 2010 -0500"
      },
      "message": "cfg80211: Fix regulatory bug with multiple cards and delays\n\nWhen two cards are connected with the same regulatory domain\nif CRDA had a delayed response then cfg80211\u0027s own set regulatory\ndomain would still be the world regulatory domain. There was a bug\non cfg80211\u0027s logic such that it assumed that once you pegged a\nrequest as the last request it was already the currently set\nregulatory domain. This would mean we would race setting a stale\nregulatory domain to secondary cards which had the same regulatory\ndomain since the alpha2 would match.\n\nWe fix this by processing each regulatory request atomically,\nand only move on to the next one once we get it fully processed.\nIn the case CRDA is not present we will simply world roam.\n\nThis issue is only present when you have a slow system and the\nCRDA processing is delayed. Because of this it is not a known\nregression.\n\nWithout this fix when a delay is present with CRDA the second card\nwould end up with an intersected regulatory domain and not allow it\nto use the channels it really is designed for. When two cards with\ntwo different regulatory domains were inserted you\u0027d end up\nrejecting the second card\u0027s regulatory domain request.\nThis fails with mac80211_hswim\u0027s regtest\u003d2 (two requests, same alpha2)\nand regtest\u003d3 (two requests, different alpha2) module parameter\noptions.\n\nThis was reproduced and tested against mac80211_hwsim using this\nCRDA delayer:\n\n       #!/bin/bash\n       echo $COUNTRY \u003e\u003e /tmp/log\n       sleep 2\n       /sbin/crda.orig\n\nAnd these regulatory tests:\n\n       modprobe mac80211_hwsim regtest\u003d2\n       modprobe mac80211_hwsim regtest\u003d3\n\nReported-by: Mark Mentovai \u003cmark@moxienet.com\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nTested-by: Mark Mentovai \u003cmark@moxienet.com\u003e\nTested-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "20a95a2169d1cd3da50cf65ba882d0e27a4a2d4f",
      "tree": "1d8200ebe2a538d1f4ccacc2b63624400aa5ce16",
      "parents": [
        "bbce5a59e4e0e6e1dbc85492caaf310ff6611309"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Sat Nov 20 18:07:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 21 10:05:10 2010 -0800"
      },
      "message": "netns: let net_generic take pointer-to-const args\n\nThis commit is same in nature as v2.6.37-rc1-755-g3654654; the network\nnamespace itself is not modified when calling net_generic, so the\nparameter can be const.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24912420e923d56461b400d83f250a31bed8a964",
      "tree": "3bb599e665ed7510df2e3f4c8cb008f7a33f50a9",
      "parents": [
        "0670b8ae66daf1d326c7bd10e73daff5f18fcf92",
        "0302b8622ce696af1cda22fcf207d3793350e896"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 19 13:13:47 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 19 13:13:47 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bonding/bond_main.c\n\tnet/core/net-sysfs.c\n\tnet/ipv6/addrconf.c\n"
    },
    {
      "commit": "07bfa524d4c67acbb6b6fbdd1dea923d07853c04",
      "tree": "6e3819f13d3f4efa9c099cf227b1d42b1bc78620",
      "parents": [
        "93908d192686d8285dd6441ff855df92a40103d2",
        "3bf30b56c4f0a1c4fae34050b7db4527c92891e8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 18 11:56:09 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 18 11:56:09 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "86107fd170bc379869250eb7e1bd393a3a70e8ae",
      "tree": "579ee24be87e94246450420f4de57d8eda942848",
      "parents": [
        "eef39befaae2a1559efe197d795c376a317af2af"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Tue Nov 16 10:58:48 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 18 14:22:20 2010 -0500"
      },
      "message": "nl80211/mac80211: Report signal average\n\nExtend nl80211 to report an exponential weighted moving average (EWMA) of the\nsignal value. Since the signal value usually fluctuates between different\npackets, an average can be more useful than the value of the last packet.\n\nThis uses the recently added generic EWMA library function.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ef22b7b65f0eda9015becc7bff225a399914a242",
      "tree": "15801292a4a57bc71552685e10f21e1e8094efc8",
      "parents": [
        "b52b97a339c0f2d76dfd6a31466d3f1b05c5cf7e"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@I-love.SAKURA.ne.jp",
        "time": "Thu Nov 18 09:40:04 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 18 09:40:04 2010 -0800"
      },
      "message": "net: Fix duplicate volatile warning.\n\njiffies is defined as \"volatile\".\n\n  extern unsigned long volatile __jiffy_data jiffies;\n\nACCESS_ONCE() uses \"volatile\".\nAs a result, some compilers warn duplicate `volatile\u0027 for ACCESS_ONCE(jiffies).\n\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4bce22b9b84032c77c7e038b07b24fcc706dfc10",
      "tree": "3c4ee91f19ca703d98956d8aa9f352df8ca10505",
      "parents": [
        "488f6ba75b5deaa7e89d6cdac07e0f2120899b6f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Nov 16 11:49:58 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 17 16:19:31 2010 -0500"
      },
      "message": "mac80211: defines for AC numbers\n\nIn many places we\u0027ve just hardcoded the\nAC numbers -- which is a relic from the\noriginal mac80211 (d80211). Add constants\nfor them so we know what we\u0027re talking\nabout.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5811662b15db018c740c57d037523683fd3e6123",
      "tree": "f820610a6024799a26699f22dc9a4ef5dee07978",
      "parents": [
        "dd68ad2235b4625e0dc928b2b4c614d265f976d3"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Fri Nov 12 18:43:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 17 12:27:45 2010 -0800"
      },
      "message": "net: use the macros defined for the members of flowi\n\nUse the macros defined for the members of flowi to clean the code up.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8ff182c716c6f11ca3061961f5722f26a14e101",
      "tree": "6ea721a7feb71850c61b9d02400d162674d91c21",
      "parents": [
        "d67ef35fff67845c64d806c033cc7c569ccebfff"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@infradead.org",
        "time": "Tue Nov 16 04:30:14 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 17 11:28:24 2010 -0800"
      },
      "message": "rtnetlink: Link address family API\n\nEach net_device contains address family specific data such as\nper device settings and statistics. We already expose this data\nvia procfs/sysfs and partially netlink.\n\nThe netlink method requires the requester to send one RTM_GETLINK\nrequest for each address family it wishes to receive data of\nand then merge this data itself.\n\nThis patch implements a new API which combines all address family\nspecific link data in a new netlink attribute IFLA_AF_SPEC.\nIFLA_AF_SPEC contains a sequence of nested attributes, one for each\naddress family which in turn defines the structure of its own\nattribute. Example:\n\n   [IFLA_AF_SPEC] \u003d {\n       [AF_INET] \u003d {\n           [IFLA_INET_CONF] \u003d ...,\n       },\n       [AF_INET6] \u003d {\n           [IFLA_INET6_FLAGS] \u003d ...,\n           [IFLA_INET6_CONF] \u003d ...,\n       }\n   }\n\nThe API also allows for address families to implement a function\nwhich parses the IFLA_AF_SPEC attribute sent by userspace to\nimplement address family specific link options.\n\nSigned-off-by: Thomas Graf \u003ctgraf@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f0729b16ae354f9db89394fc1d2d65003455d56",
      "tree": "260a562d0c0079ebfc1c507c9aa50e55a1592b6d",
      "parents": [
        "885a46d0f7942d76c2f3860acb45f75237d3bb42"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Thu Nov 11 15:07:23 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:39:08 2010 -0500"
      },
      "message": "mac80211: add support for setting the ad-hoc multicast rate\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "885a46d0f7942d76c2f3860acb45f75237d3bb42",
      "tree": "f116fcc9b8204f7a113693e307de76e4098ebb36",
      "parents": [
        "a619a4c0e1fd4e8c360c63d0df3fa0a401107d69"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Thu Nov 11 15:07:22 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:39:08 2010 -0500"
      },
      "message": "cfg80211: add support for setting the ad-hoc multicast rate\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a619a4c0e1fd4e8c360c63d0df3fa0a401107d69",
      "tree": "c9eb89d30834140f252c77bdf578528b11716678",
      "parents": [
        "4e8c14e9587c38f4cce8049c766935629fdb8d46"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Thu Nov 11 08:50:18 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:08 2010 -0500"
      },
      "message": "mac80211: Add function to get probe request template for current AP\n\nChipsets with hardware based connection monitoring need to autonomically\nsend directed probe-request frames to the AP (in the event of beacon loss,\nfor example.)\n\nFor the hardware to be able to do this, it requires a template for the frame\nto transmit to the AP, filled in with the BSSID and SSID of the AP, but also\nthe supported rate IE\u0027s.\n\nThis patch adds a function to mac80211, which allows the hardware driver to\nfetch this template after association, so it can be configured to the hardware.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "15d967532148a5fcda075282b82a271b6595a386",
      "tree": "e1913502e74768e685f6793b1d24426ac849b1da",
      "parents": [
        "afe0cbf87500f0585d217deb8c6fd329793a7957"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Nov 10 12:50:56 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:05 2010 -0500"
      },
      "message": "mac80211: Add antenna configuration\n\nAllow antenna configuration by calling driver\u0027s function for it.\n\nWe disallow antenna configuration if the wiphy is already running, mainly to\nmake life easier for 802.11n drivers which need to recalculate HT capabilites.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "afe0cbf87500f0585d217deb8c6fd329793a7957",
      "tree": "a7e4f6db468e623961ab2b71ccf2bfb9c6756894",
      "parents": [
        "0e67d6cb753643fc076a90fa9309301b3fbfb8db"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Nov 10 12:50:50 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:05 2010 -0500"
      },
      "message": "cfg80211: Add nl80211 antenna configuration\n\nAllow setting of TX and RX antennas configuration via nl80211.\n\nThe antenna configuration is defined as a bitmap of allowed antennas to use.\nThis API can be used to mask out antennas which are not attached or should not\nbe used for other reasons like regulatory concerns or special setups.\n\nSeparate bitmaps are used for RX and TX to allow configuring different antennas\nfor receiving and transmitting. Each bitmap is 32 bit long, each bit\nrepresenting one antenna, starting with antenna 1 at the first bit. If an\nantenna bit is set, this means the driver is allowed to use this antenna for RX\nor TX respectively; if the bit is not set the hardware is not allowed to use\nthis antenna.\n\nUsing bitmaps has the benefit of allowing for a flexible configuration\ninterface which can support many different configurations and which can be used\nfor 802.11n as well as non-802.11n devices. Instead of relying on some hardware\nspecific assumptions, drivers can use this information to know which antennas\nare actually attached to the system and derive their capabilities based on\nthat.\n\n802.11n devices should enable or disable chains, based on which antennas are\npresent (If all antennas belonging to a particular chain are disabled, the\nentire chain should be disabled). HT capabilities (like STBC, TX Beamforming,\nAntenna selection) should be calculated based on the available chains after\napplying the antenna masks. Should a 802.11n device have diversity antennas\nattached to one of their chains, diversity can be enabled or disabled based on\nthe antenna information.\n\nNon-802.11n drivers can use the antenna masks to select RX and TX antennas and\nto enable or disable antenna diversity.\n\nWhile covering chainmasks for 802.11n and the standard \"legacy\" modes \"fixed\nantenna 1\", \"fixed antenna 2\" and \"diversity\" this API also allows more rare,\nbut useful configurations as follows:\n\n1) Send on antenna 1, receive on antenna 2 (or vice versa). This can be used to\nhave a low gain antenna for TX in order to keep within the regulatory\nconstraints and a high gain antenna for RX in order to receive weaker signals\n(\"speak softly, but listen harder\"). This can be useful for building long-shot\noutdoor links. Another usage of this setup is having a low-noise pre-amplifier\non antenna 1 and a power amplifier on the other antenna. This way transmit\nnoise is mostly kept out of the low noise receive channel.\n(This would be bitmaps: tx 1 rx 2).\n\n2) Another similar setup is: Use RX diversity on both antennas, but always send\non antenna 1. Again that would allow us to benefit from a higher gain RX\nantenna, while staying within the legal limits.\n(This would be: tx 0 rx 3).\n\n3) And finally there can be special experimental setups in research and\ndevelopment even with pre 802.11n hardware where more than 2 antennas are\navailable. It\u0027s good to keep the API simple, yet flexible.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\n\n--\nv7:\tMade bitmasks 32 bit wide and rebased to latest wireless-testing.\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f23a478075659db8a4fd62fa6e264a8bb052cc5b",
      "tree": "ba1492a4a781770644359b88e8ca2d8d3a00adc2",
      "parents": [
        "ca4a0831917d6541b45f03542257fcb20dc9cf4a"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Mon Nov 08 11:51:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:04 2010 -0500"
      },
      "message": "mac80211: support hardware TX fragmentation offload\n\nThe lower driver is notified when the fragmentation threshold changes\nand upon a reconfig of the interface.\n\nIf the driver supports hardware TX fragmentation, don\u0027t fragment\npackets in the stack.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b178bb3dfc30d9555bdd2401e95af98e23e83e10",
      "tree": "ec52d739015de589ceca1d31c5802305d94c9f6d",
      "parents": [
        "c31504dc0d1dc853dcee509d9999169a9097a717"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 16 05:56:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 16 11:17:43 2010 -0800"
      },
      "message": "net: reorder struct sock fields\n\nRight now, fields in struct sock are not optimally ordered, because each\npath (RX softirq, TX completion, RX user,  TX user) has to touch fields\nthat are contained in many different cache lines.\n\nThe really critical thing is to shrink number of cache lines that are\nused at RX softirq time : CPU handling softirqs for a device can receive\nmany frames per second for many sockets. If load is too big, we can drop\nframes at NIC level. RPS or multiqueue cards can help, but better reduce\nlatency if possible.\n\nThis patch starts with UDP protocol, then additional patches will try to\nreduce latencies of other ones as well.\n\nAt RX softirq time, fields of interest for UDP protocol are :\n(not counting ones in inet struct for the lookup)\n\nRead/Written:\nsk_refcnt   (atomic increment/decrement)\nsk_rmem_alloc \u0026 sk_backlog.len (to check if there is room in queues)\nsk_receive_queue\nsk_backlog (if socket locked by user program)\nsk_rxhash\nsk_forward_alloc\nsk_drops\n\nRead only:\nsk_rcvbuf (sk_rcvqueues_full())\nsk_filter\nsk_wq\nsk_policy[0]\nsk_flags\n\nAdditional notes :\n\n- sk_backlog has one hole on 64bit arches. We can fill it to save 8\nbytes.\n- sk_backlog is used only if RX sofirq handler finds the socket while\nlocked by user.\n- sk_rxhash is written only once per flow.\n- sk_drops is written only if queues are full\n\nFinal layout :\n\n[1] One section grouping all read/write fields, but placing rxhash and\nsk_backlog at the end of this section.\n\n[2] One section grouping all read fields in RX handler\n   (sk_filter, sk_rcv_buf, sk_wq)\n\n[3] Section used by other paths\n\nI\u0027ll post a patch on its own to put sk_refcnt at the end of struct\nsock_common so that it shares same cache line than section [1]\n\nNew offsets on 64bit arch :\n\nsizeof(struct sock)\u003d0x268\noffsetof(struct sock, sk_refcnt)  \u003d0x10\noffsetof(struct sock, sk_lock)    \u003d0x48\noffsetof(struct sock, sk_receive_queue)\u003d0x68\noffsetof(struct sock, sk_backlog)\u003d0x80\noffsetof(struct sock, sk_rmem_alloc)\u003d0x80\noffsetof(struct sock, sk_forward_alloc)\u003d0x98\noffsetof(struct sock, sk_rxhash)\u003d0x9c\noffsetof(struct sock, sk_rcvbuf)\u003d0xa4\noffsetof(struct sock, sk_drops) \u003d0xa0\noffsetof(struct sock, sk_filter)\u003d0xa8\noffsetof(struct sock, sk_wq)\u003d0xb0\noffsetof(struct sock, sk_policy)\u003d0xd0\noffsetof(struct sock, sk_flags) \u003d0xe0\n\nInstead of :\n\nsizeof(struct sock)\u003d0x270\noffsetof(struct sock, sk_refcnt)  \u003d0x10\noffsetof(struct sock, sk_lock)    \u003d0x50\noffsetof(struct sock, sk_receive_queue)\u003d0xc0\noffsetof(struct sock, sk_backlog)\u003d0x70\noffsetof(struct sock, sk_rmem_alloc)\u003d0xac\noffsetof(struct sock, sk_forward_alloc)\u003d0x10c\noffsetof(struct sock, sk_rxhash)\u003d0x128\noffsetof(struct sock, sk_rcvbuf)\u003d0x4c\noffsetof(struct sock, sk_drops) \u003d0x16c\noffsetof(struct sock, sk_filter)\u003d0x198\noffsetof(struct sock, sk_wq)\u003d0x88\noffsetof(struct sock, sk_policy)\u003d0x98\noffsetof(struct sock, sk_flags) \u003d0x130\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c31504dc0d1dc853dcee509d9999169a9097a717",
      "tree": "8ee1d5616b7140759cf742ef89cf9f7ba1c01b20",
      "parents": [
        "213b15ca818adf7766cd7162c2159a6ecdd3bab8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 15 19:58:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 16 11:17:43 2010 -0800"
      },
      "message": "udp: use atomic_inc_not_zero_hint\n\nUDP sockets refcount is usually 2, unless an incoming frame is going to\nbe queued in receive or backlog queue.\n\nUsing atomic_inc_not_zero_hint() permits to reduce latency, because\nprocessor issues less memory transactions.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3654654f7aa79a37dde130afb7409c55b11807e7",
      "tree": "4e65c0d211a6cc748509b7f3b2da7c45b05d3266",
      "parents": [
        "9d82ca98f71fd686ef2f3017c5e3e6a4871b6e46"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Tue Nov 16 09:52:32 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 16 09:52:32 2010 -0800"
      },
      "message": "netlink: let nlmsg and nla functions take pointer-to-const args\n\nThe changed functions do not modify the NL messages and/or attributes\nat all. They should use const (similar to strchr), so that callers\nwhich have a const nlmsg/nlattr around can make use of them without\ncasting.\n\nWhile at it, constify a data array.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b5e4156743c5d42b736936be7a9ee8d72e0e4ac9",
      "tree": "f0edde33e7b2502ab35a4f63be1a8be31f5f4b6a",
      "parents": [
        "6b35308850e1679741e8b646cfb7bb3ab5369888",
        "b1d771ee33c6e4006676002b9d74abf45b71d3d6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 16 09:17:12 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 16 09:17:12 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "309075cf08ed92a7d2c0e22b7653c5daabbd7ad1",
      "tree": "65b181daa85a0b7e92460a1f71139ff50de07eb4",
      "parents": [
        "62370e2b9376ea7b76e0423de28ccb322c17e2da"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Fri Nov 12 08:53:56 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 15 15:00:42 2010 -0500"
      },
      "message": "cfg80211: fix WIPHY_FLAG_IBSS_RSN bit\n\nWIPHY_FLAG_IBSS_RSN is BIT(7) as is WIPHY_FLAG_CONTROL_PORT_PROTOCOL. Change\nto BIT(8).\n\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "62370e2b9376ea7b76e0423de28ccb322c17e2da",
      "tree": "9c931b3bc1b5f1ef5b681de3cf567bda783e61a7",
      "parents": [
        "7379efeacb707f49729080791a7a562d8996aec4"
      ],
      "author": {
        "name": "Arnd Hannemann",
        "email": "arnd@arndnet.de",
        "time": "Thu Nov 11 11:44:32 2010 -0600"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 15 15:00:42 2010 -0500"
      },
      "message": "b43legacy: Fix compile on ARM architecture\n\nWhen b43legacy is compiled on the arm platform, the following errors are seen:\n\n  CC [M]  drivers/net/wireless/b43legacy/xmit.o\nIn file included from include/net/dst.h:11,\nfrom drivers/net/wireless/b43legacy/xmit.c:31:\ninclude/net/dst_ops.h:28: error: expected \u0027:\u0027, \u0027,\u0027, \u0027;\u0027, \u0027}\u0027 or \u0027__attribute__\u0027\n   before \u0027____cacheline_aligned_in_smp\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_get_fast\u0027:\ninclude/net/dst_ops.h:33: error: \u0027struct dst_ops\u0027 has no member named\n   \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_get_slow\u0027:\ninclude/net/dst_ops.h:41: error: \u0027struct dst_ops\u0027 has no member named\n   \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_add\u0027:\ninclude/net/dst_ops.h:49: error: \u0027struct dst_ops\u0027 has no member named\n   \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_init\u0027:\ninclude/net/dst_ops.h:55: error: \u0027struct dst_ops\u0027 has no member named\n   \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_destroy\u0027:\ninclude/net/dst_ops.h:60: error: \u0027struct dst_ops\u0027 has no member named\n   \u0027pcpuc_entries\u0027\nmake[4]: *** [drivers/net/wireless/b43legacy/xmit.o] Error 1\nmake[3]: *** [drivers/net/wireless/b43legacy] Error 2\nmake[2]: *** [drivers/net/wireless] Error 2\nmake[1]: *** [drivers/net] Error 2\nmake: *** [drivers] Error 2\n\nThe cause is a missing include of \u003clinux/cache.h\u003e, which is present for\ni386 and x86_64 architectures, but not for arm.\n\nSigned-off-by: Arnd Hannemann \u003carnd@arndnet.de\u003e\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nCc: Stable \u003cstable@kernel.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d577f1ccdd8ae8bfbe6063eb2ba2a350259e9031",
      "tree": "75ad5e24a7031ff4f16f5a2572a0ff4ac9959168",
      "parents": [
        "c59504ebc5baa628706d10c2d3c7e1f4bc3c2147"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Nov 14 17:04:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 15 11:07:16 2010 -0800"
      },
      "message": "include/net/caif/cfctrl.h: Remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc9ff19da9bf76a2f70bcb80225a1c587c162e52",
      "tree": "181efcd617a42a48fa94c51cfe9dc0e77b3b5775",
      "parents": [
        "e1f2d8c2cc61d2b9472efe44e8a2b098336914b4"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Wed Nov 03 04:41:38 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 15 10:44:04 2010 -0800"
      },
      "message": "xfrm: use gre key as flow upper protocol info\n\nThe GRE Key field is intended to be used for identifying an individual\ntraffic flow within a tunnel. It is useful to be able to have XFRM\npolicy selector matches to have different policies for different\nGRE tunnels.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "749b527b21465fb079796c03ffb4302584dc31c1",
      "tree": "07269dcd8f82d163c3d7195d536f61b768da6c58",
      "parents": [
        "7ca43d03b1291481bdf894bbaec5d580e7684e7d"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Oct 20 10:18:54 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 15 13:24:09 2010 -0500"
      },
      "message": "cfg80211: fix allowing country IEs for WIPHY_FLAG_STRICT_REGULATORY\n\nWe should be enabling country IE hints for WIPHY_FLAG_STRICT_REGULATORY\neven if we haven\u0027t yet recieved regulatory domain hint for the driver\nif it needed one. Without this Country IEs are not passed on to drivers\nthat have set WIPHY_FLAG_STRICT_REGULATORY, today this is just all\nAtheros chipset drivers: ath5k, ath9k, ar9170, carl9170.\n\nThis was part of the original design, however it was completely\noverlooked...\n\nCc: Easwar Krishnan \u003ceaswar.krishnan@atheros.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c25ecd0a21d5e08160cb5cc984f9e2b8ee347443",
      "tree": "0e4dcacf1bf603f259b8d27445a10e60fa8d00d7",
      "parents": [
        "190683a9d5457e6d962c232ffbecac3ab158dddd",
        "9457b24a0955bbdd2e89220a75de69fe09501bba"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 14 11:57:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 14 11:57:05 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "9457b24a0955bbdd2e89220a75de69fe09501bba",
      "tree": "cb484848e14cc2705c4513ad3ec1f0420a4d55db",
      "parents": [
        "80ef913f5e6a84551545016cea709f5e96d0cda6",
        "0597d1b99fcfc2c0eada09a698f85ed413d4ba84"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 17:17:55 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 17:17:55 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (66 commits)\n  can-bcm: fix minor heap overflow\n  gianfar: Do not call device_set_wakeup_enable() under a spinlock\n  ipv6: Warn users if maximum number of routes is reached.\n  docs: Add neigh/gc_thresh3 and route/max_size documentation.\n  axnet_cs: fix resume problem for some Ax88790 chip\n  ipv6: addrconf: don\u0027t remove address state on ifdown if the address is being kept\n  tcp: Don\u0027t change unlocked socket state in tcp_v4_err().\n  x25: Prevent crashing when parsing bad X.25 facilities\n  cxgb4vf: add call to Firmware to reset VF State.\n  cxgb4vf: Fail open if link_start() fails.\n  cxgb4vf: flesh out PCI Device ID Table ...\n  cxgb4vf: fix some errors in Gather List to skb conversion\n  cxgb4vf: fix bug in Generic Receive Offload\n  cxgb4vf: don\u0027t implement trivial (and incorrect) ndo_select_queue()\n  ixgbe: Look inside vlan when determining offload protocol.\n  bnx2x: Look inside vlan when determining checksum proto.\n  vlan: Add function to retrieve EtherType from vlan packets.\n  virtio-net: init link state correctly\n  ucc_geth: Fix deadlock\n  ucc_geth: Do not bring the whole IF down when TX failure.\n  ...\n"
    },
    {
      "commit": "1d7138de878d1d4210727c1200193e69596f93b3",
      "tree": "f7abb08bfdf35d1e876f93d24ce44072d2f6ed72",
      "parents": [
        "f5539b5bfa2e00f2a6fd35731db66142a2f327c0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 12 05:46:50 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 12 13:18:57 2010 -0800"
      },
      "message": "igmp: RCU conversion of in_dev-\u003emc_list\n\nin_dev-\u003emc_list is protected by one rwlock (in_dev-\u003emc_list_lock).\n\nThis can easily be converted to a RCU protection.\n\nWriters hold RTNL, so mc_list_lock is removed, not replaced by a\nspinlock.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Cypher Wu \u003ccypher.w@gmail.com\u003e\nCc: Américo Wang \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c753796769e4fb0cd813b6e5801b3c01f4681d4f",
      "tree": "f137ec0b76593a2aa1a6a263bcc1e4cf82bdf7b5",
      "parents": [
        "ed1deb7021b4dfee1d544b91edff4ef92f5c3b54"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 11 17:07:48 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 11 17:07:48 2010 -0800"
      },
      "message": "ipv4: Make rt-\u003efl.iif tests lest obscure.\n\nWhen we test rt-\u003efl.iif against zero, we\u0027re seeing if it\u0027s\nan output or an input route.\n\nMake that explicit with some helper functions.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72cdd1d971c0deb1619c5c339270570c43647a78",
      "tree": "15e3c63cf135818ae1b5cbc9d85ef2c48c03804c",
      "parents": [
        "46b13fc5c0f239f36e84665c73087d5fa86bfd86"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 11 07:14:07 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 11 10:29:40 2010 -0800"
      },
      "message": "net: get rid of rtable-\u003eidev\n\nIt seems idev field in struct rtable has no special purpose, but adding\nextra atomic ops.\n\nWe hold refcounts on the device itself (using percpu data, so pretty\ncheap in current kernel).\n\ninfiniband case is solved using dst.dev instead of idev-\u003edev\n\nRemoval of this field means routing without route cache is now using\nshared data, percpu data, and only potential contention is a pair of\natomic ops on struct neighbour per forwarded packet.\n\nAbout 5% speedup on routing test.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Sean Hefty \u003csean.hefty@intel.com\u003e\nCc: Hal Rosenstock \u003chal.rosenstock@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46b13fc5c0f239f36e84665c73087d5fa86bfd86",
      "tree": "435ef8301a89c04f56b305b219ddcece068bb273",
      "parents": [
        "c0c04c2a89cf6363da2940da59afd2e30001b991"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 11 06:57:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 11 10:29:40 2010 -0800"
      },
      "message": "neigh: reorder struct neighbour\n\nIt is important to move nud_state outside of the often modified cache\nline (because of refcnt), to reduce false sharing in neigh_event_send()\n\nThis is a followup of commit 0ed8ddf4045f (neigh: Protect neigh-\u003eha[]\nwith a seqlock)\n\nThis gives a 7% speedup on routing test with IP route cache disabled.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d987e5c75107ca7515fa19e857cfa24aab6ec8f",
      "tree": "6392c5f08f0df39d42a079336f6be3960ac404dc",
      "parents": [
        "67286640f638f5ad41a946b9a3dc75327950248f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 09 23:24:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 10 12:12:00 2010 -0800"
      },
      "message": "net: avoid limits overflow\n\nRobin Holt tried to boot a 16TB machine and found some limits were\nreached : sysctl_tcp_mem[2], sysctl_udp_mem[2]\n\nWe can switch infrastructure to use long \"instead\" of \"int\", now\natomic_long_t primitives are available for free.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReported-by: Robin Holt \u003cholt@sgi.com\u003e\nReviewed-by: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc766e4c4965915ab52a1d1fa3c7a7b3e7bc07f0",
      "tree": "d45160f52eea37d4e5149d511c3c577bef253801",
      "parents": [
        "e4a7b93bd5d84e1e79917d024d17d745d190fc9a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 29 03:09:24 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 08 13:50:08 2010 -0800"
      },
      "message": "decnet: RCU conversion and get rid of dev_base_lock\n\nWhile tracking dev_base_lock users, I found decnet used it in\ndnet_select_source(), but for a wrong purpose:\n\nWriters only hold RTNL, not dev_base_lock, so readers must use RCU if\nthey cannot use RTNL.\n\nAdds an rcu_head in struct dn_ifaddr and handle proper RCU management.\n\nAdds __rcu annotation in dn_route as well.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0eaeec8e8dfdc31815941054802dcccd7c3fe1d",
      "tree": "d7b0d172b7b9b3476c15e2cb001af2d4f8b6a39e",
      "parents": [
        "a7bcf21e60c73cb7f7c13fad928967d7e47c3cac",
        "aa58163a76a3aef33c7220931543d45d0fe43753"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 08 12:38:28 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 08 12:38:28 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "43b81f85ebfbed9c720f3c27ec7f364930aa3b5e",
      "tree": "9e741f629267b9e7742f42c62e77200a8c336b15",
      "parents": [
        "86c2c0a8a4965ae5cbc0ff97ed39a4472e8e9b23"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Sun Nov 07 19:58:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 07 19:58:05 2010 -0800"
      },
      "message": "net dst: need linux/cache.h for ____cacheline_aligned_in_smp.\n\nPresently the b43legacy build fails on an sh randconfig:\n\nIn file included from include/net/dst.h:12,\n                 from drivers/net/wireless/b43legacy/xmit.c:32:\ninclude/net/dst_ops.h:28: error: expected \u0027:\u0027, \u0027,\u0027, \u0027;\u0027, \u0027}\u0027 or \u0027__attribute__\u0027 before \u0027____cacheline_aligned_in_smp\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_get_fast\u0027:\ninclude/net/dst_ops.h:33: error: \u0027struct dst_ops\u0027 has no member named \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_get_slow\u0027:\ninclude/net/dst_ops.h:41: error: \u0027struct dst_ops\u0027 has no member named \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_add\u0027:\ninclude/net/dst_ops.h:49: error: \u0027struct dst_ops\u0027 has no member named \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_init\u0027:\ninclude/net/dst_ops.h:55: error: \u0027struct dst_ops\u0027 has no member named \u0027pcpuc_entries\u0027\ninclude/net/dst_ops.h: In function \u0027dst_entries_destroy\u0027:\ninclude/net/dst_ops.h:60: error: \u0027struct dst_ops\u0027 has no member named \u0027pcpuc_entries\u0027\nmake[5]: *** [drivers/net/wireless/b43legacy/xmit.o] Error 1\nmake[5]: *** Waiting for unfinished jobs....\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4b4a2700f462102569b407102c60d3b9cf4432a0",
      "tree": "d326b404c99ca477d47aa0e06eb64f0b3e2d8347",
      "parents": [
        "f69fa76482e654f7d94e4aa40ea0ebf04363396a",
        "22e76c849d505d87c5ecf3d3e6742a65f0ff4860"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 05 15:25:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 05 15:25:48 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (41 commits)\n  inet_diag: Make sure we actually run the same bytecode we audited.\n  netlink: Make nlmsg_find_attr take a const nlmsghdr*.\n  fib: fib_result_assign() should not change fib refcounts\n  netfilter: ip6_tables: fix information leak to userspace\n  cls_cgroup: Fix crash on module unload\n  memory corruption in X.25 facilities parsing\n  net dst: fix percpu_counter list corruption and poison overwritten\n  rds: Remove kfreed tcp conn from list\n  rds: Lost locking in loop connection freeing\n  de2104x: fix panic on load\n  atl1 : fix panic on load\n  netxen: remove unused firmware exports\n  caif: Remove noisy printout when disconnecting caif socket\n  caif: SPI-driver bugfix - incorrect padding.\n  caif: Bugfix for socket priority, bindtodev and dbg channel.\n  smsc911x: Set Ethernet EEPROM size to supported device\u0027s size\n  ipv4: netfilter: ip_tables: fix information leak to userland\n  ipv4: netfilter: arp_tables: fix information leak to userland\n  cxgb4vf: remove call to stop TX queues at load time.\n  cxgb4: remove call to stop TX queues at load time.\n  ...\n"
    },
    {
      "commit": "6b8c92ba07287578718335ce409de8e8d7217e40",
      "tree": "2faf1c0398cd6236af4193dd78c4e27207358fc2",
      "parents": [
        "1f1b9c9990205759aae31b7734b0ede41a867f32"
      ],
      "author": {
        "name": "Nelson Elhage",
        "email": "nelhage@ksplice.com",
        "time": "Wed Nov 03 16:35:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 04 12:26:34 2010 -0700"
      },
      "message": "netlink: Make nlmsg_find_attr take a const nlmsghdr*.\n\nThis will let us use it on a nlmsghdr stored inside a netlink_callback.\n\nSigned-off-by: Nelson Elhage \u003cnelhage@ksplice.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c24a5d1b4f48900f3ed1b1ad70c51f1983df822",
      "tree": "c40f3756a0b64af118e64dd8f345c6e6649e66a8",
      "parents": [
        "f2527ec436fd675f08a8e7434f6e940688cb96d0"
      ],
      "author": {
        "name": "Sjur Brændeland",
        "email": "sjur.brandeland@stericsson.com",
        "time": "Mon Nov 01 11:52:48 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 03 18:50:03 2010 -0700"
      },
      "message": "caif: SPI-driver bugfix - incorrect padding.\n\nSigned-off-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2527ec436fd675f08a8e7434f6e940688cb96d0",
      "tree": "f3c723c652b58cd4862d635e598a4ad88eedec64",
      "parents": [
        "6cc0e949afe757d240fba4ad1839a27f66c3bd72"
      ],
      "author": {
        "name": "André Carvalho de Matos",
        "email": "andre.carvalho.matos@stericsson.com",
        "time": "Mon Nov 01 11:52:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 03 18:50:03 2010 -0700"
      },
      "message": "caif: Bugfix for socket priority, bindtodev and dbg channel.\n\nChanges:\no Bugfix: SO_PRIORITY for SOL_SOCKET could not be handled\n  in caif\u0027s setsockopt,  using the struct sock attribute priority instead.\n\no Bugfix: SO_BINDTODEVICE for SOL_SOCKET could not be handled\n  in caif\u0027s setsockopt,  using the struct sock attribute ifindex instead.\n\no Wrong assert statement for RFM layer segmentation.\n\no CAIF Debug channels was not working over SPI, caif_payload_info\n  containing padding info must be initialized.\n\no Check on pointer before dereferencing when unregister dev in caif_dev.c\n\nSigned-off-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1840897ab5d39b2e510c610ee262ded79919e718",
      "tree": "0b7fe95e3eda357d35b0d017f2b678b652307827",
      "parents": [
        "d56f84e7e317c69adefb2454a3d538a6d7e11e4b",
        "a4765fa7bfb92d5b9de19a503674b6624f95a7ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 29 14:17:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 29 14:17:12 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (34 commits)\n  b43: Fix warning at drivers/mmc/core/core.c:237 in mmc_wait_for_cmd\n  mac80211: fix failure to check kmalloc return value in key_key_read\n  libertas: Fix sd8686 firmware reload\n  ath9k: Fix incorrect access of rate flags in RC\n  netfilter: xt_socket: Make tproto signed in socket_mt6_v1().\n  stmmac: enable/disable rx/tx in the core with a single write.\n  net: atarilance - flags should be unsigned long\n  netxen: fix kdump\n  pktgen: Limit how much data we copy onto the stack.\n  net: Limit socket I/O iovec total length to INT_MAX.\n  USB: gadget: fix ethernet gadget crash in gether_setup\n  fib: Fix fib zone and its hash leak on namespace stop\n  cxgb3: Fix panic in free_tx_desc()\n  cxgb3: fix crash due to manipulating queues before registration\n  8390: Don\u0027t oops on starting dev queue\n  dccp ccid-2: Stop polling\n  dccp: Refine the wait-for-ccid mechanism\n  dccp: Extend CCID packet dequeueing interface\n  dccp: Return-value convention of hc_tx_send_packet()\n  igbvf: fix panic on load\n  ...\n"
    },
    {
      "commit": "4aa2c466a7733af093a526e9d1cdd0b3b90d47e9",
      "tree": "093d99b6c728867a8eb9548463d94661e3d0799e",
      "parents": [
        "b1424ed91076db0b19ba4141856150df9b717dde"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Oct 28 02:00:43 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 28 10:27:03 2010 -0700"
      },
      "message": "fib: Fix fib zone and its hash leak on namespace stop\n\nWhen we stop a namespace we flush the table and free one, but the\nadded fn_zone-s (and their hashes if grown) are leaked. Need to free.\nTries releases all its stuff in the flushing code.\n\nShame on us - this bug exists since the very first make-fib-per-net\npatches in 2.6.27 :(\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b165d60145b717261a0234f989c442c2b68b6ec0",
      "tree": "024f9f2c71ff85a806ed47cbbf451edeaa7111a5",
      "parents": [
        "7b3bb3fe166702b504f1068359c9550d3b277eaf"
      ],
      "author": {
        "name": "Venkateswararao Jujjuri (JV)",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Fri Oct 22 10:13:12 2010 -0700"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:49 2010 -0500"
      },
      "message": "9p: Add datasync to client side TFSYNC/RFSYNC for dotl\n\nSYNOPSIS\n    size[4] Tfsync tag[2] fid[4] datasync[4]\n\n    size[4] Rfsync tag[2]\n\nDESCRIPTION\n\n    The Tfsync transaction transfers (\"flushes\") all modified in-core data of\n    file identified by fid to the disk device (or other  permanent  storage\n    device)  where that  file  resides.\n\n    If datasync flag is specified data will be fleshed but does not flush\n    modified metadata unless  that  metadata  is  needed  in order to allow a\n    subsequent data retrieval to be correctly handled.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "329176cc2c50e63c580ddaabb385876db5af1360",
      "tree": "c7a95364c6339f75d37e1b63890d94114cd1935e",
      "parents": [
        "368c09d2a303c39e9f37193b23e945e6754cf0a7"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Tue Sep 28 19:59:25 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:48 2010 -0500"
      },
      "message": "9p: Implement TREADLINK operation for 9p2000.L\n\nSynopsis\n\n\tsize[4] TReadlink tag[2] fid[4]\n\tsize[4] RReadlink tag[2] target[s]\n\nDescription\n\tReadlink is used to return the contents of the symoblic link\n        referred by fid. Contents of symboic link is returned as a\n        response.\n\n\ttarget[s] - Contents of the symbolic link referred by fid.\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nReviewed-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "1d769cd192fc8c4097b1e2cd41fdee6ba3d1b2af",
      "tree": "16fd71ff9178bbfe144a28a2e168c85fb541a11b",
      "parents": [
        "a099027c779068b834f335cfdc3f2bf10f531dd9"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Mon Sep 27 12:22:13 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:47 2010 -0500"
      },
      "message": "9p: Implement TGETLOCK\n\nSynopsis\n\n    size[4] TGetlock tag[2] fid[4] getlock[n]\n    size[4] RGetlock tag[2] getlock[n]\n\nDescription\n\nTGetlock is used to test for the existence of byte range posix locks on a file\nidentified by given fid. The reply contains getlock structure. If the lock could\nbe placed it returns F_UNLCK in type field of getlock structure.  Otherwise it\nreturns the details of the conflicting locks in the getlock structure\n\n    getlock structure:\n      type[1] - Type of lock: F_RDLCK, F_WRLCK\n      start[8] - Starting offset for lock\n      length[8] - Number of bytes to check for the lock\n             If length is 0, check for lock in all bytes starting at the location\n            \u0027start\u0027 through to the end of file\n      pid[4] - PID of the process that wants to take lock/owns the task\n               in case of reply\n      client[4] - Client id of the system that owns the process which\n                  has the conflicting lock\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "a099027c779068b834f335cfdc3f2bf10f531dd9",
      "tree": "eee43443cce85a03c13b1cfdd25bf451445cf78f",
      "parents": [
        "920e65dc6911da28a58e17f4b683302636fc6d8e"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Mon Sep 27 11:34:24 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:47 2010 -0500"
      },
      "message": "9p: Implement TLOCK\n\nSynopsis\n\n    size[4] TLock tag[2] fid[4] flock[n]\n    size[4] RLock tag[2] status[1]\n\nDescription\n\nTlock is used to acquire/release byte range posix locks on a file\nidentified by given fid. The reply contains status of the lock request\n\n    flock structure:\n        type[1] - Type of lock: F_RDLCK, F_WRLCK, F_UNLCK\n        flags[4] - Flags could be either of\n          P9_LOCK_FLAGS_BLOCK - Blocked lock request, if there is a\n            conflicting lock exists, wait for that lock to be released.\n          P9_LOCK_FLAGS_RECLAIM - Reclaim lock request, used when client is\n            trying to reclaim a lock after a server restrart (due to crash)\n        start[8] - Starting offset for lock\n        length[8] - Number of bytes to lock\n          If length is 0, lock all bytes starting at the location \u0027start\u0027\n          through to the end of file\n        pid[4] - PID of the process that wants to take lock\n        client_id[4] - Unique client id\n\n        status[1] - Status of the lock request, can be\n          P9_LOCK_SUCCESS(0), P9_LOCK_BLOCKED(1), P9_LOCK_ERROR(2) or\n          P9_LOCK_GRACE(3)\n          P9_LOCK_SUCCESS - Request was successful\n          P9_LOCK_BLOCKED - A conflicting lock is held by another process\n          P9_LOCK_ERROR - Error while processing the lock request\n          P9_LOCK_GRACE - Server is in grace period, it can\u0027t accept new lock\n            requests in this period (except locks with\n            P9_LOCK_FLAGS_RECLAIM flag set)\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "920e65dc6911da28a58e17f4b683302636fc6d8e",
      "tree": "761280ee48576a45d13df5df685ea6b9da7fd775",
      "parents": [
        "b04faaf3717307cd976a15667c8c24161c1d24ef"
      ],
      "author": {
        "name": "Venkateswararao Jujjuri (JV)",
        "email": "jvrao@linux.vnet.ibm.com",
        "time": "Wed Sep 22 17:19:19 2010 -0700"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:47 2010 -0500"
      },
      "message": "[9p] Introduce client side TFSYNC/RFSYNC for dotl.\n\nSYNOPSIS\n    size[4] Tfsync tag[2] fid[4]\n\n    size[4] Rfsync tag[2]\n\nDESCRIPTION\n\nThe Tfsync transaction transfers (\"flushes\") all modified in-core data of\nfile identified by fid to the disk device (or other  permanent  storage\ndevice)  where that  file  resides.\n\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "4f7ebe807242898ee08ed732d56982874442c304",
      "tree": "25d8cec6b3a487fb9b44b3af20179a6f7b5db36d",
      "parents": [
        "7c7298cffc8f4417c95117c2a432f962c066499d"
      ],
      "author": {
        "name": "Arun R Bharadwaj",
        "email": "arun@linux.vnet.ibm.com",
        "time": "Wed Jul 28 14:17:26 2010 +0530"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Thu Oct 28 09:08:45 2010 -0500"
      },
      "message": "net/9p: This patch implements TLERROR/RLERROR on the 9P client.\n\nSigned-off-by: Arun R Bharadwaj \u003carun@linux.vnet.ibm.com\u003e\nSigned-off-by: Venkateswararao Jujjuri \u003cjvrao@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "a10c02036f82b1fa30d69a62f7c7d9a927e8adbc",
      "tree": "c7435bd8023305fe708a91912aa6d49c68032e90",
      "parents": [
        "4101e976e0376a1820ae55adf8bca7dda5089a7d"
      ],
      "author": {
        "name": "Amarnath Revanna",
        "email": "amarnath.bangalore.revanna@stericsson.com",
        "time": "Wed Oct 27 08:34:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 12:29:51 2010 -0700"
      },
      "message": "caif-u5500: Adding shared memory include\n\nSigned-off-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b914c4ea929a4ba6fb97967800dc473c31552b98",
      "tree": "630f7c81d82e580e5aa5164c0e4cf1d0dadca3ba",
      "parents": [
        "7a2b03c5175e9ddcc2a2d48ca86dea8a88b68383"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 23:55:38 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 11:37:33 2010 -0700"
      },
      "message": "inetpeer: __rcu annotations\n\nAdds __rcu annotations to inetpeer\n\t(struct inet_peer)-\u003eavl_left\n\t(struct inet_peer)-\u003eavl_right\n\nThis is a tedious cleanup, but removes one smp_wmb() from link_to_pool()\nsince we now use more self documenting rcu_assign_pointer().\n\nNote the use of RCU_INIT_POINTER() instead of rcu_assign_pointer() in\nall cases we dont need a memory barrier.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a2b03c5175e9ddcc2a2d48ca86dea8a88b68383",
      "tree": "ccc580891d9d17e2482e2f3db2b2c8cf80bdf773",
      "parents": [
        "b33eab08445d86c3d0dec3111ce10df561328705"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 26 09:24:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 11:37:32 2010 -0700"
      },
      "message": "fib_rules: __rcu annotates ctarget\n\nAdds __rcu annotation to (struct fib_rule)-\u003ectarget\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b33eab08445d86c3d0dec3111ce10df561328705",
      "tree": "381a37141d4da9cf6cb3a8c8c37c6363d856f8e4",
      "parents": [
        "e0ad61ec867fdd262804afa7a68e11fc9930c2b9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 21:01:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 11:37:32 2010 -0700"
      },
      "message": "tunnels: add __rcu annotations\n\nAdd __rcu annotations to :\n        (struct ip_tunnel)-\u003eprl\n        (struct ip_tunnel_prl_entry)-\u003enext\n        (struct xfrm_tunnel)-\u003enext\n\tstruct xfrm_tunnel *tunnel4_handlers\n\tstruct xfrm_tunnel *tunnel64_handlers\n\nAnd use appropriate rcu primitives to reduce sparse warnings if\nCONFIG_SPARSE_RCU_POINTER\u003dy\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e0ad61ec867fdd262804afa7a68e11fc9930c2b9",
      "tree": "f59451cdfa2086757e55b18b87167b0fef3de2c1",
      "parents": [
        "1c31720a74e19bb57f301350a3b03210fa2ba9e3"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 21:02:28 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 11:37:31 2010 -0700"
      },
      "message": "net: add __rcu annotations to protocol\n\nAdd __rcu annotations to :\n        struct net_protocol *inet_protos\n        struct net_protocol *inet6_protos\n\nAnd use appropriate casts to reduce sparse warnings if\nCONFIG_SPARSE_RCU_POINTER\u003dy\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c31720a74e19bb57f301350a3b03210fa2ba9e3",
      "tree": "053f29ffa53383eb003ac632971f31e1643ef1d9",
      "parents": [
        "c1b60092cf307fef12f793abf7cf8167e26a6ccf"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 21:02:07 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 27 11:37:31 2010 -0700"
      },
      "message": "ipv4: add __rcu annotations to routes.c\n\nAdd __rcu annotations to :\n        (struct dst_entry)-\u003ert_next\n        (struct rt_hash_bucket)-\u003echain\n\nAnd use appropriate rcu primitives to reduce sparse warnings if\nCONFIG_SPARSE_RCU_POINTER\u003dy\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43a951e9994fd218ab4e641f94a2fc53556c3675",
      "tree": "497fe39185131f1d729c980c264562ff5cab86e8",
      "parents": [
        "0d7da9ddd9a4eb7808698d04b98bf9d62d02649b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 03:32:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 25 14:18:28 2010 -0700"
      },
      "message": "ipv4: add __rcu annotations to ip_ra_chain\n\nAdd __rcu annotations to :\n        (struct ip_ra_chain)-\u003enext\n\tstruct ip_ra_chain *ip_ra_chain;\n\nAnd use appropriate rcu primitives.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d7da9ddd9a4eb7808698d04b98bf9d62d02649b",
      "tree": "b170122c08d47be35a056782be54573ba19fe0b0",
      "parents": [
        "1c87733d0682547050ccccb400cdac425fa43b39"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 03:47:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 25 14:18:28 2010 -0700"
      },
      "message": "net: add __rcu annotation to sk_filter\n\nAdd __rcu annotation to :\n        (struct sock)-\u003esk_filter\n\nAnd use appropriate rcu primitives to reduce sparse warnings if\nCONFIG_SPARSE_RCU_POINTER\u003dy\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c87733d0682547050ccccb400cdac425fa43b39",
      "tree": "8ec9de7722a2be0e97d9ad6a04d12fb0d298b201",
      "parents": [
        "6e3f7faf3e8a3e226b1a6b955aac12abf2f2e1b6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 25 03:20:11 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 25 14:18:27 2010 -0700"
      },
      "message": "net_ns: add __rcu annotations\n\nadd __rcu annotation to (struct net)-\u003egen, and use\nrcu_dereference_protected() in net_assign_generic()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f0bcf152582e7403155627a38e07bf3ef7f3cf5",
      "tree": "0dafb9ea61fa01bb8850ee2bcce97b98c23a7c8f",
      "parents": [
        "3cc77ec74e1583b50b8405114cdbd6b8ebb8c474"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Oct 24 21:33:16 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 25 13:09:45 2010 -0700"
      },
      "message": "tunnels: add _rcu annotations\n\n(struct ip6_tnl)-\u003enext is rcu protected :\n(struct ip_tunnel)-\u003enext is rcu protected :\n(struct xfrm6_tunnel)-\u003enext is rcu protected :\n\nadd __rcu annotation and proper rcu primitives.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3cc77ec74e1583b50b8405114cdbd6b8ebb8c474",
      "tree": "3f45e2ddfc224edd166b1cdc79ddff62532b4c7d",
      "parents": [
        "198caeca3eb4c81bbdbeb34a870868002f89b3d2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Oct 24 21:32:36 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 25 13:09:44 2010 -0700"
      },
      "message": "net/802: add __rcu annotations\n\n(struct net_device)-\u003egarp_port is rcu protected :\n(struct garp_port)-\u003eapplicants is rcu protected :\n\nadd __rcu annotation and proper rcu primitives.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f05647dd81c11a6a165ccc8f0c1370b16f3bcb0",
      "tree": "7851ef1c93aa1aba7ef327ca4b75fd35e6d10f29",
      "parents": [
        "02f36038c568111ad4fc433f6fa760ff5e38fab4",
        "ec37a48d1d16c30b655ac5280209edf52a6775d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 23 11:47:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 23 11:47:02 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1699 commits)\n  bnx2/bnx2x: Unsupported Ethtool operations should return -EINVAL.\n  vlan: Calling vlan_hwaccel_do_receive() is always valid.\n  tproxy: use the interface primary IP address as a default value for --on-ip\n  tproxy: added IPv6 support to the socket match\n  cxgb3: function namespace cleanup\n  tproxy: added IPv6 support to the TPROXY target\n  tproxy: added IPv6 socket lookup function to nf_tproxy_core\n  be2net: Changes to use only priority codes allowed by f/w\n  tproxy: allow non-local binds of IPv6 sockets if IP_TRANSPARENT is enabled\n  tproxy: added tproxy sockopt interface in the IPV6 layer\n  tproxy: added udp6_lib_lookup function\n  tproxy: added const specifiers to udp lookup functions\n  tproxy: split off ipv6 defragmentation to a separate module\n  l2tp: small cleanup\n  nf_nat: restrict ICMP translation for embedded header\n  can: mcp251x: fix generation of error frames\n  can: mcp251x: fix endless loop in interrupt handler if CANINTF_MERRF is set\n  can-raw: add msg_flags to distinguish local traffic\n  9p: client code cleanup\n  rds: make local functions/variables static\n  ...\n\nFix up conflicts in net/core/dev.c, drivers/net/pcmcia/smc91c92_cs.c and\ndrivers/net/wireless/ath/ath9k/debug.c as per David\n"
    },
    {
      "commit": "888a6f77e0418b049f83d37547c209b904d30af4",
      "tree": "42cdb9f781d2177e6b380e69a66a27ec7705f51f",
      "parents": [
        "31b7eab27a314b153d8fa07ba9e9ec00a98141e1",
        "6506cf6ce68d78a5470a8360c965dafe8e4b78e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:12 2010 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (52 commits)\n  sched: fix RCU lockdep splat from task_group()\n  rcu: using ACCESS_ONCE() to observe the jiffies_stall/rnp-\u003eqsmask value\n  sched: suppress RCU lockdep splat in task_fork_fair\n  net: suppress RCU lockdep false positive in sock_update_classid\n  rcu: move check from rcu_dereference_bh to rcu_read_lock_bh_held\n  rcu: Add advice to PROVE_RCU_REPEATEDLY kernel config parameter\n  rcu: Add tracing data to support queueing models\n  rcu: fix sparse errors in rcutorture.c\n  rcu: only one evaluation of arg in rcu_dereference_check() unless sparse\n  kernel: Remove undead ifdef CONFIG_DEBUG_LOCK_ALLOC\n  rcu: fix _oddness handling of verbose stall warnings\n  rcu: performance fixes to TINY_PREEMPT_RCU callback checking\n  rcu: upgrade stallwarn.txt documentation for CPU-bound RT processes\n  vhost: add __rcu annotations\n  rcu: add comment stating that list_empty() applies to RCU-protected lists\n  rcu: apply TINY_PREEMPT_RCU read-side speedup to TREE_PREEMPT_RCU\n  rcu: combine duplicate code, courtesy of CONFIG_PREEMPT_RCU\n  rcu: Upgrade srcu_read_lock() docbook about SRCU grace periods\n  rcu: document ways of stalling updates in low-memory situations\n  rcu: repair code-duplication FIXMEs\n  ...\n"
    },
    {
      "commit": "9941fb62762253774cc6177d0b9172ece5133fe1",
      "tree": "641fc2b376e2f84c7023aa0cd8b9d76f954cc3a1",
      "parents": [
        "a5190b4eea1f1c53ee26b3d1176441cafa8e7f79",
        "3b1a1ce6f418cb7ab35eb55c8a6575987a524e30"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 08:21:34 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 08:21:34 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "3b1a1ce6f418cb7ab35eb55c8a6575987a524e30",
      "tree": "a3ebee69d6370631746a348f5852eeb955df5bd3",
      "parents": [
        "cc6eb433856983e91071469c4ce57accb6947ccb",
        "b0aeef30433ea6854e985c2e9842fa19f51b95cc"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 16:25:51 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 16:25:51 2010 +0200"
      },
      "message": "Merge branch \u0027for-patrick\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6\n"
    },
    {
      "commit": "3b9afb29917f4ab08decf358ecfd354a72a91ac0",
      "tree": "fbc5b5d684ddb8ea276d93ad5890eab55001c896",
      "parents": [
        "0a513f6af962525ed4b3395f8c8d5daae8682aa9"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 16:12:14 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 16:12:14 2010 +0200"
      },
      "message": "tproxy: added IPv6 socket lookup function to nf_tproxy_core\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "aa976fc011efa1f0e3290c6c9addf7c20757f885",
      "tree": "93e692330e1d8e3e366bb0fec71b394c5e79ee93",
      "parents": [
        "88440ae70eda83d0cc94148d404f4990c9f1289c"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 16:05:41 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 16:05:41 2010 +0200"
      },
      "message": "tproxy: added udp6_lib_lookup function\n\nJust like with IPv4, we need access to the UDP hash table to look up local\nsockets, but instead of exporting the global udp_table, export a lookup\nfunction.\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "e97c3e278e951501c2f385de70c3ceacdea78c4a",
      "tree": "1794d174ef487cff2ff135f8ca4c795c847f41ed",
      "parents": [
        "093d282321daeb19c107e5f1f16d7f68484f3ade"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 16:03:43 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 16:03:43 2010 +0200"
      },
      "message": "tproxy: split off ipv6 defragmentation to a separate module\n\nLike with IPv4, TProxy needs IPv6 defragmentation but does not\nrequire connection tracking. Since defragmentation was coupled\nwith conntrack, I split off the two, creating an nf_defrag_ipv6 module,\nsimilar to the already existing nf_defrag_ipv4.\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "32a875adcdcf5f470bf967250cfd01722e23844f",
      "tree": "3dbb0e3118de15d22c48df74ab5d953a2839102b",
      "parents": [
        "ff51bf841587c75b58d25ed77263158619784dd3"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Oct 19 06:48:16 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 04:26:39 2010 -0700"
      },
      "message": "9p: client code cleanup\n\nMake p9_client_version static since only used in one file.\nRemove p9_client_auth because it is defined but never used.\nCompile tested only.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "093d282321daeb19c107e5f1f16d7f68484f3ade",
      "tree": "36e9eed23573068819bf67a91caac6ebf60d0d7c",
      "parents": [
        "6006db84a91838813cdad8a6622a4e39efe9ea47"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 13:06:43 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 13:06:43 2010 +0200"
      },
      "message": "tproxy: fix hash locking issue when using port redirection in __inet_inherit_port()\n\nWhen __inet_inherit_port() is called on a tproxy connection the wrong locks are\nheld for the inet_bind_bucket it is added to. __inet_inherit_port() made an\nimplicit assumption that the listener\u0027s port number (and thus its bind bucket).\nUnfortunately, if you\u0027re using the TPROXY target to redirect skbs to a\ntransparent proxy that assumption is not true anymore and things break.\n\nThis patch adds code to __inet_inherit_port() so that it can handle this case\nby looking up or creating a new bind bucket for the child socket and updates\ncallers of __inet_inherit_port() to gracefully handle __inet_inherit_port()\nfailing.\n\nReported by and original patch from Stephen Buck \u003cstephen.buck@exinda.com\u003e.\nSee http://marc.info/?t\u003d128169268200001\u0026r\u003d1\u0026w\u003d2 for the original discussion.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "6006db84a91838813cdad8a6622a4e39efe9ea47",
      "tree": "842b0a7efaf2d826c82e04ae5552e9b94c6de858",
      "parents": [
        "106e4c26b1529e559d1aae777f11b4f8f7bafc26"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 12:47:34 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 12:47:34 2010 +0200"
      },
      "message": "tproxy: add lookup type checks for UDP in nf_tproxy_get_sock_v4()\n\nAlso, inline this function as the lookup_type is always a literal\nand inlining removes branches performed at runtime.\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "106e4c26b1529e559d1aae777f11b4f8f7bafc26",
      "tree": "e784c61379e767255bf941f9d78d9ef6e7c58640",
      "parents": [
        "d86bef73b4a24e59e7c1f896a72bbf38430ac2c6"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Thu Oct 21 12:45:14 2010 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Oct 21 12:45:14 2010 +0200"
      },
      "message": "tproxy: kick out TIME_WAIT sockets in case a new connection comes in with the same tuple\n\nWithout tproxy redirections an incoming SYN kicks out conflicting\nTIME_WAIT sockets, in order to handle clients that reuse ports\nwithin the TIME_WAIT period.\n\nThe same mechanism didn\u0027t work in case TProxy is involved in finding\nthe proper socket, as the time_wait processing code looked up the\nlistening socket assuming that the listener addr/port matches those\nof the established connection.\n\nThis is not the case with TProxy as the listener addr/port is possibly\nchanged with the tproxy rule.\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "3511c9132f8b1e1b5634e41a3331c44b0c13be70",
      "tree": "fecff28f3bf8fbfdecd33d9b98253d60f1d45bf7",
      "parents": [
        "26d8ee75e08cfca8b65ade871d68c8cd96e4ea23"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Sat Oct 16 13:04:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 03:09:47 2010 -0700"
      },
      "message": "net_sched: remove the unused parameter of qdisc_create_dflt()\n\nThe first parameter dev isn\u0027t in use in qdisc_create_dflt().\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nAcked-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c4c40c42da468ef02dc04940930c1926c964558",
      "tree": "3285bd36ab5ff41a24245e94e50016d5bf45bedf",
      "parents": [
        "8d8a0b1cc2a8f9794a3f1f747089b6a93774408d"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Oct 15 05:14:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 03:09:46 2010 -0700"
      },
      "message": "xfrm: make xfrm_bundle_ok local\n\nOnly used in one place.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d8a0b1cc2a8f9794a3f1f747089b6a93774408d",
      "tree": "4baab7706f18ceafb92a2fa953350ed7d9959f3a",
      "parents": [
        "6f747aca5e61778190d1e27bdc469f49149f0230"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Oct 15 05:12:01 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 03:09:45 2010 -0700"
      },
      "message": "rtnetlink: remove rtnl_kill_links\n\nThe function rtnl_kill_links is defined but never used.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f747aca5e61778190d1e27bdc469f49149f0230",
      "tree": "127de8b153a05437add3b959f10eea831466781e",
      "parents": [
        "191cc6877408348e90f4adb64726b60a93246b8b"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Oct 15 05:15:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 21 03:09:45 2010 -0700"
      },
      "message": "xfrm6: make xfrm6_tunnel_free_spi local\n\nFunction only defined and used in one file.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d79641a96d612aaa6d57a4d4f521d7ed9c9ccdd",
      "tree": "9783497ace4f8ff8eeac24524ecb93012166c60d",
      "parents": [
        "3233759be7eeca9998c514b8f49e8cf2b85e64d3"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Sun Oct 17 16:46:17 2010 +0300"
      },
      "committer": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Thu Oct 21 11:04:43 2010 +0200"
      },
      "message": "ipvs: provide address family for debugging\n\n \tAs skb-\u003eprotocol is not valid in LOCAL_OUT add\nparameter for address family in packet debugging functions.\nEven if ports are not present in AH and ESP change them to\nuse ip_vs_tcpudp_debug_packet to show at least valid addresses\nas before. This patch removes the last user of skb-\u003eprotocol\nin IPVS.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "fc604767613b6d2036cdc35b660bc39451040a47",
      "tree": "50177ff8f66e0f153b2f172f98290eae5fcaee24",
      "parents": [
        "f5a41847acc535e2e2018e397b1876ba7577d9d9"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Sun Oct 17 16:38:15 2010 +0300"
      },
      "committer": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Thu Oct 21 11:03:46 2010 +0200"
      },
      "message": "ipvs: changes for local real server\n\n \tThis patch deals with local real servers:\n\n- Add support for DNAT to local address (different real server port).\nIt needs ip_vs_out hook in LOCAL_OUT for both families because\nskb-\u003eprotocol is not set for locally generated packets and can not\nbe used to set \u0027af\u0027.\n\n- Skip packets in ip_vs_in marked with skb-\u003eipvs_property because\nip_vs_out processing can be executed in LOCAL_OUT but we still\nhave the conn_out_get check in ip_vs_in.\n\n- Ignore packets with inet-\u003enodefrag from local stack\n\n- Require skb_dst(skb) !\u003d NULL because we use it to get struct net\n\n- Add support for changing the route to local IPv4 stack after DNAT\ndepending on the source address type. Local client sets output\nroute and the remote client sets input route. It looks like\nIPv6 does not need such rerouting because the replies use\naddresses from initial incoming header, not from skb route.\n\n- All transmitters now have strict checks for the destination\naddress type: redirect from non-local address to local real\nserver requires NAT method, local address can not be used as\nsource address when talking to remote real server.\n\n- Now LOCALNODE is not set explicitly as forwarding\nmethod in real server to allow the connections to provide\ncorrect forwarding method to the backup server. Not sure if\nthis breaks tools that expect to see \u0027Local\u0027 real server type.\nIf needed, this can be supported with new flag IP_VS_DEST_F_LOCAL.\nNow it should be possible connections in backup that lost\ntheir fwmark information during sync to be forwarded properly\nto their daddr, even if it is local address in the backup server.\nBy this way backup could be used as real server for DR or TUN,\nfor NAT there are some restrictions because tuple collisions\nin conntracks can create problems for the traffic.\n\n- Call ip_vs_dst_reset when destination is updated in case\nsome real server IP type is changed between local and remote.\n\n[ horms@verge.net.au: removed trailing whitespace ]\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    }
  ],
  "next": "190ecd27cd7294105e3b26ca71663c7d940acbbb"
}
