)]}'
{
  "log": [
    {
      "commit": "8a622e71f58ec9f092fc99eacae0e6cf14f6e742",
      "tree": "d0a19d7ad6672eb38a14b9d2cedf5fab690d18f4",
      "parents": [
        "df505eb804d5221c3164ebecd1286cb7fc7f49ba"
      ],
      "author": {
        "name": "shawnlu",
        "email": "shawn.lu@ericsson.com",
        "time": "Fri Jan 20 12:22:04 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 22 15:08:45 2012 -0500"
      },
      "message": "tcp: md5: using remote adress for md5 lookup in rst packet\n\nmd5 key is added in socket through remote address.\nremote address should be used in finding md5 key when\nsending out reset packet.\n\nSigned-off-by: shawnlu \u003cshawn.lu@ericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "013d97e9da1877f1334aa8ff3a19921ebbfe99b5",
      "tree": "ed05c2420ea75eb036507d556d46d713ebe3bd9a",
      "parents": [
        "35d87e3325e91ec6bc446bf71f50eccc9a7b3b8f"
      ],
      "author": {
        "name": "Francesco Ruggeri",
        "email": "fruggeri@aristanetworks.com",
        "time": "Mon Jan 16 10:40:10 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 18 16:38:34 2012 -0500"
      },
      "message": "net: race condition in ipv6 forwarding and disable_ipv6 parameters\n\nThere is a race condition in addrconf_sysctl_forward() and\naddrconf_sysctl_disable().\nThese functions change idev-\u003ecnf.forwarding (resp. idev-\u003ecnf.disable_ipv6)\nand then try to grab the rtnl lock before performing any actions.\nIf that fails they restore the original value and restart the syscall.\nThis creates race conditions if ipv6 code tries to access\nthese parameters, or if multiple instances try to do the same operation.\nAs an example of the former, if __ipv6_ifa_notify() finds a 0 in\nidev-\u003ecnf.forwarding when invoked by addrconf_ifdown() it may not free\nanycast addresses, ultimately resulting in the net_device not being freed.\nThis patch reads the user parameters into a temporary location and only\nwrites the actual parameters when the rtnl lock is acquired.\nTested in 2.6.38.8.\nSigned-off-by: Francesco Ruggeri \u003cfruggeri@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccb19d263fd1c9e34948e2158c53eacbff369344",
      "tree": "6683e55f183920dcbf3e1a5b749e7f9780c465b3",
      "parents": [
        "6a488979f574cb4287880db2dbc8b13cee30c5be",
        "c3b5003b628d8e373262bee42c7260d6a799c73e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 22:26:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 22:26:41 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (47 commits)\n  tg3: Fix single-vector MSI-X code\n  openvswitch: Fix multipart datapath dumps.\n  ipv6: fix per device IP snmp counters\n  inetpeer: initialize -\u003eredirect_genid in inet_getpeer()\n  net: fix NULL-deref in WARN() in skb_gso_segment()\n  net: WARN if skb_checksum_help() is called on skb requiring segmentation\n  caif: Remove bad WARN_ON in caif_dev\n  caif: Fix typo in Vendor/Product-ID for CAIF modems\n  bnx2x: Disable AN KR work-around for BCM57810\n  bnx2x: Remove AutoGrEEEn for BCM84833\n  bnx2x: Remove 100Mb force speed for BCM84833\n  bnx2x: Fix PFC setting on BCM57840\n  bnx2x: Fix Super-Isolate mode for BCM84833\n  net: fix some sparse errors\n  net: kill duplicate included header\n  net: sh-eth: Fix build error by the value which is not defined\n  net: Use device model to get driver name in skb_gso_segment()\n  bridge: BH already disabled in br_fdb_cleanup()\n  net: move sock_update_memcg outside of CONFIG_INET\n  mwl8k: Fixing Sparse ENDIAN CHECK warning\n  ...\n"
    },
    {
      "commit": "766e9f1be128bcdc15aa7d07084d0d51e873b5ed",
      "tree": "4b6098567a7f522792333d4bf30dc5676a507b9c",
      "parents": [
        "10ec1bb7e9eb462548f14dd53c73e927a3ddf31c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jan 17 12:45:36 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 17 23:56:18 2012 -0500"
      },
      "message": "ipv6: fix per device IP snmp counters\n\nIn commit 4ce3c183fca (snmp: 64bit ipstats_mib for all arches), I forgot\nto change the /proc/net/dev_snmp6/xxx output for IP counters.\n\npercpu array is 64bit per counter but the folding still used the \u0027long\u0027\nvariant, and output garbage on 32bit arches.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "747465ef7a082033e086dedc8189febfda43b015",
      "tree": "efbdc7a1f25f7bced035077769b4005ea1419abc",
      "parents": [
        "2b2d465631db59c144f537a9bef47a883c55d670"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jan 16 19:27:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 17 10:31:12 2012 -0500"
      },
      "message": "net: fix some sparse errors\n\nmake C\u003d2 CF\u003d\"-D__CHECK_ENDIAN__\" M\u003dnet\n\nAnd fix flowi4_init_output() prototype for sport\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c49c41a4134679cecb77362e7f6b59acb6320aa7",
      "tree": "45e690c036ca5846a48c8be67945d1d841b2d96d",
      "parents": [
        "892d208bcf79e4e1058707786a7b6d486697cd78",
        "f423e5ba76e7e4a6fcb4836b4f072d1fdebba8b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security\n\n* \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security:\n  capabilities: remove __cap_full_set definition\n  security: remove the security_netlink_recv hook as it is equivalent to capable()\n  ptrace: do not audit capability check when outputing /proc/pid/stat\n  capabilities: remove task_ns_* functions\n  capabitlies: ns_capable can use the cap helpers rather than lsm call\n  capabilities: style only - move capable below ns_capable\n  capabilites: introduce new has_ns_capabilities_noaudit\n  capabilities: call has_ns_capability from has_capability\n  capabilities: remove all _real_ interfaces\n  capabilities: introduce security_capable_noaudit\n  capabilities: reverse arguments to security_capable\n  capabilities: remove the task from capable LSM hook entirely\n  selinux: sparse fix: fix several warnings in the security server cod\n  selinux: sparse fix: fix warnings in netlink code\n  selinux: sparse fix: eliminate warnings for selinuxfs\n  selinux: sparse fix: declare selinux_disable() in security.h\n  selinux: sparse fix: move selinux_complete_init\n  selinux: sparse fix: make selinux_secmark_refcount static\n  SELinux: Fix RCU deref check warning in sel_netport_insert()\n\nManually fix up a semantic mis-merge wrt security_netlink_recv():\n\n - the interface was removed in commit fd7784615248 (\"security: remove\n   the security_netlink_recv hook as it is equivalent to capable()\")\n\n - a new user of it appeared in commit a38f7907b926 (\"crypto: Add\n   userspace configuration API\")\n\ncausing no automatic merge conflict, but Eric Paris pointed out the\nissue.\n"
    },
    {
      "commit": "252c3d84ed398b090ac2dace46fc6faa6cfaea99",
      "tree": "afbeb033aa2857971aff3919c39f3c0b04c340f3",
      "parents": [
        "099469502f62fbe0d7e4f0b83a2f22538367f734"
      ],
      "author": {
        "name": "RongQing.Li",
        "email": "roy.qing.li@gmail.com",
        "time": "Thu Jan 12 22:33:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 13 10:10:46 2012 -0800"
      },
      "message": "ipv6: release idev when ip6_neigh_lookup failed in icmp6_dst_alloc\n\nrelease idev when ip6_neigh_lookup failed in icmp6_dst_alloc\n\nSigned-off-by: RongQing.Li \u003croy.qing.li@gmail.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf778b00e96df6d64f8e21b8395d1f8a859ecdc7",
      "tree": "4cc157d564bd65d687bdf722af3202e9e277ea98",
      "parents": [
        "9ee6045f09a7875ebe55b9942b232a19076b157b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jan 12 04:41:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 12 12:26:56 2012 -0800"
      },
      "message": "net: reintroduce missing rcu_assign_pointer() calls\n\ncommit a9b3cd7f32 (rcu: convert uses of rcu_assign_pointer(x, NULL) to\nRCU_INIT_POINTER) did a lot of incorrect changes, since it did a\ncomplete conversion of rcu_assign_pointer(x, y) to RCU_INIT_POINTER(x,\ny).\n\nWe miss needed barriers, even on x86, when y is not NULL.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCC: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd778461524849afd035679030ae8e8873c72b81",
      "tree": "32a5849c1879413fce0307af304e372eaa8225b4",
      "parents": [
        "69f594a38967f4540ce7a29b3fd214e68a8330bd"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 12:25:16 2012 -0500"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jan 05 18:53:01 2012 -0500"
      },
      "message": "security: remove the security_netlink_recv hook as it is equivalent to capable()\n\nOnce upon a time netlink was not sync and we had to get the effective\ncapabilities from the skb that was being received.  Today we instead get\nthe capabilities from the current task.  This has rendered the entire\npurpose of the hook moot as it is now functionally equivalent to the\ncapable() call.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "1d5783030a14d1b6ee763f63c8136e581f48b365",
      "tree": "c17e33ce9a8dae357a653d2f56621369128a9d36",
      "parents": [
        "48529680dc59061eaa13ea3b1047401612b79600"
      ],
      "author": {
        "name": "Mihai Maruseac",
        "email": "mihai.maruseac@gmail.com",
        "time": "Tue Jan 03 23:31:35 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 16:00:57 2012 -0500"
      },
      "message": "ipv6/addrconf: speedup /proc/net/if_inet6 filling\n\nThis ensures a linear behaviour when filling /proc/net/if_inet6 thus making\nifconfig run really fast on IPv6 only addresses. In fact, with this patch and\nthe IPv4 one sent a while ago, ifconfig will run in linear time regardless of\naddress type.\n\nIPv4 related patch: f04565ddf52e401880f8ba51de0dff8ba51c99fd\n\t dev: use name hash for dev_seq_ops\n\t ...\n\nSome statistics (running ifconfig \u003e /dev/null on a different setup):\n\niface count / IPv6 no-patch time / IPv6 patched time / IPv4 time\n----------------------------------------------------------------\n      6250  |       0.23 s       |      0.13 s       |  0.11 s\n     12500  |       0.62 s       |      0.28 s       |  0.22 s\n     25000  |       2.91 s       |      0.57 s       |  0.46 s\n     50000  |      11.37 s       |      1.21 s       |  0.94 s\n    128000  |      86.78 s       |      3.05 s       |  2.54 s\n\nSigned-off-by: Mihai Maruseac \u003cmmaruseac@ixiacom.com\u003e\nCc: Daniel Baluta \u003cdbaluta@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6bff995f8fe78f74cbe8f14bf6a31f3560b9ce4",
      "tree": "6f3dd815508bd265c9d272bea1a1e0300e09bef3",
      "parents": [
        "02a9098ede0dc7e28c16a03fa7fba86a05219478"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Jan 04 10:49:15 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 15:53:20 2012 -0500"
      },
      "message": "ipv6: Check RA for sllao when configuring optimistic ipv6 address (v2)\n\nRecently Dave noticed that a test we did in ipv6_add_addr to see if we next hop\nroute for the interface we\u0027re adding an addres to was wrong (see commit\n7ffbcecbeed91e5874e9a1cfc4c0cbb07dac3069).  for one, it never triggers, and two,\nit was completely wrong to begin with.  This test was meant to cover this\nsection of RFC 4429:\n\n3.3 Modifications to RFC 2462 Stateless Address Autoconfiguration\n\n   * (modifies section 5.5) A host MAY choose to configure a new address\n        as an Optimistic Address.  A host that does not know the SLLAO\n        of its router SHOULD NOT configure a new address as Optimistic.\n        A router SHOULD NOT configure an Optimistic Address.\n\nThis patch should bring us into proper compliance with the above clause.  Since\nwe only add a SLAAC address after we\u0027ve received a RA which may or may not\ncontain a source link layer address option, we can pass a pointer to that option\nto addrconf_prefix_rcv (which may be null if the option is not present), and\nonly set the optimistic flag if the option was found in the RA.\n\nChange notes:\n(v2) modified the new parameter to addrconf_prefix_rcv to be a bool rather than\na pointer to make its use more clear as per request from davem.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCC: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32b293a53deeb220769f9a29357cb151cfb8ee26",
      "tree": "449cac8df3c48be49657331c9b6958ccdd360e18",
      "parents": [
        "c9da99e6475f92653139e43f3c30c0cd011a0fd8"
      ],
      "author": {
        "name": "Josh Hunt",
        "email": "joshhunt00@gmail.com",
        "time": "Wed Dec 28 13:23:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 17:07:33 2011 -0500"
      },
      "message": "IPv6: Avoid taking write lock for /proc/net/ipv6_route\n\nDuring some debugging I needed to look into how /proc/net/ipv6_route\noperated and in my digging I found its calling fib6_clean_all() which uses\n\"write_lock_bh(\u0026table-\u003etb6_lock)\" before doing the walk of the table. I\nfound this on 2.6.32, but reading the code I believe the same basic idea\nexists currently. Looking at the rtnetlink code they are only calling\n\"read_lock_bh(\u0026table-\u003etb6_lock);\" via fib6_dump_table(). While I realize\nreading from proc isn\u0027t the recommended way of fetching the ipv6 route\ntable; taking a write lock seems unnecessary and would probably cause\nnetwork performance issues.\n\nTo verify this I loaded up the ipv6 route table and then ran iperf in 3\ncases:\n  * doing nothing\n  * reading ipv6 route table via proc\n    (while :; do cat /proc/net/ipv6_route \u003e /dev/null; done)\n  * reading ipv6 route table via rtnetlink\n    (while :; do ip -6 route show table all \u003e /dev/null; done)\n\n* Load the ipv6 route table up with:\n  * for ((i \u003d 0;i \u003c 4000;i++)); do ip route add unreachable 2000::$i; done\n\n* iperf commands:\n  * client: iperf -i 1 -V -c \u003cipv6 addr\u003e\n  * server: iperf -V -s\n\n* iperf results - 3 runs each (in Mbits/sec)\n  * nothing: client: 927,927,927 server: 927,927,927\n  * proc: client: 179,97,96,113 server: 142,112,133\n  * iproute: client: 928,927,928 server: 927,927,927\n\nlock_stat shows taking the write lock is causing the slowdown. Using this\ninfo I decided to write a version of fib6_clean_all() which replaces\nwrite_lock_bh(\u0026table-\u003etb6_lock) with read_lock_bh(\u0026table-\u003etb6_lock). With\nthis new function I see the same results as with my rtnetlink iperf test.\n\nSigned-off-by: Josh Hunt \u003cjoshhunt00@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ade06c616b34b4237c0ed77d1ff0ce04ad7d056",
      "tree": "73cccfb3f6ca9cb8d2d9fcd9aed5a2bffb8ab49d",
      "parents": [
        "f1776dade17cd54562f4bc1d01de89c4908b4dd0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 18:51:57 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 18:51:57 2011 -0500"
      },
      "message": "ipv6: Fix neigh lookup using NULL device.\n\nIn some of the rt6_bind_neighbour() call sites, it hasn\u0027t hooked\nup the rt-\u003edst.dev pointer yet, so we\u0027d deref a NULL pointer when\nobtaining dev-\u003eifindex for the neighbour hash function computation.\n\nJust pass the netdevice explicitly in to fix this problem.\n\nReported-by: Bjarke Istrup Pedersen \u003cgurligebis@gentoo.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "346f870b8a9aaf0847f7c7cffdbb447bb2f3853e",
      "tree": "fca645087c2dcae6be1f64181e5d703d4bbefcaa",
      "parents": [
        "95f56e7aa807e9eec241a5b70f0695b2514b5ad5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:22:33 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:22:33 2011 -0500"
      },
      "message": "ipv6: Report TCP timetstamp info in cacheinfo just like ipv4 does.\n\nI missed this while adding ipv6 support to inet_peer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d191854282fd831da785a5a34bc6fd16049b8578",
      "tree": "2a2700b2dec7ad9e73c55c833346dbbd67b8777c",
      "parents": [
        "f83c7790dc0025fffbd8684f3803a7571f624baa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 20:19:20 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 20:19:20 2011 -0500"
      },
      "message": "ipv6: Kill rt6i_dev and rt6i_expires defines.\n\nIt just obscures that the netdevice pointer and the expires value are\nimplemented in the dst_entry sub-object of the ipv6 route.\n\nAnd it makes grepping for dst_entry member uses much harder too.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f83c7790dc0025fffbd8684f3803a7571f624baa",
      "tree": "9e745f6b44b1947033a143423560af6a3157fce7",
      "parents": [
        "2c2aba6c561ac425602f4a0be61422224cb87151"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:41:23 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:41:23 2011 -0500"
      },
      "message": "ipv6: Create fast inline ipv6 neigh lookup just like ipv4.\n\nAlso, create and use an rt6_bind_neighbour() in net/ipv6/route.c to\nconsolidate some common logic.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c2aba6c561ac425602f4a0be61422224cb87151",
      "tree": "30b5f2c40b823ca61e2e0930d5e98a89a83222bb",
      "parents": [
        "32288eb4d940b10e40c6d4178fe3a40d1437d2f8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:06:58 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 15:06:58 2011 -0500"
      },
      "message": "ipv6: Use universal hash for NDISC.\n\nIn order to perform a proper universal hash on a vector of integers,\nwe have to use different universal hashes on each vector element.\n\nWhich means we need 4 different hash randoms for ipv6.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ffbcecbeed91e5874e9a1cfc4c0cbb07dac3069",
      "tree": "c9a6ac231343b25e9049689eb679bf1364602092",
      "parents": [
        "d79aec83b2c348f49065a4d411e7b70bdf041c89"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 09:53:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 28 13:38:49 2011 -0500"
      },
      "message": "ipv6: Remove optimistic DAD flag test in ipv6_add_addr()\n\nThe route we have here is for the address being added to the interface,\nie. for input packet processing.\n\nTherefore using that route to determine whether an output nexthop gateway\nis known and resolved doesn\u0027t make any sense.\n\nSo, simply remove this test, it never triggered anyways.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-By: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c159d30c59dc84934f8ef46f934ce1232c558ecd",
      "tree": "b3ad64130eee7237f41813c42f588c1c516d3d53",
      "parents": [
        "e143a1ada39110f9596e4ffd4e0b8399e5ab88d4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 15:24:36 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 15:24:36 2011 -0500"
      },
      "message": "ipv6: Kill useless route tracing bits in net/ipv6/route.c\n\nRDBG() wasn\u0027t even used, and the messages printed by RT6_DEBUG() were\nfar from useful.  Just get rid of all this stuff, we can replace it\nwith something more suitable if we want.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c5e1fd8ccae09f574d6f978c90c2b968ee29030c",
      "tree": "e4485dc086ce76c4ff2ff551246255f5de0a250b",
      "parents": [
        "60b778ce519625102d3f72a2071ea72a05e990ce",
        "ceb98d03eac5704820f2ac1f370c9ff385e3a9f5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 25 02:21:45 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 25 02:21:45 2011 -0500"
      },
      "message": "Merge branch \u0027nf-next\u0027 of git://1984.lsi.us.es/net-next\n"
    },
    {
      "commit": "abb434cb0539fb355c1c921f8fd761efbbac3462",
      "tree": "24a7d99ec161f8fd4dc9ff03c9c4cc93be883ce6",
      "parents": [
        "2494654d4890316e7340fb8b3458daad0474a1b9",
        "6350323ad8def2ac00d77cdee3b79c9b9fba75c4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 17:13:56 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 17:13:56 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n\nJust two overlapping changes, one added an initialization of\na local variable, and another change added a new local variable.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e688a604807647c9450f9c12a7cb6d027150a895",
      "tree": "6b3df826b4a42affdfc9d58d74f5e17c063cc7d6",
      "parents": [
        "7838f2ce36b6ab5c13ef20b1857e3bbd567f1759"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Dec 22 04:15:53 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 22 22:34:56 2011 -0500"
      },
      "message": "net: introduce DST_NOPEER dst flag\n\nChris Boot reported crashes occurring in ipv6_select_ident().\n\n[  461.457562] RIP: 0010:[\u003cffffffff812dde61\u003e]  [\u003cffffffff812dde61\u003e]\nipv6_select_ident+0x31/0xa7\n\n[  461.578229] Call Trace:\n[  461.580742] \u003cIRQ\u003e\n[  461.582870]  [\u003cffffffff812efa7f\u003e] ? udp6_ufo_fragment+0x124/0x1a2\n[  461.589054]  [\u003cffffffff812dbfe0\u003e] ? ipv6_gso_segment+0xc0/0x155\n[  461.595140]  [\u003cffffffff812700c6\u003e] ? skb_gso_segment+0x208/0x28b\n[  461.601198]  [\u003cffffffffa03f236b\u003e] ? ipv6_confirm+0x146/0x15e\n[nf_conntrack_ipv6]\n[  461.608786]  [\u003cffffffff81291c4d\u003e] ? nf_iterate+0x41/0x77\n[  461.614227]  [\u003cffffffff81271d64\u003e] ? dev_hard_start_xmit+0x357/0x543\n[  461.620659]  [\u003cffffffff81291cf6\u003e] ? nf_hook_slow+0x73/0x111\n[  461.626440]  [\u003cffffffffa0379745\u003e] ? br_parse_ip_options+0x19a/0x19a\n[bridge]\n[  461.633581]  [\u003cffffffff812722ff\u003e] ? dev_queue_xmit+0x3af/0x459\n[  461.639577]  [\u003cffffffffa03747d2\u003e] ? br_dev_queue_push_xmit+0x72/0x76\n[bridge]\n[  461.646887]  [\u003cffffffffa03791e3\u003e] ? br_nf_post_routing+0x17d/0x18f\n[bridge]\n[  461.653997]  [\u003cffffffff81291c4d\u003e] ? nf_iterate+0x41/0x77\n[  461.659473]  [\u003cffffffffa0374760\u003e] ? br_flood+0xfa/0xfa [bridge]\n[  461.665485]  [\u003cffffffff81291cf6\u003e] ? nf_hook_slow+0x73/0x111\n[  461.671234]  [\u003cffffffffa0374760\u003e] ? br_flood+0xfa/0xfa [bridge]\n[  461.677299]  [\u003cffffffffa0379215\u003e] ?\nnf_bridge_update_protocol+0x20/0x20 [bridge]\n[  461.684891]  [\u003cffffffffa03bb0e5\u003e] ? nf_ct_zone+0xa/0x17 [nf_conntrack]\n[  461.691520]  [\u003cffffffffa0374760\u003e] ? br_flood+0xfa/0xfa [bridge]\n[  461.697572]  [\u003cffffffffa0374812\u003e] ? NF_HOOK.constprop.8+0x3c/0x56\n[bridge]\n[  461.704616]  [\u003cffffffffa0379031\u003e] ?\nnf_bridge_push_encap_header+0x1c/0x26 [bridge]\n[  461.712329]  [\u003cffffffffa037929f\u003e] ? br_nf_forward_finish+0x8a/0x95\n[bridge]\n[  461.719490]  [\u003cffffffffa037900a\u003e] ?\nnf_bridge_pull_encap_header+0x1c/0x27 [bridge]\n[  461.727223]  [\u003cffffffffa0379974\u003e] ? br_nf_forward_ip+0x1c0/0x1d4 [bridge]\n[  461.734292]  [\u003cffffffff81291c4d\u003e] ? nf_iterate+0x41/0x77\n[  461.739758]  [\u003cffffffffa03748cc\u003e] ? __br_deliver+0xa0/0xa0 [bridge]\n[  461.746203]  [\u003cffffffff81291cf6\u003e] ? nf_hook_slow+0x73/0x111\n[  461.751950]  [\u003cffffffffa03748cc\u003e] ? __br_deliver+0xa0/0xa0 [bridge]\n[  461.758378]  [\u003cffffffffa037533a\u003e] ? NF_HOOK.constprop.4+0x56/0x56\n[bridge]\n\nThis is caused by bridge netfilter special dst_entry (fake_rtable), a\nspecial shared entry, where attaching an inetpeer makes no sense.\n\nProblem is present since commit 87c48fa3b46 (ipv6: make fragment\nidentifications less predictable)\n\nIntroduce DST_NOPEER dst flag and make sure ipv6_select_ident() and\n__ip_select_ident() fallback to the \u0027no peer attached\u0027 handling.\n\nReported-by: Chris Boot \u003cbootc@bootc.net\u003e\nTested-by: Chris Boot \u003cbootc@bootc.net\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb93992207dadb946a3b5cf4544957dc924a6f58",
      "tree": "8d840ea0e0e5eb3cf6207a2608d434475a9076b4",
      "parents": [
        "3db1cd5c05f35fb43eb134df6f321de4e63141f2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Dec 19 14:08:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 19 22:27:29 2011 -0500"
      },
      "message": "module_param: make bool parameters really bool (net \u0026 drivers/net)\n\nmodule_param(bool) used to counter-intuitively take an int.  In\nfddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy\ntrick.\n\nIt\u0027s time to remove the int/unsigned int option.  For this version\nit\u0027ll simply give a warning, but it\u0027ll break next kernel version.\n\n(Thanks to Joe Perches for suggesting coccinelle for 0/1 -\u003e true/false).\n\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b26e478f8fd5b575684f021b05a5c6236ebb911a",
      "tree": "27d3b3eaf3fe10d05319ad3395b2569ad5f8f6d0",
      "parents": [
        "bcebcc468a6bcd3820fe9ad36b34220563efc93a",
        "bb3c36863e8001fc21a88bebfdead4da4c23e848"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 16 02:11:14 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 16 02:11:14 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/freescale/fsl_pq_mdio.c\n\tnet/batman-adv/translation-table.c\n\tnet/ipv6/route.c\n"
    },
    {
      "commit": "bb3c36863e8001fc21a88bebfdead4da4c23e848",
      "tree": "68d479f11721abaac0713792d096b98aa04b9854",
      "parents": [
        "3f1e6d3fd37bd4f25e5b19f1c7ca21850426c33f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 13 17:35:06 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 13 17:35:06 2011 -0500"
      },
      "message": "ipv6: Check dest prefix length on original route not copied one in rt6_alloc_cow().\n\nAfter commit 8e2ec639173f325977818c45011ee176ef2b11f6 (\"ipv6: don\u0027t\nuse inetpeer to store metrics for routes.\") the test in rt6_alloc_cow()\nfor setting the ANYCAST flag is now wrong.\n\n\u0027rt\u0027 will always now have a plen of 128, because it is set explicitly\nto 128 by ip6_rt_copy.\n\nSo to restore the semantics of the test, check the destination prefix\nlength of \u0027ort\u0027.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b43faac69062f0fc75bd3230d67da64e184232d1",
      "tree": "0b6c90f5a2fb9e07d2fce5b57fabc8cf6580aaeb",
      "parents": [
        "5c3ddec73d01a1fae9409c197078cb02c42238c3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 13 16:48:21 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 13 16:51:51 2011 -0500"
      },
      "message": "ipv6: If neigh lookup fails during icmp6 dst allocation, propagate error.\n\nDon\u0027t just succeed with a route that has a NULL neighbour attached.\nThis follows the behavior of addrconf_dst_alloc().\n\nAllowing this kind of route to end up with a NULL neigh attached will\nresult in packet drops on output until the route is somehow\ninvalidated, since nothing will meanwhile try to lookup the neigh\nagain.\n\nA statistic is bumped for the case where we see a neigh-less route on\noutput, but the resulting packet drop is otherwise silent in nature,\nand frankly it\u0027s a hard error for this to happen and ipv6 should do\nwhat ipv4 does which is say something in the kernel logs.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e26f9a480fb6c1b614660e824d69a74e2ce990f3",
      "tree": "bb330ffc3ff13e9de1f6a1b5dcc0c8bac7f3d4ec",
      "parents": [
        "ea6e574e34779fbb4526b2160411c163eac25323"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Fri Aug 19 13:52:40 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Dec 13 11:34:43 2011 +0100"
      },
      "message": "netfilter: add ipv6 reverse path filter match\n\nThis is not merged with the ipv4 match into xt_rpfilter.c\nto avoid ipv6 module dependency issues.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "3dc43e3e4d0b52197d3205214fe8f162f9e0c334",
      "tree": "1770affeb483a6b4f06cde9f2a2f1289b41496d6",
      "parents": [
        "d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Sun Dec 11 21:47:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 19:04:11 2011 -0500"
      },
      "message": "per-netns ipv4 sysctl_tcp_mem\n\nThis patch allows each namespace to independently set up\nits levels for tcp memory pressure thresholds. This patch\nalone does not buy much: we need to make this values\nper group of process somehow. This is achieved in the\npatches that follows in this patchset.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCC: David S. Miller \u003cdavem@davemloft.net\u003e\nCC: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7",
      "tree": "5c3675582cbbdc99f720aa1dcc1821e26c2be1ab",
      "parents": [
        "e1aab161e0135aafcd439be20b4f35e4b0922d95"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Sun Dec 11 21:47:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 19:04:10 2011 -0500"
      },
      "message": "tcp memory pressure controls\n\nThis patch introduces memory pressure controls for the tcp\nprotocol. It uses the generic socket memory pressure code\nintroduced in earlier patches, and fills in the\nnecessary data in cg_proto struct.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujtisu.com\u003e\nCC: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "180d8cd942ce336b2c869d324855c40c5db478ad",
      "tree": "2424d854345d81464d6030ef8090a8e22bd414b0",
      "parents": [
        "e5671dfae59b165e2adfd4dfbdeab11ac8db5bda"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Sun Dec 11 21:47:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 19:04:10 2011 -0500"
      },
      "message": "foundations of per-cgroup memory pressure controlling.\n\nThis patch replaces all uses of struct sock fields\u0027 memory_pressure,\nmemory_allocated, sockets_allocated, and sysctl_mem to acessor\nmacros. Those macros can either receive a socket argument, or a mem_cgroup\nargument, depending on the context they live in.\n\nSince we\u0027re only doing a macro wrapping here, no performance impact at all is\nexpected in the case where we don\u0027t have cgroups disabled.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: Hiroyouki Kamezawa \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCC: David S. Miller \u003cdavem@davemloft.net\u003e\nCC: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72b36015ba43a3cca5303f5534d2c3e1899eae29",
      "tree": "f22cdff528a87b5b86bfc285c95dd40d5d55202e",
      "parents": [
        "4af04aba93f47699e7ac33e7cfd4da22550e6114"
      ],
      "author": {
        "name": "Ted Feng",
        "email": "artisdom@gmail.com",
        "time": "Thu Dec 08 00:46:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 18:50:51 2011 -0500"
      },
      "message": "ipip, sit: copy parms.name after register_netdevice\n\nSame fix as 731abb9cb2 for ipip and sit tunnel.\nCommit 1c5cae815d removed an explicit call to dev_alloc_name in\nipip_tunnel_locate and ipip6_tunnel_locate, because register_netdevice\nwill now create a valid name, however the tunnel keeps a copy of the\nname in the private parms structure. Fix this by copying the name back\nafter register_netdevice has successfully returned.\n\nThis shows up if you do a simple tunnel add, followed by a tunnel show:\n\n$ sudo ip tunnel add mode ipip remote 10.2.20.211\n$ ip tunnel\ntunl0: ip/ip  remote any  local any  ttl inherit  nopmtudisc\ntunl%d: ip/ip  remote 10.2.20.211  local any  ttl inherit\n$ sudo ip tunnel add mode sit remote 10.2.20.212\n$ ip tunnel\nsit0: ipv6/ip  remote any  local any  ttl 64  nopmtudisc 6rd-prefix 2002::/16\nsit%d: ioctl 89f8 failed: No such device\nsit%d: ipv6/ip  remote 10.2.20.212  local any  ttl inherit\n\nCc: stable@vger.kernel.org\nSigned-off-by: Ted Feng \u003cartisdom@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4af04aba93f47699e7ac33e7cfd4da22550e6114",
      "tree": "07bf02f171e03fb66d66e12011e56d459d44be25",
      "parents": [
        "e7ab5f1c323e137120561daeec75e91a1bd9ec8b"
      ],
      "author": {
        "name": "Li Wei",
        "email": "lw@cn.fujitsu.com",
        "time": "Tue Dec 06 21:23:45 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 18:48:18 2011 -0500"
      },
      "message": "ipv6: Fix for adding multicast route for loopback device automatically.\n\nThere is no obvious reason to add a default multicast route for loopback\ndevices, otherwise there would be a route entry whose dst.error set to\n-ENETUNREACH that would blocking all multicast packets.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n[ more detailed explanation ]\n\nThe problem is that the resulting routing table depends on the sequence\nof interface\u0027s initialization and in some situation, that would block all\nmuticast packets. Suppose there are two interfaces on my computer\n(lo and eth0), if we initailize \u0027lo\u0027 before \u0027eth0\u0027, the resuting routing\ntable(for multicast) would be\n\n# ip -6 route show | grep ff00::\nunreachable ff00::/8 dev lo metric 256 error -101\nff00::/8 dev eth0 metric 256\n\nWhen sending multicasting packets, routing subsystem will return the first\nroute entry which with a error set to -101(ENETUNREACH).\n\nI know the kernel will set the default ipv6 address for \u0027lo\u0027 when it is up\nand won\u0027t set the default multicast route for it, but there is no reason to\nstop \u0027init\u0027 program from setting address for \u0027lo\u0027, and that is exactly what\nsystemd did.\n\nI am sure there is something wrong with kernel or systemd, currently I preferred\nkernel caused this problem.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Li Wei \u003clw@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fce823381e3c082ba1b2e15d5151d1aa8afdc9e9",
      "tree": "fe265662f80f822246f7705d3b2ac1e44fa84579",
      "parents": [
        "1942c518ca017f376b267a7c5e78c15d37202442"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Fri Dec 09 06:23:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 09 14:14:08 2011 -0500"
      },
      "message": "udp: Export code sk lookup routines\n\nThe UDP diag get_exact handler will require them to find a\nsocket by provided net, [sd]addr-s, [sd]ports and device.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87a115783eca7a424eef599d6f10a499f85f59c8",
      "tree": "4b80b4d2ea9a61253f89570f63da1ab9a356dfa4",
      "parents": [
        "8f0315190dec88bf035d50e4fd1db89859b414f6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 06 17:04:13 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 06 17:04:13 2011 -0500"
      },
      "message": "ipv6: Move xfrm_lookup() call down into icmp6_dst_alloc().\n\nAnd return error pointers.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f0315190dec88bf035d50e4fd1db89859b414f6",
      "tree": "ebc3d6669124188439da105da919e46ce8ea0619",
      "parents": [
        "f2fd5c3458ffcf4f9b4fbfa64980dffe1850f7de"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 06 16:48:14 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 06 16:48:14 2011 -0500"
      },
      "message": "ipv6: Make third arg to anycast_dst_alloc() bool.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2721745501a26d0dc3b88c0d2f3aa11471891388",
      "tree": "e9c09622b11ad7d9317b4b01824374a852867c28",
      "parents": [
        "761965eab38d2cbc59c36e355c59609e3a04705a"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 16:52:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 05 15:20:19 2011 -0500"
      },
      "message": "net: Rename dst_get_neighbour{, _raw} to dst_get_neighbour_noref{, _raw}.\n\nTo reflect the fact that a refrence is not obtained to the\nresulting neighbour entry.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "ea6e574e34779fbb4526b2160411c163eac25323",
      "tree": "aaf569b7013957b590c4532ac5a6c20ce1d976c3",
      "parents": [
        "8f97339d3feb662037b86a925e692017c0b32323"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Mon Sep 05 16:05:44 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sun Dec 04 22:44:07 2011 +0100"
      },
      "message": "ipv6: add ip6_route_lookup\n\nlike rt6_lookup, but allows caller to pass in flowi6 structure.\nWill be used by the upcoming ipv6 netfilter reverse path filter\nmatch.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "78a8a36fe0b2cee5a0a7360107815cbcad5b4003",
      "tree": "1abf45fa898ed4e31a131328b0e182f29a72300a",
      "parents": [
        "04a6f4417bfd17c3860e8fb37387cb78265ffe44",
        "ccb1352e76cff0524e7ccb2074826a092dd13016"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 22:53:31 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 22:53:31 2011 -0500"
      },
      "message": "Merge branch \u0027for-upstream\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jesse/openvswitch\n"
    },
    {
      "commit": "04a6f4417bfd17c3860e8fb37387cb78265ffe44",
      "tree": "510ac1d7b69dc5ebcc0ab53130442274f70e3652",
      "parents": [
        "3830847396fa6d7f9a5fec0ca9819c47ac8a64e8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 18:29:30 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 18:29:30 2011 -0500"
      },
      "message": "ipv6: Kill ndisc_get_neigh() inline helper.\n\nIt\u0027s only used in net/ipv6/route.c and the NULL device check is\nsuperfluous for all of the existing call sites.\n\nJust expand the __ndisc_lookup_errno() call at each location.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3830847396fa6d7f9a5fec0ca9819c47ac8a64e8",
      "tree": "cd0ee7f142b193513416e7dc1adb1e0fb28321e8",
      "parents": [
        "507c9b1e0702db4fb6c25135019158d1201f4de7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 18:02:47 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 18:02:47 2011 -0500"
      },
      "message": "ipv6: Various cleanups in route.c\n\n1) x \u003d\u003d NULL --\u003e !x\n2) x !\u003d NULL --\u003e x\n3) (x\u0026BIT) --\u003e (x \u0026 BIT)\n4) (BIT1|BIT2) --\u003e (BIT1 | BIT2)\n5) proper argument and struct member alignment\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "507c9b1e0702db4fb6c25135019158d1201f4de7",
      "tree": "b9843152e7bd4d89acc7c8b65fe92b9c7eaa7619",
      "parents": [
        "340e8dc1fb4032b6c8334c9bff20b2aec42ecfd8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 17:50:45 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 03 17:50:45 2011 -0500"
      },
      "message": "ipv6: Various cleanups in ip6_route.c\n\n1) x \u003d\u003d NULL --\u003e !x\n2) x !\u003d NULL --\u003e x\n3) if() --\u003e if ()\n4) while() --\u003e while ()\n5) (x \u0026 BIT) \u003d\u003d 0 --\u003e !(x \u0026 BIT)\n6) (x\u0026BIT) --\u003e (x \u0026 BIT)\n7) x\u003dy --\u003e x \u003d y\n8) (BIT1|BIT2) --\u003e (BIT1 | BIT2)\n9) if ((x \u0026 BIT)) --\u003e if (x \u0026 BIT)\n10) proper argument and struct member alignment\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75f2811c6460ccc59d83c66059943ce9c9f81a18",
      "tree": "49373cf5f5b11358aeb587209ad270496f751609",
      "parents": [
        "396cf9430505cfba529a2f2a037d782719fa5844"
      ],
      "author": {
        "name": "Jesse Gross",
        "email": "jesse@nicira.com",
        "time": "Wed Nov 30 17:05:51 2011 -0800"
      },
      "committer": {
        "name": "Jesse Gross",
        "email": "jesse@nicira.com",
        "time": "Sat Dec 03 09:35:10 2011 -0800"
      },
      "message": "ipv6: Add fragment reporting to ipv6_skip_exthdr().\n\nWhile parsing through IPv6 extension headers, fragment headers are\nskipped making them invisible to the caller.  This reports the\nfragment offset of the last header in order to make it possible to\ndetermine whether the packet is fragmented and, if so whether it is\na first or last fragment.\n\nSigned-off-by: Jesse Gross \u003cjesse@nicira.com\u003e\n"
    },
    {
      "commit": "b3613118eb30a589d971e4eccbbb2a1314f5dfd4",
      "tree": "868c1ee59e1b5c19a4f2e43716400d0001a994e5",
      "parents": [
        "7505afe28c16a8d386624930a018d0052c75d687",
        "5983fe2b29df5885880d7fa3b91aca306c7564ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "59c2cdae2791c0b2ee13d148edc6b771e7e7953f",
      "tree": "1e1a9d09a881a0283d991e91f39a36d6de045d54",
      "parents": [
        "b03b6dd58cef7d15b7c46a6729b83dd535ef08ab"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 01 14:12:55 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 01 14:12:55 2011 -0500"
      },
      "message": "Revert \"udp: remove redundant variable\"\n\nThis reverts commit 81d54ec8479a2c695760da81f05b5a9fb2dbe40a.\n\nIf we take the \"try_again\" goto, due to a checksum error,\nthe \u0027len\u0027 has already been truncated.  So we won\u0027t compute\nthe same values as the original code did.\n\nReported-by: paul bilke \u003cfsmail@conspiracy.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99d2f47aa9d3ad40daa6ee0770e91b95b71082f0",
      "tree": "bf791483606ca6dee1a9d9d1de2456d462a77f62",
      "parents": [
        "5eb81e89164a5cea31dbc2df37a33588d4466352"
      ],
      "author": {
        "name": "Jun Zhao",
        "email": "mypopydev@gmail.com",
        "time": "Wed Nov 30 06:21:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@drr.davemloft.net",
        "time": "Wed Nov 30 23:10:02 2011 -0500"
      },
      "message": "ipv6 : mcast : Delete useless parameter in ip6_mc_add1_src()\n\nNeed not to used \u0027delta\u0027 flag when add single-source to interface\nfilter source list.\n\nSigned-off-by: Jun Zhao \u003cmypopydev@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@drr.davemloft.net\u003e\n"
    },
    {
      "commit": "76cc714ed5fe6ed90aad5c52ff3030f1f4e22a48",
      "tree": "400ab85cded60f5792ff9d4a32d12d4035ee03ff",
      "parents": [
        "596b9b68ef118f7409afbc78487263e08ef96261"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 00:01:28 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 30 18:46:43 2011 -0500"
      },
      "message": "neigh: Do not set tbl-\u003eentry_size in ipv4/ipv6 neigh tables.\n\nLet the core self-size the neigh entry based upon the key length.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b90e5794c5bdef91d26c623e992257947c506e35",
      "tree": "16bb31a00ad39d7fba91bb8d691bb0133e06312f",
      "parents": [
        "db62f684deeb291ab2533b99843d5df9a36b1f19"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 28 11:16:50 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 29 00:26:25 2011 -0500"
      },
      "message": "net: dont call jump_label_dec from irq context\n\nIgor Maravic reported an error caused by jump_label_dec() being called\nfrom IRQ context :\n\n BUG: sleeping function called from invalid context at kernel/mutex.c:271\n in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper\n 1 lock held by swapper/0:\n  #0:  (\u0026n-\u003etimer){+.-...}, at: [\u003cffffffff8107ce90\u003e] call_timer_fn+0x0/0x340\n Pid: 0, comm: swapper Not tainted 3.2.0-rc2-net-next-mpls+ #1\nCall Trace:\n \u003cIRQ\u003e  [\u003cffffffff8104f417\u003e] __might_sleep+0x137/0x1f0\n [\u003cffffffff816b9a2f\u003e] mutex_lock_nested+0x2f/0x370\n [\u003cffffffff810a89fd\u003e] ? trace_hardirqs_off+0xd/0x10\n [\u003cffffffff8109a37f\u003e] ? local_clock+0x6f/0x80\n [\u003cffffffff810a90a5\u003e] ? lock_release_holdtime.part.22+0x15/0x1a0\n [\u003cffffffff81557929\u003e] ? sock_def_write_space+0x59/0x160\n [\u003cffffffff815e936e\u003e] ? arp_error_report+0x3e/0x90\n [\u003cffffffff810969cd\u003e] atomic_dec_and_mutex_lock+0x5d/0x80\n [\u003cffffffff8112fc1d\u003e] jump_label_dec+0x1d/0x50\n [\u003cffffffff81566525\u003e] net_disable_timestamp+0x15/0x20\n [\u003cffffffff81557a75\u003e] sock_disable_timestamp+0x45/0x50\n [\u003cffffffff81557b00\u003e] __sk_free+0x80/0x200\n [\u003cffffffff815578d0\u003e] ? sk_send_sigurg+0x70/0x70\n [\u003cffffffff815e936e\u003e] ? arp_error_report+0x3e/0x90\n [\u003cffffffff81557cba\u003e] sock_wfree+0x3a/0x70\n [\u003cffffffff8155c2b0\u003e] skb_release_head_state+0x70/0x120\n [\u003cffffffff8155c0b6\u003e] __kfree_skb+0x16/0x30\n [\u003cffffffff8155c119\u003e] kfree_skb+0x49/0x170\n [\u003cffffffff815e936e\u003e] arp_error_report+0x3e/0x90\n [\u003cffffffff81575bd9\u003e] neigh_invalidate+0x89/0xc0\n [\u003cffffffff81578dbe\u003e] neigh_timer_handler+0x9e/0x2a0\n [\u003cffffffff81578d20\u003e] ? neigh_update+0x640/0x640\n [\u003cffffffff81073558\u003e] __do_softirq+0xc8/0x3a0\n\nSince jump_label_{inc|dec} must be called from process context only,\nwe must defer jump_label_dec() if net_disable_timestamp() is called\nfrom interrupt context.\n\nReported-by: Igor Maravic \u003cigorm@etf.rs\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a38e6d5aed24bb7f0211e0819fac8c32c2b5791",
      "tree": "8b31067a05b221efa900bb333aa58c7fbaffc854",
      "parents": [
        "5cac98dd06bc43a7baab3523184f70fd359e9f35"
      ],
      "author": {
        "name": "Li Wei",
        "email": "lw@cn.fujitsu.com",
        "time": "Sun Nov 27 21:33:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 28 18:09:13 2011 -0500"
      },
      "message": "ipv6: Set mcast_hops to IPV6_DEFAULT_MCASTHOPS when -1 was given.\n\nWe need to set np-\u003emcast_hops to it\u0027s default value at this moment\notherwise when we use it and found it\u0027s value is -1, the logic to\nget default hop limit doesn\u0027t take multicast into account and will\nreturn wrong hop limit(IPV6_DEFAULT_HOPLIMIT) which is for unicast.\n\nSigned-off-by: Li Wei \u003clw@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6dec4ac4ee1ad894dc0e9647cd3e180f93fc353c",
      "tree": "cd71e597bbbe677820bb229c6aedbad412758959",
      "parents": [
        "d6f03f29f7cdf064289f941bf0b838348e996e65",
        "fc0b927d9a5024e138c4318fe19a590f23e3eeec"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:47:03 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:47:03 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tnet/ipv4/inet_diag.c\n"
    },
    {
      "commit": "618f9bc74a039da76fa027ac2600c5b785b964c5",
      "tree": "ff69bc14b711c9c9d4c691d2a8c262401d62c8c9",
      "parents": [
        "ebb762f27fed083cb993a0816393aba4615f6544"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Nov 23 02:13:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:29:51 2011 -0500"
      },
      "message": "net: Move mtu handling down to the protocol depended handlers\n\nWe move all mtu handling from dst_mtu() down to the protocol\nlayer. So each protocol can implement the mtu handling in\na different manner.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebb762f27fed083cb993a0816393aba4615f6544",
      "tree": "c065070f78d4a272d99183606d103519426bb344",
      "parents": [
        "6b600b26c0215bf9ed04062ecfacf0bc20e2588c"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Nov 23 02:12:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:29:50 2011 -0500"
      },
      "message": "net: Rename the dst_opt default_mtu method to mtu\n\nWe plan to invoke the dst_opt-\u003edefault_mtu() method unconditioally\nfrom dst_mtu(). So rename the method to dst_opt-\u003emtu() to match\nthe name with the new meaning.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b600b26c0215bf9ed04062ecfacf0bc20e2588c",
      "tree": "a3dbd36f83c8c3d813b1422e472af6a31ace40d2",
      "parents": [
        "df07a94cf50eb73d09bf2350c3fe2598e4cbeee1"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Nov 23 02:12:13 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 26 14:29:50 2011 -0500"
      },
      "message": "route: Use the device mtu as the default for blackhole routes\n\nAs it is, we return null as the default mtu of blackhole routes.\nThis may lead to a propagation of a bogus pmtu if the default_mtu\nmethod of a blackhole route is invoked. So return dst-\u003edev-\u003emtu\nas the default mtu instead.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4d0fe50c75a547088e4304e5eb5f521514dfae46",
      "tree": "e1415bc9f01700ee8e0182de1a5550b8d0bf345c",
      "parents": [
        "15ac2b08a2fd0f4aacbe8ae39788252fea6fbe63"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 23 17:29:23 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 17:29:23 2011 -0500"
      },
      "message": "ipv6: tcp: fix tcp_v6_conn_request()\n\nSince linux 2.6.26 (commit c6aefafb7ec6 : Add IPv6 support to TCP SYN\ncookies), we can drop a SYN packet reusing a TIME_WAIT socket.\n\n(As a matter of fact we fail to send the SYNACK answer)\n\nAs the client resends its SYN packet after a one second timeout, we\naccept it, because first packet removed the TIME_WAIT socket before\nbeing dropped.\n\nThis probably explains why nobody ever noticed or complained.\n\nReported-by: Jesse Young \u003cjlyo@jlyo.org\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46a246c4dff9f248913e791b69f2336cd8d4ec41",
      "tree": "2f8d10fc0d3afdc82a1fa3295a456507c99d549b",
      "parents": [
        "c16a98ed91597b40b22b540c6517103497ef8e74"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 16:07:00 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 16:07:00 2011 -0500"
      },
      "message": "netfilter: Remove NOTRACK/RAW dependency on NETFILTER_ADVANCED.\n\nDistributions are using this in their default scripts, so don\u0027t hide\nthem behind the advanced setting.\n\nReported-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c16a98ed91597b40b22b540c6517103497ef8e74",
      "tree": "55e607b5facf5f29f58484b7c6662c1c8e1cb7ba",
      "parents": [
        "4d65a2465f6f2694de67777a8aedb1272f473979"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 23 15:49:31 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 15:49:31 2011 -0500"
      },
      "message": "ipv6: tcp: fix panic in SYN processing\n\ncommit 72a3effaf633bc ([NET]: Size listen hash tables using backlog\nhint) added a bug allowing inet6_synq_hash() to return an out of bound\narray index, because of u16 overflow.\n\nBug can happen if system admins set net.core.somaxconn \u0026\nnet.ipv4.tcp_max_syn_backlog sysctls to values greater than 65536\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4d65a2465f6f2694de67777a8aedb1272f473979",
      "tree": "ca1460a1acf10aa733f1aaa6ec8b83ad42385c1d",
      "parents": [
        "02f1ce35bed3ceb56868ec534591e15ffdcef879"
      ],
      "author": {
        "name": "Li Wei",
        "email": "lw@cn.fujitsu.com",
        "time": "Wed Nov 23 03:51:54 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 23 03:51:54 2011 -0500"
      },
      "message": "ipv6: fix a bug in ndisc_send_redirect\n\nRelease skb when transmit rate limit _not_ allow\n\nSigned-off-by: Li Wei \u003clw@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e3fd7a06dc20b2d8ec6892233ad2012968fe7b6",
      "tree": "da3fbec7672ac6b967dfa31cec6c88f468a57fa2",
      "parents": [
        "40ba84993d66469d336099c5af74c3da5b73e28d"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Nov 21 03:39:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 22 16:43:32 2011 -0500"
      },
      "message": "net: remove ipv6_addr_copy()\n\nC assignment can handle struct in6_addr copying.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "efd0bf97deeddd9ba53daabfc470a1399c6b0b2d",
      "tree": "eec56da5fbc796bac7c67f1990a18f5e0a304059",
      "parents": [
        "f8a15af093b19b86d56933c8757cee298d0f32a8",
        "6fe4c6d466e95d31164f14b1ac4aefb51f0f4f82"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 21 13:50:33 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 21 13:50:33 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nThe forcedeth changes had a conflict with the conversion over\nto atomic u64 statistics in net-next.\n\nThe libertas cfg.c code had a conflict with the bss reference\ncounting fix by John Linville in net-next.\n\nConflicts:\n\tdrivers/net/ethernet/nvidia/forcedeth.c\n\tdrivers/net/wireless/libertas/cfg.c\n"
    },
    {
      "commit": "a7ae1992248e5cf9dc5bd35695ab846d27efe15f",
      "tree": "ed3f450a41ca5975aecae2850105ca22f98ca318",
      "parents": [
        "660882432909dbe611f1792eda158188065cb9f1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 18 02:20:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 18 14:37:09 2011 -0500"
      },
      "message": "ipv6: Remove all uses of LL_ALLOCATED_SPACE\n\nipv6: Remove all uses of LL_ALLOCATED_SPACE\n\nThe macro LL_ALLOCATED_SPACE was ill-conceived.  It applies the\nalignment to the sum of needed_headroom and needed_tailroom.  As\nthe amount that is then reserved for head room is needed_headroom\nwith alignment, this means that the tail room left may be too small.\n\nThis patch replaces all uses of LL_ALLOCATED_SPACE in net/ipv6\nwith the macro LL_RESERVED_SPACE and direct reference to\nneeded_tailroom.\n\nThis also fixes the problem with needed_headroom changing between\nallocating the skb and reserving the head room.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d26784cf0d04c1238e906efdd5de76439cb0a1e",
      "tree": "7a32defb4a9bf4430eac2fc589d45f6aea1c2b63",
      "parents": [
        "14df015bb1708cd7ba1e5af11a1b0365b165a3ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 17 03:18:28 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 17 03:18:28 2011 -0500"
      },
      "message": "ipv6: Use pr_warn() in ip6_fib.c\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14df015bb1708cd7ba1e5af11a1b0365b165a3ef",
      "tree": "8b49170dec56070f9534905e7de7d1a3e682239a",
      "parents": [
        "8f5f69824fe221a36df781c2aee9fa1d74e89077"
      ],
      "author": {
        "name": "Matti Vaittinen",
        "email": "matti.vaittinen@nsn.com",
        "time": "Wed Nov 16 21:18:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 17 03:16:25 2011 -0500"
      },
      "message": "IPV6 Fix a crash when trying to replace non existing route\n\nThis patch fixes a crash when non existing IPv6 route is tried to be changed.\n\nWhen new destination node was inserted in middle of FIB6 tree, no relevant\nsanity checks were performed. Later route insertion might have been prevented\ndue to invalid request, causing node with no rt info being left in tree.\nWhen this node was accessed, a crash occurred.\n\nPatch adds missing checks in fib6_add_1()\n\nSigned-off-by: Matti Vaittinen \u003cMazziesaccount@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c8f44affb7244f2ac3e703cab13d55ede27621bb",
      "tree": "62e7aea2916a8d7cab825fe500670c5113854c0f",
      "parents": [
        "a59e2ecb859f2ab03bb2e230709f8039472ad2c3"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Nov 15 15:29:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 17:43:10 2011 -0500"
      },
      "message": "net: introduce and use netdev_features_t for device features sets\n\nv2:\tadd couple missing conversions in drivers\n\tsplit unexporting netdev_fix_features()\n\timplemented %pNF\n\tconvert sock::sk_route_(no?)caps\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "229a66e3bec97563aa92e25dfe0bc60b0d468619",
      "tree": "f523a174ccf37d7e184248d6e3f25acc1be4c948",
      "parents": [
        "ad79eefc42d56cb851a2b28a86e481cf1161005e"
      ],
      "author": {
        "name": "Matti Vaittinen",
        "email": "matti.vaittinen@nsn.com",
        "time": "Tue Nov 15 00:58:59 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 15 16:54:20 2011 -0500"
      },
      "message": "IPv6: Removing unnecessary NULL checks.\n\nThis patch removes unnecessary NULL checks noticed by Dan Carpenter.\nChecks were introduced in commit\n4a287eba2de395713d8b2b2aeaa69fa086832d34 to net-next.\n\nSigned-off-by: Matti Vaittinen \u003cMazziesaccount@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a287eba2de395713d8b2b2aeaa69fa086832d34",
      "tree": "96962825dab1262bc46c8d5cc067103faea1d9ea",
      "parents": [
        "d71314b4ac88637f9ac2770a9f635babdf6f2ff9"
      ],
      "author": {
        "name": "Matti Vaittinen",
        "email": "matti.vaittinen@nsn.com",
        "time": "Mon Nov 14 00:15:14 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 14 14:35:33 2011 -0500"
      },
      "message": "IPv6 routing, NLM_F_* flag support: REPLACE and EXCL flags support, warn about missing CREATE flag\n\nThe support for NLM_F_* flags at IPv6 routing requests.\n\nIf NLM_F_CREATE flag is not defined for RTM_NEWROUTE request,\nwarning is printed, but no error is returned. Instead new route is\nadded. Later NLM_F_CREATE may be required for\nnew route creation.\n\nException is when NLM_F_REPLACE flag is given without NLM_F_CREATE, and\nno matching route is found. In this case it should be safe to assume\nthat the request issuer is familiar with NLM_F_* flags, and does really\nnot want route to be created.\n\nSpecifying NLM_F_REPLACE flag will now make the kernel to search for\nmatching route, and replace it with new one. If no route is found and\nNLM_F_CREATE is specified as well, then new route is created.\n\nAlso, specifying NLM_F_EXCL will yield returning of error if matching\nroute is found.\n\nPatch created against linux-3.2-rc1\n\nSigned-off-by: Matti Vaittinen \u003cMazziesaccount@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d71314b4ac88637f9ac2770a9f635babdf6f2ff9",
      "tree": "d783319152ab7107b680c0654b2bd8dad2173d23",
      "parents": [
        "abbd00b82a2771b0460ba2cffdb1343aa827ccde"
      ],
      "author": {
        "name": "Matti Vaittinen",
        "email": "matti.vaittinen@nsn.com",
        "time": "Mon Nov 14 00:14:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 14 14:35:33 2011 -0500"
      },
      "message": "IPv6 routing, NLM_F_* flag support: warn if new route is created without NLM_F_CREATE\n\nThe support for NLM_F_* flags at IPv6 routing requests.\n\nWarn if NLM_F_CREATE flag is not defined for RTM_NEWROUTE request,\ncreating new table. Later NLM_F_CREATE may be required for\nnew route creation.\n\nPatch created against linux-3.2-rc1\n\nSigned-off-by: Matti Vaittinen \u003cMazziesaccount@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b5c171bb3dc0686b2647a84e990199c5faa9ef8",
      "tree": "ad1298a6ba5d541638f2f4b1d26d0dad576b9189",
      "parents": [
        "292d1398983f3514a0eab13b7606df7f4730b498"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 09 12:07:14 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 14 00:47:54 2011 -0500"
      },
      "message": "neigh: new unresolved queue limits\n\nLe mercredi 09 novembre 2011 à 16:21 -0500, David Miller a écrit :\n\u003e From: David Miller \u003cdavem@davemloft.net\u003e\n\u003e Date: Wed, 09 Nov 2011 16:16:44 -0500 (EST)\n\u003e\n\u003e \u003e From: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n\u003e \u003e Date: Wed, 09 Nov 2011 12:14:09 +0100\n\u003e \u003e\n\u003e \u003e\u003e unres_qlen is the number of frames we are able to queue per unresolved\n\u003e \u003e\u003e neighbour. Its default value (3) was never changed and is responsible\n\u003e \u003e\u003e for strange drops, especially if IP fragments are used, or multiple\n\u003e \u003e\u003e sessions start in parallel. Even a single tcp flow can hit this limit.\n\u003e \u003e  ...\n\u003e \u003e\n\u003e \u003e Ok, I\u0027ve applied this, let\u0027s see what happens :-)\n\u003e\n\u003e Early answer, build fails.\n\u003e\n\u003e Please test build this patch with DECNET enabled and resubmit.  The\n\u003e decnet neigh layer still refers to the removed -\u003equeue_len member.\n\u003e\n\u003e Thanks.\n\nOuch, this was fixed on one machine yesterday, but not the other one I\nused this morning, sorry.\n\n[PATCH V5 net-next] neigh: new unresolved queue limits\n\nunres_qlen is the number of frames we are able to queue per unresolved\nneighbour. Its default value (3) was never changed and is responsible\nfor strange drops, especially if IP fragments are used, or multiple\nsessions start in parallel. Even a single tcp flow can hit this limit.\n\n$ arp -d 192.168.20.108 ; ping -c 2 -s 8000 192.168.20.108\nPING 192.168.20.108 (192.168.20.108) 8000(8028) bytes of data.\n8008 bytes from 192.168.20.108: icmp_seq\u003d2 ttl\u003d64 time\u003d0.322 ms\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "731abb9cb27aef6013ce60808a04e04a545f3f4e",
      "tree": "fc848c456d3db3bc92c085dc0dea7dbcc22f6b61",
      "parents": [
        "898bdf2cb43eb0a962c397eb4dd1aec2c7211be2"
      ],
      "author": {
        "name": "Josh Boyer",
        "email": "jwboyer@redhat.com",
        "time": "Thu Nov 10 15:10:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 14 00:24:06 2011 -0500"
      },
      "message": "ip6_tunnel: copy parms.name after register_netdevice\n\nCommit 1c5cae815d removed an explicit call to dev_alloc_name in ip6_tnl_create\nbecause register_netdevice will now create a valid name.  This works for the\nnet_device itself.\n\nHowever the tunnel keeps a copy of the name in the parms structure for the\nip6_tnl associated with the tunnel.  parms.name is set by copying the net_device\nname in ip6_tnl_dev_init_gen.  That function is called from ip6_tnl_dev_init in\nip6_tnl_create, but it is done before register_netdevice is called so the name\nis set to a bogus value in the parms.name structure.\n\nThis shows up if you do a simple tunnel add, followed by a tunnel show:\n\n[root@localhost ~]# ip -6 tunnel add remote fec0::100 local fec0::200\n[root@localhost ~]# ip -6 tunnel show\nip6tnl0: ipv6/ipv6 remote :: local :: encaplimit 0 hoplimit 0 tclass 0x00 flowlabel 0x00000 (flowinfo 0x00000000)\nip6tnl%d: ipv6/ipv6 remote fec0::100 local fec0::200 encaplimit 4 hoplimit 64 tclass 0x00 flowlabel 0x00000 (flowinfo 0x00000000)\n[root@localhost ~]#\n\nFix this by moving the strcpy out of ip6_tnl_dev_init_gen, and calling it after\nregister_netdevice has successfully returned.\n\nCc: stable@vger.kernel.org\nSigned-off-by: Josh Boyer \u003cjwboyer@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a24444f8f2bea694003e3eac5c2f8d9a386bdc5",
      "tree": "ef283db22c931c518ac6c0b8bca2e23dd62a7736",
      "parents": [
        "3d249d4ca7d0ed6629a135ea1ea21c72286c0d80"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Nov 13 01:24:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 14 00:12:26 2011 -0500"
      },
      "message": "ipv6: reduce percpu needs for icmpv6msg mibs\n\nReading /proc/net/snmp6 on a machine with a lot of cpus is very\nexpensive (can be ~88000 us).\n\nThis is because ICMPV6MSG MIB uses 4096 bytes per cpu, and folding\nvalues for all possible cpus can read 16 Mbytes of memory (32MBytes on\nnon x86 arches)\n\nICMP messages are not considered as fast path on a typical server, and\neventually few cpus handle them anyway. We can afford an atomic\noperation instead of using percpu data.\n\nThis saves 4096 bytes per cpu and per network namespace.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4b90a603a1b21d63cf743cc833680cb195a729f6",
      "tree": "5ac1ffcfd7208796967f4d9387d831c1d9e54ace",
      "parents": [
        "1e49570171117e547e6324c58371db4a0dc2f1db"
      ],
      "author": {
        "name": "Nick Bowler",
        "email": "nbowler@elliptictech.com",
        "time": "Thu Nov 10 09:01:27 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 12 18:13:32 2011 -0500"
      },
      "message": "ah: Don\u0027t return NET_XMIT_DROP on input.\n\nWhen the ahash driver returns -EBUSY, AH4/6 input functions return\nNET_XMIT_DROP, presumably copied from the output code path.  But\nreturning transmit codes on input doesn\u0027t make a lot of sense.\nSince NET_XMIT_DROP is a positive int, this gets interpreted as\nthe next header type (i.e., success).  As that can only end badly,\nremove the check.\n\nSigned-off-by: Nick Bowler \u003cnbowler@elliptictech.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d826eb14ecef3574b6b3be55e5f4329f4a76fbf3",
      "tree": "e072ee768f065be430543709d48f08a36f4eed2d",
      "parents": [
        "acb32ba3dee66d58704caeeb8c6ff95f60efdc66"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 09 07:24:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 09 16:36:27 2011 -0500"
      },
      "message": "ipv4: PKTINFO doesnt need dst reference\n\nLe lundi 07 novembre 2011 à 15:33 +0100, Eric Dumazet a écrit :\n\n\u003e At least, in recent kernels we dont change dst-\u003erefcnt in forwarding\n\u003e patch (usinf NOREF skb-\u003edst)\n\u003e\n\u003e One particular point is the atomic_inc(dst-\u003erefcnt) we have to perform\n\u003e when queuing an UDP packet if socket asked PKTINFO stuff (for example a\n\u003e typical DNS server has to setup this option)\n\u003e\n\u003e I have one patch somewhere that stores the information in skb-\u003ecb[] and\n\u003e avoid the atomic_{inc|dec}(dst-\u003erefcnt).\n\u003e\n\nOK I found it, I did some extra tests and believe its ready.\n\n[PATCH net-next] ipv4: IP_PKTINFO doesnt need dst reference\n\nWhen a socket uses IP_PKTINFO notifications, we currently force a dst\nreference for each received skb. Reader has to access dst to get needed\ninformation (rt_iif \u0026 rt_spec_dst) and must release dst reference.\n\nWe also forced a dst reference if skb was put in socket backlog, even\nwithout IP_PKTINFO handling. This happens under stress/load.\n\nWe can instead store the needed information in skb-\u003ecb[], so that only\nsoftirq handler really access dst, improving cache hit ratios.\n\nThis removes two atomic operations per packet, and false sharing as\nwell.\n\nOn a benchmark using a mono threaded receiver (doing only recvmsg()\ncalls), I can reach 720.000 pps instead of 570.000 pps.\n\nIP_PKTINFO is typically used by DNS servers, and any multihomed aware\nUDP application.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7ea81a58adc123a4e980cb0eff9eb5c144b5dc7",
      "tree": "4f4b2aeef8f66763cc48dccb7aef505f96601047",
      "parents": [
        "069294e813ed5f27f82613b027609bcda5f1b914"
      ],
      "author": {
        "name": "Nick Bowler",
        "email": "nbowler@elliptictech.com",
        "time": "Tue Nov 08 12:12:45 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 09 15:55:53 2011 -0500"
      },
      "message": "ah: Read nexthdr value before overwriting it in ahash input callback.\n\nThe AH4/6 ahash input callbacks read out the nexthdr field from the AH\nheader *after* they overwrite that header.  This is obviously not going\nto end well.  Fix it up.\n\nSigned-off-by: Nick Bowler \u003cnbowler@elliptictech.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "069294e813ed5f27f82613b027609bcda5f1b914",
      "tree": "4c6254008c1fc04e09b48c618e30622e5aeefc0a",
      "parents": [
        "fecc73519439361eab21fb3cebec504672ef0e03"
      ],
      "author": {
        "name": "Nick Bowler",
        "email": "nbowler@elliptictech.com",
        "time": "Tue Nov 08 12:12:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 09 15:55:53 2011 -0500"
      },
      "message": "ah: Correctly pass error codes in ahash output callback.\n\nThe AH4/6 ahash output callbacks pass nexthdr to xfrm_output_resume\ninstead of the error code.  This appears to be a copy+paste error from\nthe input case, where nexthdr is expected.  This causes the driver to\ncontinuously add AH headers to the datagram until either an allocation\nfails and the packet is dropped or the ahash driver hits a synchronous\nfallback and the resulting monstrosity is transmitted.\n\nCorrect this issue by simply passing the error code unadulterated.\n\nSigned-off-by: Nick Bowler \u003cnbowler@elliptictech.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2563fa595447bba6a73e6c58c4bbf11ac0f28931",
      "tree": "973f75cb61b84c41e7047bfa759197b3e1e39f22",
      "parents": [
        "f74024d9f05caa570dcf7582b498bbf011943491"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Mon Nov 07 14:57:22 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 15:13:03 2011 -0500"
      },
      "message": "net: make ipv6 PKTINFO honour freebind\n\nThis just makes it possible to spoof source IPv6 address on a socket\nwithout having to create and bind a new socket for every source IP\nwe wish to spoof.\n\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f74024d9f05caa570dcf7582b498bbf011943491",
      "tree": "1fa2bbbcbc337f6d1db23b09acd2ee8b48e37389",
      "parents": [
        "68aad78c5023b8aa82da99b47f9d8cf40e8ca453"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Mon Nov 07 14:57:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 15:13:03 2011 -0500"
      },
      "message": "net: make ipv6 bind honour freebind\n\nThis makes native ipv6 bind follow the precedent set by:\n  - native ipv4 bind behaviour\n  - dual stack ipv4-mapped ipv6 bind behaviour.\n\nThis does allow an unpriviledged process to spoof its source IPv6\naddress, just like it currently can spoof its source IPv4 address\n(for example when using UDP).\n\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ce120f11898c921329a5f618d01dcc1e8e69cac",
      "tree": "471821e87eb020e4e9dcf66124e862e7471220a1",
      "parents": [
        "2bc8ca40f951163b3bb75949479e2755c12c1b96"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 04 23:19:28 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 15:10:59 2011 -0500"
      },
      "message": "net: better pcpu data alignment\n\nTunnels can force an alignment of their percpu data to reduce number of\ncache lines used in fast path, or read in .ndo_get_stats()\n\npercpu_alloc() is a very fine grained allocator, so any small hole will\nbe used anyway.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c457338d7acd3823e765b684a62294cfda9d2f55",
      "tree": "7f055d507f54a4223b049bacd15c09b0d5548784",
      "parents": [
        "10953db8e1a278742ef7e64a3d1491802bcfa98b"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Tue Nov 08 04:41:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 12:37:06 2011 -0500"
      },
      "message": "ipv6: drop packets when source address is multicast\n\nRFC 4291 Section 2.7 says Multicast addresses must not be used as source\naddresses in IPv6 packets - drop them on input so we don\u0027t process the\npacket further.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nReported-and-Tested-by: Kumar Sanghvi \u003cdivinekumar@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "73cb88ecb950ee67906d02354f781ea293bcf895",
      "tree": "fbb4a777410d5a5653537bcd3ee7e954bc9ba5a0",
      "parents": [
        "98f41f694f46085fda475cdee8cc0b6d2c5e6f1f"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 30 06:46:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 01 17:56:14 2011 -0400"
      },
      "message": "net: make the tcp and udp file_operations for the /proc stuff const\n\nthe tcp and udp code creates a set of struct file_operations at runtime\nwhile it can also be done at compile time, with the added benefit of then\nhaving these file operations be const.\n\nthe trickiest part was to get the \"THIS_MODULE\" reference right; the naive\nmethod of declaring a struct in the place of registration would not work\nfor this reason.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2dad81adf2c49aa9f8bb7e7c48dff9261bd58396",
      "tree": "cb37d01250683d4114e3ea9e21851447d22128ba",
      "parents": [
        "e23ebf0fa9e1548c94d8277e393be97ba48faa06"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Wed Oct 19 13:23:06 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Nov 01 09:20:07 2011 +0100"
      },
      "message": "netfilter: ipv6: fix afinfo-\u003eroute refcnt leak on error\n\nSeveral callers (h323 conntrack, xt_addrtype) assume that the\nreturned **dst only needs to be released if the function returns 0.\n\nThis is true for the ipv4 implementation, but not for the ipv6 one.\n\nInstead of changing the users, change the ipv6 implementation\nto behave like the ipv4 version by only providing the dst_entry result\nin the success case.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "0a9ee81349d90c6c85831f38118bf569c60a4d51",
      "tree": "37c5f232e594cbd222637c8ae44030749467190d",
      "parents": [
        "40cb1f9bc52186a1a9ef56f0d976482863516ce1"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 29 14:17:25 2011 -0700"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Nov 01 09:19:49 2011 +0100"
      },
      "message": "netfilter: Remove unnecessary OOM logging messages\n\nSite specific OOM messages are duplications of a generic MM\nout of memory message and aren\u0027t really useful, so just\ndelete them.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "14ef37b6d00eb5d06704e45989ba4c21e7be7673",
      "tree": "800422d2aa85e190bc6e07e305574d71bf25db24",
      "parents": [
        "e6d265e8504ab4a3368b8645d318b344ee88b280"
      ],
      "author": {
        "name": "Andreas Hofmeister",
        "email": "andi@collax.com",
        "time": "Wed Oct 26 03:24:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 30 04:12:36 2011 -0400"
      },
      "message": "ipv6: fix route lookup in addrconf_prefix_rcv()\n\nThe route lookup to find a previously auto-configured route for a prefixes used\nto use rt6_lookup(), with the prefix from the RA used as an address. However,\nthat kind of lookup ignores routing tables, the prefix length and route flags,\nso when there were other matching routes, even in different tables and/or with\na different prefix length, the wrong route would be manipulated.\n\nNow, a new function \"addrconf_get_prefix_route()\" is used for the route lookup,\nwhich searches in RT6_TABLE_PREFIX and takes the prefix-length and route flags\ninto account.\n\nSigned-off-by: Andreas Hofmeister \u003candi@collax.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7011687f0f2f12cc348f6a693fafe63d89167eac",
      "tree": "c5e546044c5ff88b4abafc28df19e8b7ba951a7e",
      "parents": [
        "504744e4edc24f6f16eed44a59b39bffcc0c1391"
      ],
      "author": {
        "name": "Gao feng",
        "email": "omarapazanadi@gmail.com",
        "time": "Fri Oct 28 02:46:57 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 28 16:36:07 2011 -0400"
      },
      "message": "ipv6: fix route error binding peer in func icmp6_dst_alloc\n\nin func icmp6_dst_alloc,dst_metric_set call ipv6_cow_metrics to set metric.\nipv6_cow_metrics may will call rt6_bind_peer to set rt6_info-\u003ert6i_peer.\nSo,we should move ipv6_addr_copy before dst_metric_set to make sure rt6_bind_peer success.\n\nSigned-off-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "504744e4edc24f6f16eed44a59b39bffcc0c1391",
      "tree": "6a54e48c8fb88cc927f9d146819565a94010a873",
      "parents": [
        "3c20f72f9108b2fcf30ec63d8a4203736c01ccd0"
      ],
      "author": {
        "name": "Zheng Yan",
        "email": "zheng.z.yan@intel.com",
        "time": "Fri Oct 28 00:26:00 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 28 00:26:00 2011 -0400"
      },
      "message": "ipv6: fix error propagation in ip6_ufo_append_data()\n\nWe should return errcode from sock_alloc_send_skb()\n\nSigned-off-by: Zheng Yan \u003czheng.z.yan@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b903d324bee2627036d024dceed73b3c96558795",
      "tree": "976d7f5ff6d765faca2e1af86cbcddc9257470ab",
      "parents": [
        "138c4ae9cfda8fdcf9e137457853b09ef8cf8f77"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 27 00:44:35 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 27 00:44:35 2011 -0400"
      },
      "message": "ipv6: tcp: fix TCLASS value in ACK messages sent from TIME_WAIT\n\ncommit 66b13d99d96a (ipv4: tcp: fix TOS value in ACK messages sent from\nTIME_WAIT) fixed IPv4 only.\n\nThis part is for the IPv6 side, adding a tclass param to ip6_xmit()\n\nWe alias tw_tclass and tw_tos, if socket family is INET6.\n\n[ if sockets is ipv4-mapped, only IP_TOS socket option is used to fill\nTOS field, TCLASS is not taken into account ]\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f56220fad0d13f8b0ebe7592f41fdb49874d143",
      "tree": "7e5d439d2f53fb86d509d8c9f4994754ca5c3fe2",
      "parents": [
        "48855432047c9de7ea9987349de4c47d48ade8d1"
      ],
      "author": {
        "name": "Andreas Hofmeister",
        "email": "andi@collax.com",
        "time": "Mon Oct 24 19:13:15 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 19:13:15 2011 -0400"
      },
      "message": "ipv6: Do not use routes from locally generated RAs\n\nWhen hybrid mode is enabled (accept_ra \u003d\u003d 2), the kernel also sees RAs\ngenerated locally. This is useful since it allows the kernel to auto-configure\nits own interface addresses.\n\nHowever, if \u0027accept_ra_defrtr\u0027 and/or \u0027accept_ra_rtr_pref\u0027 are set and the\nlocally generated RAs announce the default route and/or other route information,\nthe kernel happily inserts bogus routes with its own address as gateway.\n\nWith this patch, adding routes from an RA will be skiped when the RAs source\naddress matches any local address, just as if \u0027accept_ra_defrtr\u0027 and\n\u0027accept_ra_rtr_pref\u0027 were set to 0.\n\nSigned-off-by: Andreas Hofmeister \u003candi@collax.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1805b2f04855f07afe3a71d620a68f483b0ed74f",
      "tree": "b823b90f37f5404fcaef70f785c70112ca74a329",
      "parents": [
        "78d81d15b74246c7cedf84894434890b33da3907",
        "f42af6c486aa5ca6ee62800cb45c5b252020509d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 18:18:09 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 18:18:09 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ra.kernel.org:/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "318cf7aaa0a6d20ecf6be33eb771291e5ff2e3b9",
      "tree": "a2a42bbea9a1351d9986690f6df2a90cdbfd1d0c",
      "parents": [
        "8f9f4668b37bcc877156dd525a856055735c8d24"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 24 02:46:04 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 02:46:04 2011 -0400"
      },
      "message": "tcp: md5: add more const attributes\n\nNow tcp_md5_hash_header() has a const tcphdr argument, we can add more\nconst attributes to callers.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf533ea53ebfae41be15b103d78e7ebec30b9969",
      "tree": "51ed3c69f4a15117fefe5cbd291a75010beb0f4b",
      "parents": [
        "f04565ddf52e401880f8ba51de0dff8ba51c99fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 21 05:22:42 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 21 05:22:42 2011 -0400"
      },
      "message": "tcp: add const qualifiers where possible\n\nAdding const qualifiers to pointers can ease code review, and spot some\nbugs. It might allow compiler to optimize code further.\n\nFor example, is it legal to temporary write a null cksum into tcphdr\nin tcp_md5_hash_header() ? I am afraid a sniffer could catch the\ntemporary null value...\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cc7a765c2987f03ba278dac03c7cc759ee198e7",
      "tree": "1afd1f5b4da65279b84aa5b74f9c69e8ad3f3b36",
      "parents": [
        "05bdd2f14351176d368e8ddc67993690a2d1bfb6"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Thu Oct 20 18:21:36 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 20 18:21:36 2011 -0400"
      },
      "message": "net: allow CAP_NET_RAW to set socket options IP{,V6}_TRANSPARENT\n\nUp till now the IP{,V6}_TRANSPARENT socket options (which actually set\nthe same bit in the socket struct) have required CAP_NET_ADMIN\nprivileges to set or clear the option.\n\n- we make clearing the bit not require any privileges.\n- we allow CAP_NET_ADMIN to set the bit (as before this change)\n- we allow CAP_NET_RAW to set this bit, because raw\n  sockets already pretty much effectively allow you\n  to emulate socket transparency.\n\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25c8295b5bb355ec8672735b40ee7a43c51d1aba",
      "tree": "9b7b0fc5e5ff5151d95858d4a523b53743dbbdcd",
      "parents": [
        "686dc6b64b58e69715ce92177da0732a6464db69"
      ],
      "author": {
        "name": "Kevin Wilson",
        "email": "wkevils@gmail.com",
        "time": "Sun Oct 16 05:21:57 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 19:26:16 2011 -0400"
      },
      "message": "cleanup: remove unnecessary include.\n\nThis cleanup patch removes unnecessary include from net/ipv6/ip6_fib.c.\n\nSigned-off-by: Kevin Wilson \u003cwkevils@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9e903e085262ffbf1fc44a17ac06058aca03524a",
      "tree": "4acefc97ba38c1733474d25c0b2053b56af97db1",
      "parents": [
        "dd767856a36e00b631d65ebc4bb81b19915532d6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 18 21:00:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 03:10:46 2011 -0400"
      },
      "message": "net: add skb frag size accessors\n\nTo ease skb-\u003etruesize sanitization, its better to be able to localize\nall references to skb frags size.\n\nDefine accessors : skb_frag_size() to fetch frag size, and\nskb_frag_size_{set|add|sub}() to manipulate it.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd767856a36e00b631d65ebc4bb81b19915532d6",
      "tree": "02fda49186e29ffeb47b5683236d6fcbfbc379b5",
      "parents": [
        "299b0767642a65f0c5446ab6d35e6df0daf43d33"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Oct 11 01:44:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 18 23:53:10 2011 -0400"
      },
      "message": "xfrm6: Don\u0027t call icmpv6_send on local error\n\nCalling icmpv6_send() on a local message size error leads to\nan incorrect update of the path mtu. So use xfrm6_local_rxpmtu()\nto notify about the pmtu if the IPV6_DONTFRAG socket option is\nset on an udp or raw socket, according RFC 3542 and use\nipv6_local_error() otherwise.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "299b0767642a65f0c5446ab6d35e6df0daf43d33",
      "tree": "30e41c97fe4cef60540964495c15d0be121e3b3e",
      "parents": [
        "c113464d4351591de8791c0cadfc165836e5a725"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Oct 11 01:43:33 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 18 23:53:10 2011 -0400"
      },
      "message": "ipv6: Fix IPsec slowpath fragmentation problem\n\nip6_append_data() builds packets based on the mtu from dst_mtu(rt-\u003edst.path).\nOn IPsec the effective mtu is lower because we need to add the protocol\nheaders and trailers later when we do the IPsec transformations. So after\nthe IPsec transformations the packet might be too big, which leads to a\nslowpath fragmentation then. This patch fixes this by building the packets\nbased on the lower IPsec mtu from dst_mtu(\u0026rt-\u003edst) and adapts the exthdr\nhandling to this.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c113464d4351591de8791c0cadfc165836e5a725",
      "tree": "9c1fe9fa0e0ffc67273fe150a89bca9dc7c0afc9",
      "parents": [
        "1d9743745bf5ba30b57986d8da33c4fa072c355b"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Oct 11 02:01:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 18 23:51:30 2011 -0400"
      },
      "message": "ipv6: Remove superfluous NULL pointer check in ipv6_local_rxpmtu\n\nThe pointer to mtu_info is taken from the common buffer\nof the skb, thus it can\u0027t be a NULL pointer. This patch\nremoves this check on mtu_info.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "01b7806cdce3d3cf1626a1e79389f30512703069",
      "tree": "f4f20f62018d494e63c58f4b7906badbbf25435c",
      "parents": [
        "f861c2b80c45954e1ea04ead24cafcb1806dd536"
      ],
      "author": {
        "name": "Roy.Li",
        "email": "rongqing.li@windriver.com",
        "time": "Mon Oct 03 19:43:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 17 19:27:56 2011 -0400"
      },
      "message": "ipv6: remove a rcu_read_lock in ndisc_constructor\n\nin6_dev_get(dev) takes a reference on struct inet6_dev, we dont need\nrcu locking in ndisc_constructor()\n\nSigned-off-by: Roy.Li \u003crongqing.li@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87fb4b7b533073eeeaed0b6bf7c2328995f6c075",
      "tree": "be4b37f08d7fe2d018ae68bae4577b1b2bafd0fc",
      "parents": [
        "97ba0eb64ca690165f945a83e609102fcefa99cb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 13 07:28:54 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 13 16:05:07 2011 -0400"
      },
      "message": "net: more accurate skb truesize\n\nskb truesize currently accounts for sk_buff struct and part of skb head.\nkmalloc() roundings are also ignored.\n\nConsidering that skb_shared_info is larger than sk_buff, its time to\ntake it into account for better memory accounting.\n\nThis patch introduces SKB_TRUESIZE(X) macro to centralize various\nassumptions into a single place.\n\nAt skb alloc phase, we put skb_shared_info struct at the exact end of\nskb head, to allow a better use of memory (lowering number of\nreallocations), since kmalloc() gives us power-of-two memory blocks.\n\nUnless SLUB/SLUB debug is active, both skb-\u003ehead and skb_shared_info are\naligned to cache lines, as before.\n\nNote: This patch might trigger performance regressions because of\nmisconfigured protocol stacks, hitting per socket or global memory\nlimits that were previously not reached. But its a necessary step for a\nmore accurate memory accounting.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Andi Kleen \u003cak@linux.intel.com\u003e\nCC: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cdaf557034bb4397b2c86bb424de1788b134f610",
      "tree": "bf6bbf731188f17d83e5ca7018224c1c0e2ee96c",
      "parents": [
        "134d0f974c55c942541f1663d51fa846257eff2a"
      ],
      "author": {
        "name": "Yan, Zheng",
        "email": "zheng.z.yan@intel.com",
        "time": "Sat Oct 08 22:34:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 10 14:26:16 2011 -0400"
      },
      "message": "gro: refetch inet6_protos[] after pulling ext headers\n\nipv6_gro_receive() doesn\u0027t update the protocol ops after pulling\nthe ext headers. It looks like a typo.\n\nSigned-off-by: Zheng Yan \u003czheng.z.yan@intel.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c5100c28b02c4b2b2c6f6fafbbd76d90f698b9",
      "tree": "08c4399e0341f7eb0ccb24e15f2cab687275c2a4",
      "parents": [
        "8083f0fc969d9b5353061a7a6f963405057e26b1",
        "3ee72ca99288f1de95ec9c570e43f531c8799f06"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 07 13:38:43 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 07 13:38:43 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:davem330/net\n\nConflicts:\n\tnet/batman-adv/soft-interface.c\n"
    },
    {
      "commit": "260fcbeb1ae9e768a44c9925338fbacb0d7e5ba9",
      "tree": "741dea73d68eca24c8d515bb7091cbedb77192a4",
      "parents": [
        "cb2d0f3e968bff7c6d262aca3e3ab8d4184e69b2"
      ],
      "author": {
        "name": "Yan, Zheng",
        "email": "zheng.z.yan@intel.com",
        "time": "Thu Sep 29 17:10:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 04 23:31:24 2011 -0400"
      },
      "message": "tcp: properly handle md5sig_pool references\n\ntcp_v4_clear_md5_list() assumes that multiple tcp md5sig peers\nonly hold one reference to md5sig_pool. but tcp_v4_md5_do_add()\nincreases use count of md5sig_pool for each peer. This patch\nmakes tcp_v4_md5_do_add() only increases use count for the first\ntcp md5sig peer.\n\nSigned-off-by: Zheng Yan \u003czheng.z.yan@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "676a1184e8afd4fed7948232df1ff91517400859"
}
