)]}'
{
  "log": [
    {
      "commit": "cb80ef463d1881757ade3197cdf875a2ff856651",
      "tree": "a2b8f2b4f087dfc90d9148a94fcc2aa6702eb5eb",
      "parents": [
        "f7ad74fef3af6c6e2ef7f01c5589d77fe7db3d7c"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Fri Apr 27 08:23:59 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 28 22:21:51 2012 -0400"
      },
      "message": "net/ipv6/udp: UDP encapsulation: move socket locking into udpv6_queue_rcv_skb()\n\nIn order to make sure that when the encap_rcv() hook is introduced it is\nnot called with the socket lock held, move socket locking from callers into\nudpv6_queue_rcv_skb(), matching what happens in IPv4.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7ad74fef3af6c6e2ef7f01c5589d77fe7db3d7c",
      "tree": "fc0276ddd7983b0e346ce08104c7165a0b710295",
      "parents": [
        "a319726af99d3da87f942a4ae95a4f6527badf4a"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Fri Apr 27 08:23:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 28 22:21:50 2012 -0400"
      },
      "message": "net/ipv6/udp: UDP encapsulation: break backlog_rcv into __udpv6_queue_rcv_skb\n\nThis is the first step in reworking the IPv6 UDP code to be structured more\nlike the IPv4 UDP code.  This patch creates __udpv6_queue_rcv_skb() with\nthe equivalent sematics to __udp_queue_rcv_skb(), and wires it up to the\nbacklog_rcv method.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb75a36c8a1ab68e2dbfbe172f12c792b0c6dba8",
      "tree": "3ec47675cd372e442f070b901baa19439a3dd8fc",
      "parents": [
        "82981930125abfd39d7c8378a9cfdf5e1be2002b"
      ],
      "author": {
        "name": "Jeffrin Jose",
        "email": "ahiliation@yahoo.co.in",
        "time": "Wed Apr 25 19:17:29 2012 +0530"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 28 21:45:00 2012 -0400"
      },
      "message": "net: Fixed a coding style issue related to spaces.\n\nFixed a coding style issue relating to spaces\nin net/core/sock.c\n\nSigned-off-by: Jeffrin Jose \u003cahiliation@yahoo.co.in\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82981930125abfd39d7c8378a9cfdf5e1be2002b",
      "tree": "1c5ee5b39af1f39cca3f598beb4e187ae96da685",
      "parents": [
        "c60f6aa8acfd93f4550c7d5eb03351d4cbd1460d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 26 20:07:59 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 27 02:14:21 2012 -0400"
      },
      "message": "net: cleanups in sock_setsockopt()\n\nUse min_t()/max_t() macros, reformat two comments, use !!test_bit() to\nmatch !!sock_flag()\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "feb50ac19e3527c3c68391718f07272349639a84",
      "tree": "17f20cab0fe7c0931bb2286fa59aaa40780a5d29",
      "parents": [
        "d73988923f73b5a3364b06ae1368542785f0af84"
      ],
      "author": {
        "name": "hartleys",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Apr 24 14:38:37 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 27 00:03:34 2012 -0400"
      },
      "message": "crush: include header for global symbols\n\nInclude the header to pickup the definitions of the global symbols.\n\nQuiets the following sparse warnings:\n\nwarning: symbol \u0027crush_find_rule\u0027 was not declared. Should it be static?\nwarning: symbol \u0027crush_do_rule\u0027 was not declared. Should it be static?\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nCc: Sage Weil \u003csage@newdream.net\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "67469601406c12ced3db9956aeb0ef0854e2952f",
      "tree": "a25902d49946c394ebf110265179da2dc5b7d827",
      "parents": [
        "a85c9bb895aed633615078f69f4a4bce9e39be5f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Apr 24 07:37:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 27 00:03:34 2012 -0400"
      },
      "message": "ipv6: RTAX_FEATURE_ALLFRAG causes inefficient TCP segment sizing\n\nQuoting Tore Anderson from :\nhttps://bugzilla.kernel.org/show_bug.cgi?id\u003d42572\n\nWhen RTAX_FEATURE_ALLFRAG is set on a route, the effective TCP segment\nsize does not take into account the size of the IPv6 Fragmentation\nheader that needs to be included in outbound packets, causing every\ntransmitted TCP segment to be fragmented across two IPv6 packets, the\nlatter of which will only contain 8 bytes of actual payload.\n\nRTAX_FEATURE_ALLFRAG is typically set on a route in response to\nreceving a ICMPv6 Packet Too Big message indicating a Path MTU of less\nthan 1280 bytes. 1280 bytes is the minimum IPv6 MTU, however ICMPv6\nPTBs with MTU \u003c 1280 are still valid, in particular when an IPv6\npacket is sent to an IPv4 destination through a stateless translator.\nAny ICMPv4 Need To Fragment packets originated from the IPv4 part of\nthe path will be translated to ICMPv6 PTB which may then indicate an\nMTU of less than 1280.\n\nThe Linux kernel refuses to reduce the effective MTU to anything below\n1280 bytes, instead it sets it to exactly 1280 bytes, and\nRTAX_FEATURE_ALLFRAG is also set. However, the TCP segment size appears\nto be set to 1240 bytes (1280 Path MTU - 40 bytes of IPv6 header),\ninstead of 1232 (additionally taking into account the 8 bytes required\nby the IPv6 Fragmentation extension header).\n\nThis in turn results in rather inefficient transmission, as every\ntransmitted TCP segment now is split in two fragments containing\n1232+8 bytes of payload.\n\nAfter this patch, all the outgoing packets that includes a\nFragmentation header all are \"atomic\" or \"non-fragmented\" fragments,\ni.e., they both have Offset\u003d0 and More Fragments\u003d0.\n\nWith help from David S. Miller\n\nReported-by: Tore Anderson \u003ctore@fud.no\u003e\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nTested-by: Tore Anderson \u003ctore@fud.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a85c9bb895aed633615078f69f4a4bce9e39be5f",
      "tree": "0eafc0be614fc70a1c853ee2249e3152d8d15718",
      "parents": [
        "de248a75c35e0208294cf304b112916254b69184",
        "d9b8ae6bd8c3304569a25079fcdbebaa28a48ee4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 15:54:45 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 15:54:45 2012 -0400"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next\n"
    },
    {
      "commit": "d9b8ae6bd8c3304569a25079fcdbebaa28a48ee4",
      "tree": "9ce3e4eb355685f970dd7333a0a935109aff0583",
      "parents": [
        "872f24dbc604ef585ea7eec73020dcdfaffd1956",
        "94c514fe240fc0dd02187b78facefde8b6744634"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 26 15:03:48 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 26 15:03:48 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-testmode.c\n"
    },
    {
      "commit": "de248a75c35e0208294cf304b112916254b69184",
      "tree": "0d00a02fdb994f8b1cbf239c11080fec86977639",
      "parents": [
        "2d319508a3551d2995e5cd12d649821b3be00e5b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Apr 25 23:43:04 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 06:13:51 2012 -0400"
      },
      "message": "tcp repair: Fix unaligned access when repairing options (v2)\n\nDon\u0027t pick __u8/__u16 values directly from raw pointers, but instead use\nan array of structures of code:value pairs. This is OK, since the buffer\nwe take options from is not an skb memory, but a user-to-kernel one.\n\nFor those options which don\u0027t require any value now, require this to be\nzero (for potential future extension of this API).\n\nv2: Changed tcp_repair_opt to use two __u32-s as spotted by David Laight.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2d319508a3551d2995e5cd12d649821b3be00e5b",
      "tree": "d930c931fce331d7dde1915f5acc556c3374350d",
      "parents": [
        "c2e94d73ea24df499f9183b7401e8d6b94efa417"
      ],
      "author": {
        "name": "alex.bluesman.smirnov@gmail.com",
        "email": "alex.bluesman.smirnov@gmail.com",
        "time": "Wed Apr 25 23:35:51 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 06:01:09 2012 -0400"
      },
      "message": "6lowpan: duplicate definition of IEEE802154_ALEN\n\nThe same macros is defined in \u0027include/net/af_ieee802154.h\u0027 and is called\nIEEE802154_ADDR_LEN. No need another one, so remove it.\n\nSigned-off-by: Alexander Smirnov \u003calex.bluesman.smirnov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c2e94d73ea24df499f9183b7401e8d6b94efa417",
      "tree": "524a9e4393e9d32fcd7acc5e9d96f7538bb3925b",
      "parents": [
        "07003408fc219ca7c45d2f559999f6aca08d711a"
      ],
      "author": {
        "name": "alex.bluesman.smirnov@gmail.com",
        "email": "alex.bluesman.smirnov@gmail.com",
        "time": "Wed Apr 25 23:35:50 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 06:01:09 2012 -0400"
      },
      "message": "6lowpan: move frame allocation code to a separate function\n\nSeparate frame allocation routine from data processing function.\nThis makes code more human readable and easier for understanding.\n\nSigned-off-by: Alexander Smirnov \u003calex.bluesman.smirnov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8dcf01fc009d12d01fd195ed95eaaee61178f21a",
      "tree": "daa9665ec6c4fe8ca17232242c8b3126e7b14076",
      "parents": [
        "808db80a7eeff8314ac51654bfefc864582eea13"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "davidshan@tencent.com",
        "time": "Tue Apr 24 18:21:07 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 25 20:46:59 2012 -0400"
      },
      "message": "net: sock_diag_handler structs can be const\n\nread only, so change it to const.\n\nSigned-off-by: Shan Wei \u003cdavidshan@tencent.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "808db80a7eeff8314ac51654bfefc864582eea13",
      "tree": "9c42d1486a5e6052d0c285a5a6a6d38fdbe0b890",
      "parents": [
        "081579840b4b2421e37bc67e3b089b7ca64ef040"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Apr 24 10:17:59 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 25 20:39:46 2012 -0400"
      },
      "message": "ipv6: call consume_skb() in frag/reassembly\n\nSome kfree_skb() calls should be replaced by consume_skb() to avoid\ndrop_monitor/dropwatch false positives.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "081579840b4b2421e37bc67e3b089b7ca64ef040",
      "tree": "4af15e68503680089276cc676ea23c10128a3e1c",
      "parents": [
        "872f24dbc604ef585ea7eec73020dcdfaffd1956"
      ],
      "author": {
        "name": "John Fastabend",
        "email": "john.r.fastabend@intel.com",
        "time": "Fri Apr 20 09:49:23 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 25 19:47:17 2012 -0400"
      },
      "message": "net: dcb: add CEE notify calls\n\nThis adds code to trigger CEE events when an APP change or setall\ncommand is made from user space. This simplifies user space code\nsignificantly by creating a single interface to listen on that\nworks with both firmware and userland agents.\n\nAnd if we end up with multiple agents this keeps every thing in\nsync userland agents, firmware agents, and kernel notifier consumers.\n\nFor an example agent that listens for these events see:\n\nhttps://github.com/jrfastab/cgdcbxd\n\ncgdcbxd is a daemon used to monitor DCB netlink events and manage\nthe net_prio control group sub-system.\n\nSigned-off-by: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nAcked-by: Shmulik Ravid \u003cshmulikr@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "94c514fe240fc0dd02187b78facefde8b6744634",
      "tree": "d61b01327c2264e4b4e002180076135f98d40533",
      "parents": [
        "ad12886091cbc955dafd6cb91de2411b3ff36b39"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Tue Apr 24 14:18:28 2012 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 24 14:56:10 2012 -0400"
      },
      "message": "mac80211: Adds clean sdata helper\n\nAdds hepler to clean sdata ieee80211_clean_sdata similar way as\nieee80211_setup_sdata is implemented. The function will be used by other\ninterfaces later.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7e3ed02c6e65a0cb4c9259c0d34740305d9aa5e7",
      "tree": "47a2a239639feaafd89729224d9e26492bb4eccd",
      "parents": [
        "030ef8f8a59c77d44cadeded6d3a5a12557774f4"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Apr 23 19:49:03 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 24 14:54:28 2012 -0400"
      },
      "message": "mac80211: fix num_mcast_sta counting issues\n\nMoving a STA to an AP VLAN prevents num_mcast_sta from being decremented\nonce the STA leaves, because sta-\u003esdata changes. Fix this by checking\nfor AP VLANs as well.\n\nAlso exclude 4-addr VLAN stations from num_mcast_sta - remote 4-addr\nstations ignore 3-address multicast frames anyway. In a typical bridge\nconfiguration they receive the same packets as 4-address unicast.\n\nThis patch also fixes clearing the sdata-\u003eu.vlan.sta pointer when the\nSTA is removed from a 4-addr VLAN.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "030ef8f8a59c77d44cadeded6d3a5a12557774f4",
      "tree": "f9a21ddf7b127badf8619ffbc4809c74870eb3fc",
      "parents": [
        "be6bcabc7919522f28c99642b8e04ef7b8e19283"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Apr 23 19:49:02 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 24 14:54:28 2012 -0400"
      },
      "message": "mac80211: rename AP variable num_sta_authorized to num_mcast_sta\n\nIt is only used to test for BSS multicast receivers.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "be6bcabc7919522f28c99642b8e04ef7b8e19283",
      "tree": "b273f570a0c091a89622e12b3c4e05c2be396709",
      "parents": [
        "1479177ba69023a5bb9480fb6914f4a343452887"
      ],
      "author": {
        "name": "Wey-Yi Guy",
        "email": "wey-yi.w.guy@intel.com",
        "time": "Mon Apr 23 09:30:32 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 24 14:54:27 2012 -0400"
      },
      "message": "mac80211: check for non-managed interface\n\nAverage beacon signal only keep tracked by managed interface,\ngive warning and return 0 for the others.\n\nSigned-off-by: Wey-Yi Guy \u003cwey-yi.w.guy@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "872f24dbc604ef585ea7eec73020dcdfaffd1956",
      "tree": "1cc35d2485a3be001329f53a69ee7dcba86539d6",
      "parents": [
        "bfb253c9b277acd9f85b1886ff82b1dd5fbff2ae"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Apr 23 04:49:13 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:41:03 2012 -0400"
      },
      "message": "tipc: remove inline instances from C source files.\n\nUntie gcc\u0027s hands and let it do what it wants within the\nindividual source files.  There are two files, node.c and\nport.c -- only the latter effectively changes (gcc-4.5.2).\nObjdump shows gcc deciding to not inline port_peernode().\n\nSuggested-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bfb253c9b277acd9f85b1886ff82b1dd5fbff2ae",
      "tree": "6239aa3416d30085e6043c42a5fff8d8fa6ecdc0",
      "parents": [
        "658cb354edf0f16cc5a2a2bda3ec5be1bba25e6d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 21:30:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:35:14 2012 -0400"
      },
      "message": "af_netlink: drop_monitor/dropwatch friendly\n\nNeed to consume_skb() instead of kfree_skb() in netlink_dump() and\nnetlink_unicast_kernel() to avoid false dropwatch positives.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "658cb354edf0f16cc5a2a2bda3ec5be1bba25e6d",
      "tree": "4751e0b4b17af814646503492e195890e1e9ce59",
      "parents": [
        "38ba0a65faf451dd46c7860b4fade84c0b8e444f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 21:30:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:35:14 2012 -0400"
      },
      "message": "af_netlink: cleanups\n\nnetlink_destroy_callback() move to avoid forward reference\n\nCodingStyle cleanups\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "38ba0a65faf451dd46c7860b4fade84c0b8e444f",
      "tree": "30689f565d6ff6a0b046e0c8b05a5aa7544144dd",
      "parents": [
        "783c175f902b1ae011f12de45770e7912638ea1a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 23 17:48:27 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:18:02 2012 -0400"
      },
      "message": "net: skb_can_coalesce returns a boolean\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "783c175f902b1ae011f12de45770e7912638ea1a",
      "tree": "7da5c4b2280c15b4d54e13ed95c1351a14800018",
      "parents": [
        "d7ccf7c0a0585a126109a4b7c2a309184bfa4cba"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 23 17:34:36 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:36:58 2012 -0400"
      },
      "message": "tcp: tcp_try_coalesce returns a boolean\n\nThis clarifies code intention, as suggested by David.\n\nSuggested-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7ccf7c0a0585a126109a4b7c2a309184bfa4cba",
      "tree": "4c2cc81c2e93d9b338515e9d741cc6347e918d05",
      "parents": [
        "f24001941c99776f41bd3f09c07d91205c2ad9d4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 23 23:35:04 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:35:04 2012 -0400"
      },
      "message": "net: make spd_fill_page() linear argument a bool\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f24001941c99776f41bd3f09c07d91205c2ad9d4",
      "tree": "0ab31480ccdf343b61db045e195d096068ef7c73",
      "parents": [
        "a108d5f35adc5c5d5cdc882dc0bb920565551bff",
        "4d634ca35a8b38530b134ae92bc9e3cc9c23c030"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:14:36 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:15:17 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nFix merge between commit 3adadc08cc1e (\"net ax25: Reorder ax25_exit to\nremove races\") and commit 0ca7a4c87d27 (\"net ax25: Simplify and\ncleanup the ax25 sysctl handling\")\n\nThe former moved around the sysctl register/unregister calls, the\nlater simply removed them.\n\nWith help from Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a108d5f35adc5c5d5cdc882dc0bb920565551bff",
      "tree": "e51fb82f47aa14feec0ccc4f1b4a39920ac99d05",
      "parents": [
        "41c73a0d44c902e92397552acce181295eaa448b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:06:11 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:06:11 2012 -0400"
      },
      "message": "net: Use bool and remove inline in skb_splice_bits() code.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "41c73a0d44c902e92397552acce181295eaa448b",
      "tree": "522ac16cf3c1db59ef21e30cf14177dea1a7ea24",
      "parents": [
        "1402d366019fedaa2b024f2bac06b7cc9a8782e1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 12:26:16 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:01:35 2012 -0400"
      },
      "message": "net: speedup skb_splice_bits()\n\nCommit 35f3d14db (pipe: add support for shrinking and growing pipes)\nadded a slowdown for splice(socket -\u003e pipe), as we might grow the spd\nused in skb_splice_bits() for each skb we process in splice() syscall.\n\nIts not needed since skb lengths are capped. The default on-stack arrays\nare more than enough.\n\nUse MAX_SKB_FRAGS instead of PIPE_DEF_BUFFERS to describe the reasonable\nlimit per skb.\n\nAdd coalescing support to help splicing of GRO skbs built from linear\nskbs (linked into frag_list)\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1402d366019fedaa2b024f2bac06b7cc9a8782e1",
      "tree": "f74c00a2308ad13d6970cdc7e5cc29d2f0f809fa",
      "parents": [
        "e29ecd51de1683e6aeb88d76251f194b0311f749"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Mon Apr 23 07:11:42 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 22:42:49 2012 -0400"
      },
      "message": "tcp: introduce tcp_try_coalesce\n\ncommit c8628155ece3 (tcp: reduce out_of_order memory use) took care of\ncoalescing tcp segments provided by legacy devices (linear skbs)\n\nWe extend this idea to fragged skbs, as their truesize can be heavy.\n\nixgbe for example uses 256+1024+PAGE_SIZE/2 \u003d 3328 bytes per segment.\n\nUse this coalescing strategy for receive queue too.\n\nThis contributes to reduce number of tcp collapses, at minimal cost, and\nreduces memory overhead and packets drops.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da882c1f2ecadb0ed582628ec1585e36b137c0f0",
      "tree": "c89b136ec4ae978adf1078fdce199423a59ba8c0",
      "parents": [
        "f545a38f74584cc7424cb74f792a00c6d2589485"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 23:38:54 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 22:28:28 2012 -0400"
      },
      "message": "tcp: sk_add_backlog() is too agressive for TCP\n\nWhile investigating TCP performance problems on 10Gb+ links, we found a\ntcp sender was dropping lot of incoming ACKS because of sk_rcvbuf limit\nin sk_add_backlog(), especially if receiver doesnt use GRO/LRO and sends\none ACK every two MSS segments.\n\nA sender usually tweaks sk_sndbuf, but sk_rcvbuf stays at its default\nvalue (87380), allowing a too small backlog.\n\nA TCP ACK, even being small, can consume nearly same truesize space than\noutgoing packets. Using sk_rcvbuf + sk_sndbuf as a limit makes sense and\nis fast to compute.\n\nPerformance results on netperf, single flow, receiver with disabled\nGRO/LRO : 7500 Mbits instead of 6050 Mbits, no more TCPBacklogDrop\nincrements at sender.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f545a38f74584cc7424cb74f792a00c6d2589485",
      "tree": "b272cbfed3267a7750f55f23989e1b070ae6ac3e",
      "parents": [
        "b98985073bc5403ef1320866e4ef8bbc5d587ceb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sun Apr 22 23:34:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 22:28:28 2012 -0400"
      },
      "message": "net: add a limit parameter to sk_add_backlog()\n\nsk_add_backlog() \u0026 sk_rcvqueues_full() hard coded sk_rcvbuf as the\nmemory limit. We need to make this limit a parameter for TCP use.\n\nNo functional change expected in this patch, all callers still using the\nold sk_rcvbuf limit.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Tom Herbert \u003ctherbert@google.com\u003e\nCc: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCc: Yuchung Cheng \u003cycheng@google.com\u003e\nCc: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "218d2e26dceb241e4b253c5c4702ee1b38b715cc",
      "tree": "3ae9e3da50fc6ed24ab12c2c6ea7d1e2516bef08",
      "parents": [
        "0d8a0a17288e419c2e5e9ce18c8b66b390eb7e23"
      ],
      "author": {
        "name": "Bala Shanmugam",
        "email": "bkamatch@qca.qualcomm.com",
        "time": "Fri Apr 20 19:12:58 2012 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:37:41 2012 -0400"
      },
      "message": "cfg80211: Validate legacy rateset.\n\nLegacy rates are not validated while configuring\ntx rateset using iw. So below cmd is accepted by nl80211.\nsudo iw wlan2 set bitrates legacy-2.4 1 2 3\n\nValidate legacy rates and return\nerror if any rate in the rateset is not valid.\n\nSigned-off-by: Bala Shanmugam \u003cbkamatch@qca.qualcomm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0d8a0a17288e419c2e5e9ce18c8b66b390eb7e23",
      "tree": "73660da190f46b320b45f6fdf7491b9c0a0364d4",
      "parents": [
        "6ac95b57657d1bf5776f29a1697c123f62d5a58a"
      ],
      "author": {
        "name": "Wey-Yi Guy",
        "email": "wey-yi.w.guy@intel.com",
        "time": "Fri Apr 20 11:57:00 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:37:41 2012 -0400"
      },
      "message": "mac80211: declare ieee80211_ave_rssi as EXPORT\n\nieee80211_ave_rssi need to be declare as export for driver to use it.\n\nSigned-off-by: Wey-Yi Guy \u003cwey-yi.w.guy@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6ac95b57657d1bf5776f29a1697c123f62d5a58a",
      "tree": "a888e3f352dc720dd743e165496bbafa01f301ed",
      "parents": [
        "b96f20b3afff36f30baa1e1e121ccbf7518a988d"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Fri Apr 20 09:52:56 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:37:41 2012 -0400"
      },
      "message": "mac80211: fixup for mesh TSF adjustment latency in Toffset setpoint\n\nThe original patch defined the correction margin but did not apply it.\n\nSigned-off-by: Shinichi Hotori \u003chotorinn@gmail.com\u003e\nSigned-off-by: Yu Niiro \u003cyu.niiro@gmail.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aee286c2cf94929f90d4d1f64ee9b316007ba284",
      "tree": "ca3f8a9e70d36d2960b8f8620c328b135c3c7483",
      "parents": [
        "e76781e48f969e044d318485274b9574f1ccc3dd"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Apr 18 19:24:14 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:34:07 2012 -0400"
      },
      "message": "mac80211: fix STA channel width field\n\nAccording to IEEE 802.11 8.4.2.59, set the \"STA channel width\" bit to 0\nif transmitting STA is using a 20mhz channel.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e76781e48f969e044d318485274b9574f1ccc3dd",
      "tree": "4d1e496a3a466aa73a620ec54bbb309d5ffe0e6f",
      "parents": [
        "f743ff4907fa5bc2b460f48ace831a560806a9fb"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Apr 18 19:24:13 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:34:07 2012 -0400"
      },
      "message": "mac80211: don\u0027t set mesh peer ht caps if ht disabled\n\nBlindly setting ht caps on a mesh peer\u0027s station entry would result in\nMCS rates being used by the rate control algorithm even if no ht had\nbeen configured. Fix this by checking the channel type before assigning\nht capabilites.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f743ff4907fa5bc2b460f48ace831a560806a9fb",
      "tree": "2bf0f42ee4935ff5ee558d5db6a6e529ec1997e3",
      "parents": [
        "54ab1ffb6cd94e5c013d61c192e78e30fdf25f8a"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Apr 18 19:23:43 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:34:07 2012 -0400"
      },
      "message": "mac80211: refactor mesh peer rate handling\n\nTo avoid passing supp_rates and basic_rates around all the time, just\nderive these when needed in mesh_matches_local() and mesh_peer_init().\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "54ab1ffb6cd94e5c013d61c192e78e30fdf25f8a",
      "tree": "4ec8399914d37eb20d2231bb16cf5e7bdfc80eab",
      "parents": [
        "75acd5a82afda30fb615335ff6c8e5f3a1ca5e83"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Wed Apr 18 19:23:42 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:34:07 2012 -0400"
      },
      "message": "mac80211: refactor mesh peer initialization\n\nThis patch unifies the previous two paths toward mesh peer creation a\nbit. It also fixes a bug where a peer\u0027s changing rates or HT mode\nwouldn\u0027t register on leaving and then returning to the mesh with a sta\nentry still present.\n\nAlso clean up locking and clear possibly stale ht cap.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8a690674e0601efbe9a7b16a5826fc522645cca3",
      "tree": "c22f122d36d33a2ac446a0626a0fa4213cb9190d",
      "parents": [
        "e828b9fb4f6c3513950759d5fb902db5bd054048"
      ],
      "author": {
        "name": "Ben Greear",
        "email": "greearb@candelatech.com",
        "time": "Tue Apr 17 10:54:16 2012 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 23 15:28:33 2012 -0400"
      },
      "message": "mac80211: Support on-channel scan option.\n\nThis based on an idea posted by Stanislaw Gruszka,\nthough I accept full blame for the implementation!\n\nThis has been tested with ath9k.\n\nThe idea is to let users scan on the current operating\nchannel without interrupting normal traffic more than\nabsolutely necessary (changing power level might reset\nsome hardware, for instance).\n\nSigned-off-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ac807fa8e625aff58060876d70298c93a59c4252",
      "tree": "286eb33f1eac8342857555909f03fcd930883947",
      "parents": [
        "cd754a574596ecc321b9a14fda24a82cce4b0d1d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 03:21:58 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 03:21:58 2012 -0400"
      },
      "message": "tcp: Fix build warning after tcp_{v4,v6}_init_sock consolidation.\n\nnet/ipv4/tcp_ipv4.c: In function \u0027tcp_v4_init_sock\u0027:\nnet/ipv4/tcp_ipv4.c:1891:19: warning: unused variable \u0027tp\u0027 [-Wunused-variable]\nnet/ipv6/tcp_ipv6.c: In function \u0027tcp_v6_init_sock\u0027:\nnet/ipv6/tcp_ipv6.c:1836:19: warning: unused variable \u0027tp\u0027 [-Wunused-variable]\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d135c522f1234f62e81be29cebdf59e9955139ad",
      "tree": "7e151f3995d6a30499c2bec2c07b2bf68754788e",
      "parents": [
        "163faf31778e536ac6125bc8b14f4667adc910e9"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Sun Apr 22 09:45:47 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 22 17:09:35 2012 -0400"
      },
      "message": "tcp: fix TCP_MAXSEG for established IPv6 passive sockets\n\nCommit f5fff5d forgot to fix TCP_MAXSEG behavior IPv6 sockets, so IPv6\nTCP server sockets that used TCP_MAXSEG would find that the advmss of\nchild sockets would be incorrect. This commit mirrors the advmss logic\nfrom tcp_v4_syn_recv_sock in tcp_v6_syn_recv_sock. Eventually this\nlogic should probably be shared between IPv4 and IPv6, but this at\nleast fixes this issue.\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c06fff6e175729f0d89201c98d21e55c2bf1a850",
      "tree": "d60332d8bdfd452dadcd94739762308952fca6af",
      "parents": [
        "900f65d361d333c949ef76a828343075f4fdf523"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 21:56:11 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:36:42 2012 -0400"
      },
      "message": "af_packet: packet_getsockopt() cleanup\n\nFactorize code, since most fetched values are int type.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "900f65d361d333c949ef76a828343075f4fdf523",
      "tree": "8b4474c6c9df1fcad4d946c64bcc1535450d0927",
      "parents": [
        "e66e9a31474dcce5be6f1186dc933d8a991c707b"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Thu Apr 19 09:55:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:36:42 2012 -0400"
      },
      "message": "tcp: move duplicate code from tcp_v4_init_sock()/tcp_v6_init_sock()\n\nThis commit moves the (substantial) common code shared between\ntcp_v4_init_sock() and tcp_v6_init_sock() to a new address-family\nindependent function, tcp_init_sock().\n\nCentralizing this functionality should help avoid drift issues,\ne.g. where the IPv4 side is updated without a corresponding update to\nIPv6. There was already some drift: IPv4 initialized snd_cwnd to\nTCP_INIT_CWND, while the IPv6 side was still initializing snd_cwnd to\n2 (in this case it should not matter, since snd_cwnd is also\ninitialized in tcp_init_metrics(), but the general risks and\nmaintenance overhead remain).\n\nWhen diffing the old and new code, note that new tcp_init_sock()\nfunction uses the order of steps from the tcp_v4_init_sock()\nimplementation (the order is slightly different in\ntcp_v6_init_sock()).\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e66e9a31474dcce5be6f1186dc933d8a991c707b",
      "tree": "10bcd8dd605738689797656753ecbbbbab33fe23",
      "parents": [
        "acd69962341a956b5bcc5b4178b70fa527d7ce11"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 09:38:17 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:36:42 2012 -0400"
      },
      "message": "net: allow better page reuse in splice(sock -\u003e pipe)\n\nsplice() from socket to pipe needs linear_to_page() helper to transfert\nskb header to part of page.\n\nWe can reset the offset in the current sk-\u003esk_sndmsg_page if we are the\nlast user of the page.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bbe362be5368b9f531b95a4a9b502ae2832e1dac",
      "tree": "6f31a927c4224e5366d97c621362020ccf7dd689",
      "parents": [
        "e8195b24feb208f6e944e7542779f4397776794d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 07:16:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:28:38 2012 -0400"
      },
      "message": "drop_monitor: allow more events per second\n\nIt seems there is a logic error in trace_drop_common(), since we store\nonly 64 drops, even if they are from same location.\n\nThis fix is a one liner, but we probably need more work to avoid useless\natomic dec/inc\n\nNow I can watch 1 Mpps drops through dropwatch...\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a74e910618efb154936958cfeb2aab7c234478c5",
      "tree": "eda84fcc25b12194b82c14786380121dbf86ec00",
      "parents": [
        "b139ba4e90dccbf4cd4efb112af96a5c9e0b098c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Fri Apr 20 20:04:01 2012 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 16:24:20 2012 -0400"
      },
      "message": "net: change big iov allocations\n\niov of more than 8 entries are allocated in sendmsg()/recvmsg() through\nsock_kmalloc()\n\nAs these allocations are temporary only and small enough, it makes sense\nto use plain kmalloc() and avoid sk_omem_alloc atomic overhead.\n\nSlightly changed fast path to be even faster.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Mike Waychison \u003cmikew@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b139ba4e90dccbf4cd4efb112af96a5c9e0b098c",
      "tree": "c955ff09255e74b8cc991dfa6f67853668a3b3c4",
      "parents": [
        "5e6a3ce6573f0c519d1ff57df60e3877bb2d3151"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:41:57 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Repair connection-time negotiated parameters\n\nThere are options, which are set up on a socket while performing\nTCP handshake. Need to resurrect them on a socket while repairing.\nA new sockoption accepts a buffer and parses it. The buffer should\nbe CODE:VALUE sequence of bytes, where CODE is standard option\ncode and VALUE is the respective value.\n\nOnly 4 options should be handled on repaired socket.\n\nTo read 3 out of 4 of these options the TCP_INFO sockoption can be\nused. An ability to get the last one (the mss_clamp) was added by\nthe previous patch.\n\nNow the restore. Three of these options -- timestamp_ok, mss_clamp\nand snd_wscale -- are just restored on a coket.\n\nThe sack_ok flags has 2 issues. First, whether or not to do sacks\nat all. This flag is just read and set back. No other sack  info is\nsaved or restored, since according to the standart and the code\ndropping all sack-ed segments is OK, the sender will resubmit them\nagain, so after the repair we will probably experience a pause in\nconnection. Next, the fack bit. It\u0027s just set back on a socket if\nthe respective sysctl is set. No collected stats about packets flow\nis preserved. As far as I see (plz, correct me if I\u0027m wrong) the\nfack-based congestion algorithm survives dropping all of the stats\nand repairs itself eventually, probably losing the performance for\nthat period.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e6a3ce6573f0c519d1ff57df60e3877bb2d3151",
      "tree": "bce0733fb197e97c6697e63fb2f30dc2692ffdf3",
      "parents": [
        "c0e88ff0f256958401778ff692da4b8891acb5a9"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:41:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Report mss_clamp with TCP_MAXSEG option in repair mode\n\nThe mss_clamp is the only connection-time negotiated option which\ncannot be obtained from the user space. Make the TCP_MAXSEG sockopt\nreport one in the repair mode.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0e88ff0f256958401778ff692da4b8891acb5a9",
      "tree": "6766354e0c54da93550ffeea082f4dae77bc2c7c",
      "parents": [
        "ee9952831cfd0bbe834f4a26489d7dce74582e37"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:41:01 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Repair socket queues\n\nReading queues under repair mode is done with recvmsg call.\nThe queue-under-repair set by TCP_REPAIR_QUEUE option is used\nto determine which queue should be read. Thus both send and\nreceive queue can be read with this.\n\nCaller must pass the MSG_PEEK flag.\n\nWriting to queues is done with sendmsg call and yet again --\nthe repair-queue option can be used to push data into the\nreceive queue.\n\nWhen putting an skb into receive queue a zero tcp header is\nappented to its head to address the tcp_hdr(skb)-\u003esyn and\nthe -\u003efin checks by the (after repair) tcp_recvmsg. These\nflags flags are both set to zero and that\u0027s why.\n\nThe fin cannot be met in the queue while reading the source\nsocket, since the repair only works for closed/established\nsockets and queueing fin packet always changes its state.\n\nThe syn in the queue denotes that the respective skb\u0027s seq\nis \"off-by-one\" as compared to the actual payload lenght. Thus,\nat the rcv queue refill we can just drop this flag and set the\nskb\u0027s sequences to precice values.\n\nWhen the repair mode is turned off, the write queue seqs are\nupdated so that the whole queue is considered to be \u0027already sent,\nwaiting for ACKs\u0027 (write_seq \u003d snd_nxt \u003c\u003d snd_una). From the\nprotocol POV the send queue looks like it was sent, but the data\nbetween the write_seq and snd_nxt is lost in the network.\n\nThis helps to avoid another sockoption for setting the snd_nxt\nsequence. Leaving the whole queue in a \u0027not yet sent\u0027 state (as\nit will be after sendmsg-s) will not allow to receive any acks\nfrom the peer since the ack_seq will be after the snd_nxt. Thus\neven the ack for the window probe will be dropped and the\nconnection will be \u0027locked\u0027 with the zero peer window.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee9952831cfd0bbe834f4a26489d7dce74582e37",
      "tree": "64c195fa45e1a200f38d68751161d8e06dfb5a6c",
      "parents": [
        "370816aef0c5436c2adbec3966038f36ca326933"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:40:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Initial repair mode\n\nThis includes (according the the previous description):\n\n* TCP_REPAIR sockoption\n\nThis one just puts the socket in/out of the repair mode.\nAllowed for CAP_NET_ADMIN and for closed/establised sockets only.\nWhen repair mode is turned off and the socket happens to be in\nthe established state the window probe is sent to the peer to\n\u0027unlock\u0027 the connection.\n\n* TCP_REPAIR_QUEUE sockoption\n\nThis one sets the queue which we\u0027re about to repair. The\n\u0027no-queue\u0027 is set by default.\n\n* TCP_QUEUE_SEQ socoption\n\nSets the write_seq/rcv_nxt of a selected repaired queue.\nAllowed for TCP_CLOSE-d sockets only. When the socket changes\nits state the other seq-s are changed by the kernel according\nto the protocol rules (most of the existing code is actually\nreused).\n\n* Ability to forcibly bind a socket to a port\n\nThe sk-\u003esk_reuse is set to SK_FORCE_REUSE.\n\n* Immediate connect modification\n\nThe connect syscall initializes the connection, then directly jumps\nto the code which finalizes it.\n\n* Silent close modification\n\nThe close just aborts the connection (similar to SO_LINGER with 0\ntime) but without sending any FIN/RST-s to peer.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "370816aef0c5436c2adbec3966038f36ca326933",
      "tree": "665f8b3b0818aa7aa4f653072d89d1dcfb91a55f",
      "parents": [
        "4a17fd5229c1b6066aa478f6b690f8293ce811a1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:40:01 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "tcp: Move code around\n\nThis is just the preparation patch, which makes the needed for\nTCP repair code ready for use.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a17fd5229c1b6066aa478f6b690f8293ce811a1",
      "tree": "f6acd00935d2d7a990befb4c77f57fdf39f46689",
      "parents": [
        "59c55bdde856c4000bbeb33ba212c3df6f1997a4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Apr 19 03:39:36 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 21 15:52:25 2012 -0400"
      },
      "message": "sock: Introduce named constants for sk_reuse\n\nName them in a \"backward compatible\" manner, i.e. reuse or not\nare still 1 and 0 respectively. The reuse value of 2 means that\nthe socket with it will forcibly reuse everyone else\u0027s port.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f568e5afe35721f2f692bccab243ba87cd8f87a",
      "tree": "cf768cf2fc95974f9228848722aa1afb8fd02a33",
      "parents": [
        "a5347fe36b313c07d59b065d00a8fa56362c5f97"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:46:06 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net: Remove register_net_sysctl_table\n\nAll of the users have been converted to use registera_net_sysctl so we\nno longer need register_net_sysctl.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a5347fe36b313c07d59b065d00a8fa56362c5f97",
      "tree": "8778711b514baca6f5686777c0dea245a8874711",
      "parents": [
        "ec8f23ce0f4005b74013d4d122e0d540397a93c9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:45:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net: Delete all remaining instances of ctl_path\n\nWe don\u0027t use struct ctl_path anymore so delete the exported constants.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec8f23ce0f4005b74013d4d122e0d540397a93c9",
      "tree": "c2f22aa08ad4c0197d3cb41b91cf8d436794fde1",
      "parents": [
        "f99e8f715a5c7ebad5410b1e9b4d744ddb284f54"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:44:49 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net: Convert all sysctl registrations to register_net_sysctl\n\nThis results in code with less boiler plate that is a bit easier\nto read.\n\nAdditionally stops us from using compatibility code in the sysctl\ncore, hastening the day when the compatibility code can be removed.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f99e8f715a5c7ebad5410b1e9b4d744ddb284f54",
      "tree": "82c244a36233aeca19284caa308ca094b88ecade",
      "parents": [
        "8607ddb86711df4504a028cc88299d334b786bf3"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:43:55 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net: Convert nf_conntrack_proto to use register_net_sysctl\n\nThere isn\u0027t much advantage here except that strings paths are a bit\neasier to read, and converting everything to them allows me to kill off\nctl_path.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8607ddb86711df4504a028cc88299d334b786bf3",
      "tree": "fd00eeef53049f1ae1928ba9b06253ab343b3c77",
      "parents": [
        "6105e29320f662bf2f2358e2b2ff1bbf599f387f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:42:09 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:30 2012 -0400"
      },
      "message": "net ipv4: Convert devinet to use register_net_sysctl\n\nUsing an ascii path to register_net_sysctl as opposed to the slightly\nawkward ctl_path allows for much simpler code.\n\nWe no longer need to malloc dev_name to keep it alive the length of our\nsysctl register instead we can use a small temporary buffer on the\nstack.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6105e29320f662bf2f2358e2b2ff1bbf599f387f",
      "tree": "20006457ae627974d428443f68687fb435e22b42",
      "parents": [
        "9bdcc88fa03a09c1f0478c0d7443d0aba7872210"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:41:24 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:29 2012 -0400"
      },
      "message": "net ipv6: Convert addrconf to use register_net_sysctl\n\nUsing an ascii path to register_net_sysctl as opposed to the slightly\nawkward ctl_path allows for much simpler code.\n\nWe no longer need to malloc dev_name to keep it alive the length of our\nsysctl register instead we can use a small temporary buffer on the\nstack.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9bdcc88fa03a09c1f0478c0d7443d0aba7872210",
      "tree": "8483bc09e49e40f0469be1cbd36e14751f5376dd",
      "parents": [
        "8f40a1f9821a4ccb2a237f14d4eb6d6e0e665c14"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:40:37 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:29 2012 -0400"
      },
      "message": "net decnet: Convert to use register_net_sysctl\n\nUsing an ascii path to register_net_sysctl as opposed to the slightly\nawkward ctl_path allows for much simpler code.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f40a1f9821a4ccb2a237f14d4eb6d6e0e665c14",
      "tree": "7b60e0ecca749ae0ef826e335621e194f93f9436",
      "parents": [
        "6dceb03687124b6ee392eb1d9921bd463eab3190"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:38:03 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:29 2012 -0400"
      },
      "message": "net neighbour: Convert to use register_net_sysctl\n\nUsing an ascii path to register_net_sysctl as opposed to the slightly\nawkward ctl_path allows for much simpler code.\n\nWe no longer need to malloc dev_name to keep it alive the length of our\nsysctl register instead we can use a small temporary buffer on the\nstack.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6dceb03687124b6ee392eb1d9921bd463eab3190",
      "tree": "f7a5de779c5cc5cc1d660fabe0678de9c606b83e",
      "parents": [
        "64fb3010400f6051261be9c5c74f29de416dad8f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:37:09 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:29 2012 -0400"
      },
      "message": "net ipv6: Don\u0027t use sysctl tables with .child entries.\n\nThe sysctl core no longer natively understands sysctl tables\nwith .child entries.\n\nSplit the ipv6_table to remove the .child entries.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64fb3010400f6051261be9c5c74f29de416dad8f",
      "tree": "6c3547de66fa11943bdadcd285114df5ace28d75",
      "parents": [
        "0ca7a4c87d27dd2fde0783dec94a821d6d035696"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:35:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:29 2012 -0400"
      },
      "message": "net llc: Don\u0027t use sysctl tables with .child entries.\n\nThe sysctl core no longer natively understands sysctl tables with .child\nentries.\n\nKill the intermediate tables and use register_net_sysctl directly to\nremove the need for compatibility code.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ca7a4c87d27dd2fde0783dec94a821d6d035696",
      "tree": "3f9d1cd9a8146ce751e43f8f103a255fc7ec199d",
      "parents": [
        "4e5ca78541c549ec8886ad2fc19306f35ee672e1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:34:18 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:22:28 2012 -0400"
      },
      "message": "net ax25: Simplify and cleanup the ax25 sysctl handling.\n\nDon\u0027t register/unregister every ax25 table in a batch.  Instead register\nand unregister per device ax25 sysctls as ax25 devices come and go.\n\nThis moves ax25 to be a completely modern sysctl user.  Registering the\nsysctls in just the initial network namespace, removing the use of\n.child entries that are no longer natively supported by the sysctl core\nand taking advantage of the fact that there are no longer any ordering\nconstraints between registering and unregistering different sysctl\ntables.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e5ca78541c549ec8886ad2fc19306f35ee672e1",
      "tree": "8e3119cc1710d20cd4f672e1f91b4adedbd5fab0",
      "parents": [
        "a5287acc6ca3c69821ab4c5439be8c0ff30a20cb"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:32:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:18 2012 -0400"
      },
      "message": "net ipv4: Remove the unneeded registration of an empty net/ipv4/neigh\n\nsysctl no longer requires explicit creation of directories.  The neigh\ndirectory is always populated with at least a default entry so this\nwon\u0027t cause any user visible changes.\n\nDelete the ipv4_path and the ipv4_skeleton these are no longer needed.\n\nDirectly register the ipv4_route_table.\n\nAnd since I am an idiot remove the header definitions that I should\nhave removed in the previous patch.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a5287acc6ca3c69821ab4c5439be8c0ff30a20cb",
      "tree": "ebc0f3938fabf0b1b9e1849c655d77a7b4da2f1f",
      "parents": [
        "45bad914987ed526d468247e0a5f5f7acb2066a1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:26:19 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:18 2012 -0400"
      },
      "message": "net ipv6: Remove unneded registration of an empty net/ipv6/neigh\n\nsysctl no longer requires explicit creation of directories.  The neigh\ndirectory is always populated with at least a default entry so this\nshould cause no user visible changes.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45bad914987ed526d468247e0a5f5f7acb2066a1",
      "tree": "981bc0305704ef0376d8bea35d55eb415732b1eb",
      "parents": [
        "5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:25:13 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:18 2012 -0400"
      },
      "message": "net core: Remove unneded creation of an empty net/core sysctl directory\n\nOn the next line we register the net_core_table in net/core which\ncreates the directory and ensures it exists.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5dd3df105b9f6cb7dd2472b59e028d0d1c878ecb",
      "tree": "b12606e6e74ee6d07823eb268e09d899946279fd",
      "parents": [
        "4344475797a16ef948385780943f7a5cf09f0675"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:24:33 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:17 2012 -0400"
      },
      "message": "net: Move all of the network sysctls without a namespace into init_net.\n\nThis makes it clearer which sysctls are relative to your current network\nnamespace.\n\nThis makes it a little less error prone by not exposing sysctls for the\ninitial network namespace in other namespaces.\n\nThis is the same way we handle all of our other network interfaces to\nuserspace and I can\u0027t honestly remember why we didn\u0027t do this for\nsysctls right from the start.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4344475797a16ef948385780943f7a5cf09f0675",
      "tree": "1cd80eae7c46a1e3f2f5c546212d84d007a5dffa",
      "parents": [
        "2ca794e5e86c800d7f98c4ebb8bd325099c0afe8"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:22:55 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:17 2012 -0400"
      },
      "message": "net: Kill register_sysctl_rotable\n\nregister_sysctl_rotable never caught on as an interesting way to\nregister sysctls.  My take on the situation is that what we want are\nsysctls that we can only see in the initial network namespace.  What we\nhave implemented with register_sysctl_rotable are sysctls that we can\nsee in all of the network namespaces and can only change in the initial\nnetwork namespace.\n\nThat is a very silly way to go.  Just register the network sysctls\nin the initial network namespace and we don\u0027t have any weird special\ncases to deal with.\n\nThe sysctls affected are:\n/proc/sys/net/ipv4/ipfrag_secret_interval\n/proc/sys/net/ipv4/ipfrag_max_dist\n/proc/sys/net/ipv6/ip6frag_secret_interval\n/proc/sys/net/ipv6/mld_max_msf\n\nI really don\u0027t expect anyone will miss them if they can\u0027t read them in a\nchild user namespace.\n\nCC: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ca794e5e86c800d7f98c4ebb8bd325099c0afe8",
      "tree": "f0ae38f58dec5a07ae57e31aca4943c85ffe9d65",
      "parents": [
        "bc8a36942a5c05896d373a8e98d5e6b14514b4bc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:20:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:16 2012 -0400"
      },
      "message": "net sysctl: Initialize the network sysctls sooner to avoid problems.\n\nIf the netfilter code is modified to use register_net_sysctl_table the\nkernel fails to boot because the per net sysctl infrasturce is not setup\nsoon enough.  So to avoid races call net_sysctl_init from sock_init().\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc8a36942a5c05896d373a8e98d5e6b14514b4bc",
      "tree": "178bddda37da663a4bcc4dd57bf68f53b6b8a4bf",
      "parents": [
        "ab41a2ca50d27ee2dc8b9eef07aeb251168271be"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:19:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:16 2012 -0400"
      },
      "message": "net sysctl: Register an empty /proc/sys/net\n\nImplementation limitations of the sysctl core won\u0027t let /proc/sys/net\nreside in a network namespace.  /proc/sys/net at least must be registered\nas a normal sysctl.  So register /proc/sys/net early as an empty directory\nto guarantee we don\u0027t violate this constraint and hit bugs in the sysctl\nimplementation.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab41a2ca50d27ee2dc8b9eef07aeb251168271be",
      "tree": "f564a922248d90a0007b9958fbef4964501d98f9",
      "parents": [
        "167de77fd4e5646f98f67bd9f0a0054a891f6ff4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 19 13:18:47 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 21:21:15 2012 -0400"
      },
      "message": "net: Implement register_net_sysctl.\n\nRight now all of the networking sysctl registrations are running in a\ncompatibiity mode.  The natvie sysctl registration api takes a cstring\nfor a path and a simple ctl_table.  Implement register_net_sysctl so\nthat we can register network sysctls without needing to use\ncompatiblity code in the sysctl core.\n\nSwitching from a ctl_path to a cstring results in less boiler plate\nand denser code that is a little easier to read.\n\nI would simply have changed the arguments to register_net_sysctl_table\ninstead of keeping two functions in parallel but gcc will allow a\nctl_path pointer to be passed to a char * pointer with only issuing a\nwarning resulting in completely incorrect code can be built.  Since I\nhave to change the function name I am taking advantage of the situation\nto let both register_net_sysctl and register_net_sysctl_table live for a\nshort time in parallel which makes clean conversion patches a bit easier\nto read and write.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "167de77fd4e5646f98f67bd9f0a0054a891f6ff4",
      "tree": "abe31d384dbe9c7bad0da839600423d1eda4b6e2",
      "parents": [
        "2528a5dc4331aebbb990f2a56d179dfa35de4a4f",
        "9d52ce4bd3fa9e0cf1658791f2c680e20e0598a1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 20:40:31 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 20 20:40:31 2012 -0400"
      },
      "message": "Merge branch \u0027tipc_net-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n"
    },
    {
      "commit": "9d52ce4bd3fa9e0cf1658791f2c680e20e0598a1",
      "tree": "d3ca5f3602fbd60719d52d291b87dfc5dad71e2d",
      "parents": [
        "630d920dcae546c4e8ef6c01e7c49b2f42822c5f"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Apr 18 09:42:56 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:50 2012 -0400"
      },
      "message": "tipc: Ensure network address change doesn\u0027t impact configuration service\n\nEnhances command validation done by TIPC\u0027s configuration service so\nthat it works properly even if the node\u0027s network address is changed in\nmid-operation. The default node address of \u003c0.0.0\u003e is now recognized as an\nalias for \"this node\" even after a new network address has been assigned.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "630d920dcae546c4e8ef6c01e7c49b2f42822c5f",
      "tree": "16a2846b78b7beb4410ccd759e76b5ad44a917de",
      "parents": [
        "8a55fe74b1a767cb00d6248a847068c9d886d710"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Apr 18 09:42:29 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:49 2012 -0400"
      },
      "message": "tipc: Ensure network address change doesn\u0027t impact rejected message\n\nRevises handling of a rejected message to ensure that a locally\noriginated message is returned properly even if the node\u0027s network\naddress is changed in mid-operation. The routine now treats the\ndefault node address of \u003c0.0.0\u003e as an alias for \"this node\" when\ndetermining where to send a returned message.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "8a55fe74b1a767cb00d6248a847068c9d886d710",
      "tree": "49590d5adbc9a7cd733da667f089875a4e066426",
      "parents": [
        "b8f683d126c1cb757e794d6d904cbe7cf5954797"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Apr 18 09:27:22 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:48 2012 -0400"
      },
      "message": "tipc: handle \u003c0.0.0\u003e as an alias for this node on outgoing msgs\n\nRevises handling of send routines for payload messages to ensure that\nthey are processed properly even if the node\u0027s network address is\nchanged in mid-operation. The routines now treat the default node\naddress of \u003c0.0.0\u003e as an alias for \"this node\" when determining where\nto send an outgoing message.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "b8f683d126c1cb757e794d6d904cbe7cf5954797",
      "tree": "70206c678cb16bf0b7e6e32ea8a6a18111c41b03",
      "parents": [
        "974a5a864bf959b7f3412a31ee8ce001c6628451"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Apr 18 09:22:56 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:47 2012 -0400"
      },
      "message": "tipc: properly handle off-node send requests with invalid addr\n\nThere are two send routines that might conceivably be asked by an\napplication to send a message off-node when the node is still using\nthe default network address.  These now have an added check that\ndetects this and rejects the message gracefully.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "974a5a864bf959b7f3412a31ee8ce001c6628451",
      "tree": "5f5c99f05f5dda3b6d4c384c1420700ab7d580ff",
      "parents": [
        "f0712e86b75f4839773abbc01d5baa7e36e378c2"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Apr 18 09:12:09 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:46 2012 -0400"
      },
      "message": "tipc: take lock while updating node network address\n\nThe routine that changes the node\u0027s network address now takes TIPC\u0027s\nnetwork lock in write mode while the main address variable and associated\ndata structures are being changed; this is needed to ensure that the\nlink subsystem won\u0027t attempt to send a message off-node until the sending\nport\u0027s message header template has been updated with the node\u0027s new\nnetwork address.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "f0712e86b75f4839773abbc01d5baa7e36e378c2",
      "tree": "7f80147f312d1d7f683b4532d8669a831132246e",
      "parents": [
        "d0e17fedc2aeb0c4db09434787ef6d432582e050"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:42:28 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:45 2012 -0400"
      },
      "message": "tipc: Ensure network address change doesn\u0027t impact local connections\n\nRevises routines that deal with connections between two ports on\nthe same node to ensure the connection is not impacted if the node\u0027s\nnetwork address is changed in mid-operation. The routines now treat\nthe default node address of \u003c0.0.0\u003e as an alias for \"this node\" in\nthe following situations:\n\n1) Incoming messages destined to a connected port now handle the alias\nproperly when validating that the message was sent by the expected\npeer port, ensuring that the message will be accepted regardless of\nwhether it specifies the node\u0027s old network address or it\u0027s current one.\n\n2) The code which completes connection establishment now handles the\nalias properly when determining if the peer port is on the same node\nas the connected port.\n\nAn added benefit of addressing issue 1) is that some peer port\nvalidation code has been relocated to TIPC\u0027s socket subsystem, which\nmeans that validation is no longer done twice when a message is\nsent to a non-socket port (such as TIPC\u0027s configuration service or\nnetwork topology service).\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "d0e17fedc2aeb0c4db09434787ef6d432582e050",
      "tree": "5e64f449fc309a6fb9be4e5b954f8ce286abfa62",
      "parents": [
        "f21536d1e73c36b37c50f71013c67f19db77d4b8"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:36:42 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:43 2012 -0400"
      },
      "message": "tipc: delete duplicate peerport/peernode helper functions\n\nPrior to commit 23dd4cce387124ec3ea06ca30d17854ae4d9b772\n\n    \"tipc: Combine port structure with tipc_port structure\"\n\nthere was a need for the two sets of helper functions.  But\nnow they are just duplicates.  Remove the globally visible\nones, and mark the remaining ones as inline.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "f21536d1e73c36b37c50f71013c67f19db77d4b8",
      "tree": "aefaeb429a611ae8a5489956e4004cdf09379416",
      "parents": [
        "5eb0a291fbde1842b8e3f241183a0e2c1399c600"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:22:49 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:42 2012 -0400"
      },
      "message": "tipc: Ensure network address change doesn\u0027t impact new port\n\nRe-orders port creation logic so that the initialization of a new\nport\u0027s message header template occurs while the port list lock is\nheld. This ensures that a change to the node\u0027s network address that\noccurs at the same time as the port is being created does not result\nin the template identifying the sender using the former network\naddress. The new approach guarantees that the new port\u0027s template is\nusing the current network address or that it will be updated when\nthe address changes.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "5eb0a291fbde1842b8e3f241183a0e2c1399c600",
      "tree": "e09f18e68ae0a4ee5133292441a6d03a72c0b5b4",
      "parents": [
        "d4f5c12cdf43ce70731d5abfb6400bfb1be392d3"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:17:35 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:41 2012 -0400"
      },
      "message": "tipc: Optimize re-initialization of port message header templates\n\nRemoves an unnecessary check in the logic that updates the message\nheader template for existing ports when a node\u0027s network address is\nfirst assigned. There is no longer any need to check to see if the\nnode\u0027s network address has actually changed since the calling routine\nhas already verified that this is so.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "d4f5c12cdf43ce70731d5abfb6400bfb1be392d3",
      "tree": "8ce57140f3bd5eb0a11937eb1f9f0640ce33549c",
      "parents": [
        "336ebf5bf524e447227cb1d785b22ca722e6afa7"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:16:34 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:40 2012 -0400"
      },
      "message": "tipc: Ensure network address change doesn\u0027t impact name table updates\n\nRevises routines that add and remove an entry from a node\u0027s name table\nso that the publication scope lists are updated properly even if the\nnode\u0027s network address is changed in mid-operation. The routines now\nrecognize the default node address of \u003c0.0.0\u003e as an alias for \"this node\"\neven after a new network address has been assigned.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "336ebf5bf524e447227cb1d785b22ca722e6afa7",
      "tree": "72e72c183cf43ccfbb756a7866c8b3cf90eb6781",
      "parents": [
        "fd6eced8a482986784eb1f3aa0838dbdd725e71c"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 18:02:01 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:39 2012 -0400"
      },
      "message": "tipc: Add routines for safe checking of node\u0027s network address\n\nIntroduces routines that test whether a given network address is\nequal to a node\u0027s own network address or if it lies within the node\u0027s\nown network cluster, and which work properly regardless of whether\nthe node is using the default network address \u003c0.0.0\u003e or a non-zero\nnetwork address that is assigned later on. In essence, these routines\nensure that address \u003c0.0.0\u003e is treated as an alias for \"this node\",\nregardless of which network address the node is actually using.\n\nOld users of the pre-existing more strict match in_own_cluster()\nhave been accordingly redirected to what is now called\nin_own_cluster_exact() --- which does not extend matching to \u003c0,0,0\u003e.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "fd6eced8a482986784eb1f3aa0838dbdd725e71c",
      "tree": "edc9022ebdf66681e1847b1c0e968b3faa5a44ea",
      "parents": [
        "1110b8d33a54d1b91131e2a70ef0c3c26425b800"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Wed Nov 09 14:22:52 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:37 2012 -0400"
      },
      "message": "tipc: Don\u0027t record failed publication attempt as a success\n\nNo longer increments counter of number of publications by a node\nif an attempt to add a new publication fails. This prevents TIPC from\nincorrectly blocking future publications because the configured maximum\nnumber of publications has been reached.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "1110b8d33a54d1b91131e2a70ef0c3c26425b800",
      "tree": "09563eeba21cc7f816f89101e1b345bcd4316262",
      "parents": [
        "a909804f7c6cb83b7365ed23e9fd4c1267ee9ef0"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 17:57:52 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:36 2012 -0400"
      },
      "message": "tipc: Update node-scope publications when network address is assigned\n\nEnsures that node-scope name publications that exist prior to the\nconfiguration of a node\u0027s network address are properly re-initialized\nwith that address when it is assigned. TIPC\u0027s node-scope publications\nare now tracked using a publications list like the lists used for\ncluster-scope and zone-scope publications so they can be easily updated\nwhen required.\n\nThe inclusion of node scope name publications in a conventional publication\nlist means that they must now also be withdrawn, just like cluster and zone\nscope publications are currently withdrawn.  So some conditional tests on\nscope \u003d\u003d/!\u003d TIPC_NODE_SCOPE are inserted/removed accordingly.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "a909804f7c6cb83b7365ed23e9fd4c1267ee9ef0",
      "tree": "c97c7471f0e4b4c8532a70cae5db9c06319f884c",
      "parents": [
        "e11aa059715e2bacd4e62d57be5557dda697af8e"
      ],
      "author": {
        "name": "Allan Stephens",
        "email": "allan.stephens@windriver.com",
        "time": "Tue Apr 17 17:57:52 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 19 15:46:05 2012 -0400"
      },
      "message": "tipc: Separate cluster-scope and zone-scope names into distinct lists\n\nUtilizes distinct lists to track zone-scope and cluster-scope names\npublished by a node. For now, TIPC continues to process the entries\nin both lists in the same way; however, an upcoming patch will utilize\nthe existence of the lists to prevent the sending of cluster-scope names\nto nodes that are not part of the local cluster.\n\nTo achieve this, an array of publication lists is introduced, so\nthat they can be iterated over and accessed via publ-\u003escope as\nan index where convenient.\n\nSigned-off-by: Allan Stephens \u003callan.stephens@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "3adadc08cc1e2cbcc15a640d639297ef5fcb17f5",
      "tree": "20990c83f62157caf753736e63ea98548404a954",
      "parents": [
        "996f73937cd85031da8dbcd3222a710cb762d428"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Apr 18 16:11:23 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 15:37:48 2012 -0400"
      },
      "message": "net ax25: Reorder ax25_exit to remove races.\n\nWhile reviewing the sysctl code in ax25 I spotted races in ax25_exit\nwhere it is possible to receive notifications and packets after already\nfreeing up some of the data structures needed to process those\nnotifications and updates.\n\nCall unregister_netdevice_notifier early so that the rest of the cleanup\ncode does not need to deal with network devices.  This takes advantage\nof my recent enhancement to unregister_netdevice_notifier to send\nunregister notifications of all network devices that are current\nregistered.\n\nMove the unregistration for packet types, socket types and protocol\ntypes before we cleanup any of the ax25 data structures to remove the\npossibilities of other races.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbf8f7bb200f5dbdc9ce11243431440720db03dc",
      "tree": "b201bbf2310041bef68118552a7d05edcdb45e9a",
      "parents": [
        "daa86548281ec9364eac2925bdf907f861204a5b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 06:10:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:25:51 2012 -0400"
      },
      "message": "ipv4: dont drop packet in defrag but consume it\n\nWhen defragmentation is finalized, we clone a packet and kfree_skb() it.\n\nCall consume_skb() to not confuse dropwatch, since its not a drop.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "daa86548281ec9364eac2925bdf907f861204a5b",
      "tree": "a62cd3cb7df31f0fe26d8c51a4f917b474a4e648",
      "parents": [
        "85bb2a60fab28a338870faec222a1f2232b01caa"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 07:07:40 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:56 2012 -0400"
      },
      "message": "net: gro: GRO_MERGED_FREE consumes packets\n\nAs part of GRO processing, merged skbs should be consumed, not freed, to\nnot confuse dropwatch/drop_monitor.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "85bb2a60fab28a338870faec222a1f2232b01caa",
      "tree": "f6d3ad4e841244c5575754d57d5f1d5d4596718d",
      "parents": [
        "7604adc2fffc275adc6674659e09479adf633e4a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:53 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "net: dont drop packet but consume it\n\nWhen we need to clone skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7604adc2fffc275adc6674659e09479adf633e4a",
      "tree": "bf86d599810162b81fc516b4c703a06985500308",
      "parents": [
        "abc4e4fa29eb81f874d4ef3c6bafcf5ad6f90b07"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:48 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "ipv6: dccp: dont drop packet but consume it\n\nWhen we need to clone skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abc4e4fa29eb81f874d4ef3c6bafcf5ad6f90b07",
      "tree": "1d476a7f11b1e670b55fa7f6a09a4d7defafb347",
      "parents": [
        "ab185d7b2551e9b8d946a657ddccd86d192bebd1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:42 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "packet: dont drop packet but consume it\n\nWhen we need to clone skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab185d7b2551e9b8d946a657ddccd86d192bebd1",
      "tree": "660b4772773143b35fda8915ad0dcf783f021aaf",
      "parents": [
        "8460c00f6e2fb8e05421a277fee62fe09803f7a7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:36 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "ipv6: tcp: dont drop packet but consume it\n\nWhen we need to clone skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8460c00f6e2fb8e05421a277fee62fe09803f7a7",
      "tree": "d27b5f318f07f8285e4b8831704b5490063f19ae",
      "parents": [
        "9ff264492ffa2ac90698e1806bf27e716a99fee8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:28 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "netlink: dont drop packet but consume it\n\nWhen we need to clone skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ff264492ffa2ac90698e1806bf27e716a99fee8",
      "tree": "ac8652288b7df8f53e2ab048ff7ab09e9cdbc9f3",
      "parents": [
        "7426a5645f3d18daec1f7d6a24b529ec7286b800"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Thu Apr 19 02:24:17 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 14:23:55 2012 -0400"
      },
      "message": "ip6_tunnel: dont drop packet but consume it\n\nWhen we need to reallocate skb, we dont drop a packet.\nCall consume_skb() to not confuse dropwatch.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7426a5645f3d18daec1f7d6a24b529ec7286b800",
      "tree": "77abfbb9413d9e18a7592fd5890f76c7189dc9d6",
      "parents": [
        "59e26eff48745287d648ed4606fe2cc66a75991f"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "davidshan@tencent.com",
        "time": "Wed Apr 18 18:05:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 19 00:11:39 2012 -0400"
      },
      "message": "net: fix compile error of leaking kmemleak.h header\n\nnet/core/sysctl_net_core.c: In function ‘sysctl_core_init’:\nnet/core/sysctl_net_core.c:259: error: implicit declaration of function ‘kmemleak_not_leak’\n\nwith same error in net/ipv4/route.c\n\nSigned-off-by: Shan Wei \u003cdavidshan@tencent.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "22b4a4f22da4b39c6f7f679fd35f3d35c91bf851",
      "tree": "6cd9d5d169384e39c030e18f75c1b1e0d792e5bd",
      "parents": [
        "56fa9b16303b0a3bad88ff528c4d5ff54d8cdb47"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Wed Apr 18 10:14:23 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 18 16:52:45 2012 -0400"
      },
      "message": "tcp: fix retransmit of partially acked frames\n\nAlexander Beregalov reported skb_over_panic errors and provided stack\ntrace.\n\nI occurs commit a21d45726aca (tcp: avoid order-1 allocations on wifi and\ntx path) added a regression, when a retransmit is done after a partial\nACK.\n\ntcp_retransmit_skb() tries to aggregate several frames if the first one\nhas enough available room to hold the following ones payload. This is\ncontrolled by /proc/sys/net/ipv4/tcp_retrans_collapse tunable (default :\nenabled)\n\nProblem is we must make sure _pskb_trim_head() doesnt fool\nskb_availroom() when pulling some bytes from skb (this pull is done when\nreceiver ACK part of the frame).\n\nReported-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nCc: Marc MERLIN \u003cmarc@merlins.org\u003e\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56fa9b16303b0a3bad88ff528c4d5ff54d8cdb47",
      "tree": "cb367e928baae532e552dd285700a9fb1f290391",
      "parents": [
        "b922934d017f1cc831b017913ed7d1a56c558b43",
        "dbd717e37bf1409fd250d13aef2cab07bcae8c88"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 18 15:26:52 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 18 15:26:52 2012 -0400"
      },
      "message": "Merge branch \u0027for-davem\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless\n\nFrom John:\n\nAnother batch of fixes intended for 3.4...\n\nFirst up, we have a minor signedness fix for libertas from Amitkumar\nKarwar.  Next, Arend gives us a brcm80211 fix for correctly enabling\nTx FIFOs on channels 12 and 13.  Bing Zhao gives us some register\naddress corrections for mwifiex.  Felix give us a trio of fixes --\none for ath9k to wake the hardware properly from full sleep, one for\nmac80211 to properly handle packets in cooked monitor mode, and one\nfor ensuring that the proper HT mode selection is honored.\n\nHauke gives us a bcma fix for handling the lack of an sprom.  Jonathon\nBither gives us an ath5k fix for a missing THIS_MODULE build issue,\nand another ath5k fix for an io mapping leak.  Lukasz Kucharczyk\nfixes a bitwise check in cfg80211, and Sujith gives us an ath9k fix\nfor assigning sequence numbers for fragmented frames.  Finally, we\nhave a MAINTAINERS change from Wey-Yi Guy -- congrats to Johannes\nBerg for taking the lead on iwlwifi. :-)\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59ef43e681d103a51c3727dad0315e093f07ec61",
      "tree": "87f6320f1440ce3ce6c0c15ad3cef8bc98186f88",
      "parents": [
        "91fbe33034c184c6a60e31c2207a2f7ec2f180dc",
        "b5abcf0219263f4e961dca71cbe26e06c5b0ee68"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 18 14:17:13 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 18 14:27:48 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-testmode.c\n\tinclude/net/nfc/nfc.h\n\tnet/nfc/netlink.c\n\tnet/wireless/nl80211.c\n"
    },
    {
      "commit": "dbd717e37bf1409fd250d13aef2cab07bcae8c88",
      "tree": "1e8c0b94388bf7a5822a49ff3c47bddc06382c2b",
      "parents": [
        "9fe5642f4a3b13beb43c2633db7df22dd9d99250",
        "fd09c85fe15aa66a69f091ba178817d5ef82476d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 18 13:37:33 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 18 13:37:33 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem\n"
    },
    {
      "commit": "91fbe33034c184c6a60e31c2207a2f7ec2f180dc",
      "tree": "9b921989b33854d15ad1610a795d28b20810b21d",
      "parents": [
        "798ec84d45754403571d6387396236e877965c5a",
        "1e5cc266dbc401d11aefb966ad35e651c2f67414"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 18 13:21:59 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 18 13:21:59 2012 -0400"
      },
      "message": "Merge tag \u0027batman-adv-for-davem\u0027 of git://git.open-mesh.org/linux-merge\n\nIncluded changes:\n* remove duplicated line in comment\n* add htons() invocation for tt_crc as suggested by Al Viro\n* OriGinator Message seqno initial value is now random\n* some cleanups and fixes\n"
    }
  ],
  "next": "e11aa059715e2bacd4e62d57be5557dda697af8e"
}
