)]}'
{
  "log": [
    {
      "commit": "b4aa9e05a61b845541fa6f5b1d246976922601f0",
      "tree": "ca94478c3df281ab76a3399f5ba6341ade3f5791",
      "parents": [
        "1dc0f3c54ce1df957f99c17b145488fd03eb1a59",
        "4b8fe66300acb2fba8b16d62606e0d30204022fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 17 12:27:22 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 17 12:27:22 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x/bnx2x.h\n\tdrivers/net/wireless/iwlwifi/iwl-1000.c\n\tdrivers/net/wireless/iwlwifi/iwl-6000.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/vhost/vhost.c\n"
    },
    {
      "commit": "7d743b7e952261f4d9ee091100b6403f3ce8a2af",
      "tree": "9829009c63ccebbf65b4cca63c1eb4e14b8e5fd1",
      "parents": [
        "0b7967503dc97864f283a3a06fbe23e041876138"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue Dec 14 16:10:41 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 16 14:48:44 2010 -0800"
      },
      "message": "sctp: fix the return value of getting the sctp partial delivery point\n\nGet the sctp partial delivery point using SCTP_PARTIAL_DELIVERY_POINT\nsocket option should return 0 if success, not -ENOTSUPP.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "40a010395cd66053f07bffeb3da5e44683bac30e",
      "tree": "f734e8da3145553bd47416d27c33e62435a39e52",
      "parents": [
        "79aeec5822cea63cf732bbc0c9f3337542352616"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue Dec 07 17:11:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 10 15:29:49 2010 -0800"
      },
      "message": "SCTP: Fix SCTP_SET_PEER_PRIMARY_ADDR to accpet v4mapped address\n\nSCTP_SET_PEER_PRIMARY_ADDR does not accpet v4mapped address, using\nv4mapped address in SCTP_SET_PEER_PRIMARY_ADDR socket option will\nget -EADDRNOTAVAIL error if v4map is enabled. This patch try to\nfix it by mapping v4mapped address to v4 address if allowed.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8917a3c0b7d1557548f50bfe3f0e18e0354e38f6",
      "tree": "8bb698c078f7808deaa0de1b9035bbf658416205",
      "parents": [
        "2d5311e4e8272fd398fc1cf278f12fd6dee4074b"
      ],
      "author": {
        "name": "David Shwatrz",
        "email": "dshwatrz@gmail.com",
        "time": "Thu Dec 02 09:01:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 06 13:10:11 2010 -0800"
      },
      "message": "Fix a typo in datagram.c and sctp/socket.c.\n\nHi,\nThis patch fixes a typo in net/core/datagram.c and in net/sctp/socket.c\n\nRegards,\nDavid Shwartz\n\nSigned-off-by: David Shwartz \u003cdshwatrz@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d987e5c75107ca7515fa19e857cfa24aab6ec8f",
      "tree": "6392c5f08f0df39d42a079336f6be3960ac404dc",
      "parents": [
        "67286640f638f5ad41a946b9a3dc75327950248f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 09 23:24:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 10 12:12:00 2010 -0800"
      },
      "message": "net: avoid limits overflow\n\nRobin Holt tried to boot a 16TB machine and found some limits were\nreached : sysctl_tcp_mem[2], sysctl_udp_mem[2]\n\nWe can switch infrastructure to use long \"instead\" of \"int\", now\natomic_long_t primitives are available for free.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReported-by: Robin Holt \u003cholt@sgi.com\u003e\nReviewed-by: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21a180cda012e1f93e362dd4a9b0bfd3d8c92940",
      "tree": "0e0d10baa3fdcd8ffbc6881076ff1695808dad9d",
      "parents": [
        "c7d4426a98a5f6654cd0b4b33d9dab2e77192c18",
        "51e97a12bef19b7e43199fc153cf9bd5f2140362"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 04 11:56:38 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 04 11:56:38 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/ipv4/Kconfig\n\tnet/ipv4/tcp_timer.c\n"
    },
    {
      "commit": "9a7241c21b06c3a3f8ebcf3e347bd68556369da7",
      "tree": "25f58652823894713a6c6f388b502002cc8edcd8",
      "parents": [
        "3abcdeda59c1d4cf2bf83311ed2d544355ec7c2d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 22:14:37 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 22:14:37 2010 -0700"
      },
      "message": "sctp: Fix break indentation in sctp_ioctl().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7e0d19aa0fdd22819d35db551bd54c1bcf9c2aa",
      "tree": "3abc10f8a6e3f296fb619077af5f6f16713c62b8",
      "parents": [
        "5b7c84066733c5dfb0e4016d939757b38de189e4"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "dan.j.rosenberg@gmail.com",
        "time": "Fri Oct 01 11:16:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 03 21:58:48 2010 -0700"
      },
      "message": "sctp: prevent reading out-of-bounds memory\n\nTwo user-controlled allocations in SCTP are subsequently dereferenced as\nsockaddr structs, without checking if the dereferenced struct members fall\nbeyond the end of the allocated chunk.  There doesn\u0027t appear to be any\ninformation leakage here based on how these members are used and\nadditional checking, but it\u0027s still worth fixing.\n\n[akpm@linux-foundation.org: remove unfashionable newlines, fix gmail tab-\u003espace conversion]\nSigned-off-by: Dan Rosenberg \u003cdan.j.rosenberg@gmail.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a02cec2155fbea457eca8881870fd2de1a4c4c76",
      "tree": "cfbfc4b32bfe10f9cd803d46c31607d13f1858f5",
      "parents": [
        "6a08d194ee40806e0ccd5f36ed768e64cbfc979f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 22 20:43:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 23 14:33:39 2010 -0700"
      },
      "message": "net: return operator cleanup\n\nChange \"return (EXPR);\" to \"return EXPR;\"\n\nreturn is not a function, parentheses are not required.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65040c33ee8d0199ab7686402bffdbf9e1e26cbe",
      "tree": "4c8a35d0b6da2964a0de8f6668c0f5f47efe2825",
      "parents": [
        "2edae08e5b75269855fef3c74fe4292c066e7c33"
      ],
      "author": {
        "name": "Diego Elio \u0027Flameeyes\u0027 Pettenò",
        "email": "flameeyes@gmail.com",
        "time": "Fri Sep 03 03:47:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 08 13:08:05 2010 -0700"
      },
      "message": "sctp: implement SIOCINQ ioctl() (take 3)\n\nThis simple patch copies the current approach for SIOCINQ ioctl() from DCCP\ninto SCTP so that the userland code working with SCTP can use a similar\ninterface across different protocols to know how much space to allocate for\na buffer.\n\nSigned-off-by: Diego Elio Pettenò \u003cflameeyes@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db40980fcdb560d7992b0511df16cdd3f7e381f3",
      "tree": "337b5c41bd55915a4b894ea6fe09a865e7dcb0e4",
      "parents": [
        "d61702f1273b71c2809365a7806d7fe84fd77f15"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Sep 06 11:13:50 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 06 18:48:45 2010 -0700"
      },
      "message": "net: poll() optimizations\n\nNo need to test twice sk-\u003esk_shutdown \u0026 RCV_SHUTDOWN\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "145ce502e44b57c074c72cfdc855557e19026999",
      "tree": "fd663feae03f5c5f4a31ceecd6a61e790344b8b3",
      "parents": [
        "dee06e4702b5a64b9ca81e650d66223c5b3e7f14"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 24 13:21:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 26 14:11:48 2010 -0700"
      },
      "message": "net/sctp: Use pr_fmt and pr_\u003clevel\u003e\n\nChange SCTP_DEBUG_PRINTK and SCTP_DEBUG_PRINTK_IPADDR to\nuse do { print } while (0) guards.\nAdd SCTP_DEBUG_PRINTK_CONT to fix errors in log when\nlines were continued.\nAdd #define pr_fmt(fmt) KBUILD_MODNAME \": \" fmt\nAdd a missing newline in \"Failed bind hash alloc\"\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3826f1e946e7d2354943232f1457be1455a29e2",
      "tree": "a34055c7de762410b6a10c21ab5e1999fb38803b",
      "parents": [
        "9f977fb7ae9ddf565b4800854212fb9a1ed6c2ea"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Wed May 05 00:27:06 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 15 23:28:40 2010 -0700"
      },
      "message": "net: reserve ports for applications using fixed port numbers\n\n(Dropped the infiniband part, because Tetsuo modified the related code,\nI will send a separate patch for it once this is accepted.)\n\nThis patch introduces /proc/sys/net/ipv4/ip_local_reserved_ports which\nallows users to reserve ports for third-party applications.\n\nThe reserved ports will not be used by automatic port assignments\n(e.g. when calling connect() or bind() with port number 0). Explicit\nport allocation behavior is unchanged.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f5460618405eec8c3300947a499011528a115acd",
      "tree": "19aba5acb6d91d5a20400292aaf1881a6b26c118",
      "parents": [
        "4f70ecca9c57731b4acbe5043eb22e4416bd2368",
        "0e3aef8d09a8c11e3fb83cdcb24b5bc7421b3726"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 03 16:20:44 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 03 16:24:31 2010 -0700"
      },
      "message": "Merge branch \u0027net-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vxy/lksctp-dev\n\nAdd missing linux/vmalloc.h include to net/sctp/probe.c\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ef527377b88ff05fb122a47619ea506c631c914",
      "tree": "2c2e774527d5f591b975834f43e8c6fd12fb38f2",
      "parents": [
        "47d29646a2c1c147d8a7598aeac2c87dd71ed638",
        "1183f3838c588545592c042c0ce15015661ce7f2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 21:43:40 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 22:02:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "43815482370c510c569fd18edb57afcb0fa8cab6",
      "tree": "063efaae3758402b84f056438b704d1de68f7837",
      "parents": [
        "83d7eb2979cd3390c375470225dd2d8f2009bc70"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 29 11:01:49 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 01 15:00:15 2010 -0700"
      },
      "message": "net: sock_def_readable() and friends RCU conversion\n\nsk_callback_lock rwlock actually protects sk-\u003esk_sleep pointer, so we\nneed two atomic operations (and associated dirtying) per incoming\npacket.\n\nRCU conversion is pretty much needed :\n\n1) Add a new structure, called \"struct socket_wq\" to hold all fields\nthat will need rcu_read_lock() protection (currently: a\nwait_queue_head_t and a struct fasync_struct pointer).\n\n[Future patch will add a list anchor for wakeup coalescing]\n\n2) Attach one of such structure to each \"struct socket\" created in\nsock_alloc_inode().\n\n3) Respect RCU grace period when freeing a \"struct socket_wq\"\n\n4) Change sk_sleep pointer in \"struct sock\" by sk_wq, pointer to \"struct\nsocket_wq\"\n\n5) Change sk_sleep() function to use new sk-\u003esk_wq instead of\nsk-\u003esk_sleep\n\n6) Change sk_has_sleeper() to wq_has_sleeper() that must be used inside\na rcu_read_lock() section.\n\n7) Change all sk_has_sleeper() callers to :\n  - Use rcu_read_lock() instead of read_lock(\u0026sk-\u003esk_callback_lock)\n  - Use wq_has_sleeper() to eventually wakeup tasks.\n  - Use rcu_read_unlock() instead of read_unlock(\u0026sk-\u003esk_callback_lock)\n\n8) sock_wake_async() is modified to use rcu protection as well.\n\n9) Exceptions :\n  macvtap, drivers/net/tun.c, af_unix use integrated \"struct socket_wq\"\ninstead of dynamically allocated ones. They dont need rcu freeing.\n\nSome cleanups or followups are probably needed, (possible\nsk_callback_lock conversion to a spinlock for example...).\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a5f4cea74f1397bb29d0bbdabeb05bd05a23a741",
      "tree": "7810a501cb7936897f59970ceb0d1170ba30526a",
      "parents": [
        "83d7eb2979cd3390c375470225dd2d8f2009bc70"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 21:42:42 2010 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 21:42:42 2010 -0400"
      },
      "message": "sctp: Use correct address family in sctp_getsockopt_peer_addrs()\n\nThe function should use the address family of the address when\ntrying to determine the length of the structure.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "81419d862db743fe4450a021893f24bab4698c1d",
      "tree": "01e1624bc38ba93dcc365c4c09e6235fb95c7c9b",
      "parents": [
        "0c42749cffbb4a06be86c5e5db6c7ebad548781f"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Apr 28 08:47:20 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 28 12:16:33 2010 -0700"
      },
      "message": "sctp: per_cpu variables should be in bh_disabled section\n\nSince the change of the atomics to percpu variables, we now\nhave to disable BH in process context when touching percpu variables.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "561b1733a465cf9677356b40c27653dd45f1ac56",
      "tree": "86d6720a6497a0b3faa9685596d4f85d3858b6fe",
      "parents": [
        "8d238b25b1ec22a73b1c2206f111df2faaff8285"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Wed Apr 28 08:47:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 28 12:16:31 2010 -0700"
      },
      "message": "sctp: avoid irq lock inversion while call sk-\u003esk_data_ready()\n\nsk-\u003esk_data_ready() of sctp socket can be called from both BH and non-BH\ncontexts, but the default sk-\u003esk_data_ready(), sock_def_readable(), can\nnot be used in this case. Therefore, we have to make a new function\nsctp_data_ready() to grab sk-\u003esk_data_ready() with BH disabling.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible irq lock inversion dependency detected ]\n2.6.33-rc6 #129\n---------------------------------------------------------\nsctp_darn/1517 just changed the state of lock:\n (clock-AF_INET){++.?..}, at: [\u003cc06aab60\u003e] sock_def_readable+0x20/0x80\nbut this lock took another, SOFTIRQ-unsafe lock in the past:\n (slock-AF_INET){+.-...}\n\nand interrupts could create inverse lock ordering between them.\n\nother info that might help us debug this:\n1 lock held by sctp_darn/1517:\n #0:  (sk_lock-AF_INET){+.+.+.}, at: [\u003ccdfe363d\u003e] sctp_sendmsg+0x23d/0xc00 [sctp]\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c377411f2494a931ff7facdbb3a6839b1266bcf6",
      "tree": "6846cdcec913f50839e3916856f78f7e059ff5fb",
      "parents": [
        "6e7676c1a76aed6e957611d8d7a9e5592e23aeba"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Apr 27 15:13:20 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 27 15:13:20 2010 -0700"
      },
      "message": "net: sk_add_backlog() take rmem_alloc into account\n\nCurrent socket backlog limit is not enough to really stop DDOS attacks,\nbecause user thread spend many time to process a full backlog each\nround, and user might crazy spin on socket lock.\n\nWe should add backlog size and receive_queue size (aka rmem_alloc) to\npace writers, and let user run without being slow down too much.\n\nIntroduce a sk_rcvqueues_full() helper, to avoid taking socket lock in\nstress situations.\n\nUnder huge stress from a multiqueue/RPS enabled NIC, a single flow udp\nreceiver can now process ~200.000 pps (instead of ~100 pps before the\npatch) on a 8 core machine.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa395145165cb06a0d0885221bbe0ce4a564391d",
      "tree": "118b0403621f10db8dc3dbf12079f9af5b19e05d",
      "parents": [
        "ab9304717f7624c41927f442e6b6d418b2d8b3e4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Apr 20 13:03:51 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 20 16:37:13 2010 -0700"
      },
      "message": "net: sk_sleep() helper\n\nDefine a new function to return the waitqueue of a \"struct sock\".\n\nstatic inline wait_queue_head_t *sk_sleep(struct sock *sk)\n{\n\treturn sk-\u003esk_sleep;\n}\n\nChange all read occurrences of sk_sleep by a call to this function.\n\nNeeded for a future RCU conversion. sk_sleep wont be a field directly\navailable.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "b68c92460d380c59891ba97531edbe5b01f5ea0b",
      "tree": "05ebe496fbb01f0277eb7a45aa6c90ffc2268463",
      "parents": [
        "8379d07031e59a5d72bc73a6060c4d63aac956ce"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Tue Mar 30 14:24:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:58:22 2010 -0700"
      },
      "message": "sctp: eliminate useless code\n\nRemove duplicate declaration of symbol: struct hlist_node *node was\nalready declared, the seconds declaration shadows the first one.\n\nCC: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "50b1a782f845140f4138f14a1ce8a4a6dd0cc82f",
      "tree": "3cb1df5d01fb46ca4fef4146dc50eb455643e252",
      "parents": [
        "79545b681961d7001c1f4c3eb9ffb87bed4485db"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Mar 04 18:01:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 05 13:34:01 2010 -0800"
      },
      "message": "sctp: use limited socket backlog\n\nMake sctp adapt to the limited socket backlog change.\n\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09cb47a2c68f9596927bc05dab0453edb35cd32d",
      "tree": "5aad2a10a6ea10d8a80cfffabc63cae42871376a",
      "parents": [
        "17660f81243e998f36257881ac3ae61685bf91c1"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Jan 21 02:43:20 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 21 02:43:20 2010 -0800"
      },
      "message": "net/sctp: Eliminate useless code\n\nThe variable newinet is initialized twice to the same (side effect-free)\nexpression.  Drop one initialization.\n\nA simplified version of the semantic match that finds this problem is:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@forall@\nidexpression *x;\nidentifier f!\u003dERR_PTR;\n@@\n\nx \u003d f(...)\n... when !\u003d x\n(\nx \u003d f(...,\u003c+...x...+\u003e,...)\n|\n* x \u003d f(...)\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ffd32083c849dcf476e56e6c5f728c80797ecdd",
      "tree": "a721db1db6b73c458c3602747d59c27197f655dd",
      "parents": [
        "1f731b63752dac76ff4dbf568a08ff2e3663316f"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Dec 21 14:25:06 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 03 21:25:53 2010 -0800"
      },
      "message": "net/sctp/socket.c: squish warning\n\nnet/sctp/socket.c: In function \u0027sctp_setsockopt_autoclose\u0027:\nnet/sctp/socket.c:2090: warning: comparison is always false due to limited range of data type\n\nCc: Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "810c07194f6ef541625e65b53392e9f605611a1a",
      "tree": "9ba4de19f2762a08ab4853c24feed86b1e373278",
      "parents": [
        "acb3cecdf89f9a9f30bf493f07dc5af333b45f8e"
      ],
      "author": {
        "name": "Andrei Pelinescu-Onciul",
        "email": "andrei@iptel.org",
        "time": "Wed Dec 02 01:16:49 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 02 01:16:49 2009 -0800"
      },
      "message": "sctp: fix sctp_setsockopt_autoclose compile warning\n\nFix the following warning, when building on 64 bits:\n\nnet/sctp/socket.c:2091: warning: large integer implicitly\n                        truncated to unsigned type\n\nSigned-off-by: Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f64f9e719261a87818dd192a3a2352e5b20fbd0f",
      "tree": "b2d5cbaef3df615295f6061d8c4d6a912690556c",
      "parents": [
        "152b6a62aea2d43359dd37004e9c218bf7bdeb3b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "message": "net: Move \u0026\u0026 and || to end of previous line\n\nNot including net/atm/\n\nCompiled tested x86 allyesconfig only\nAdded a \u003e 80 column line or two, which I ignored.\nExisting checkpatch plaints willfully, cheerfully ignored.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6778aab6ccc4b510b4dcfa770d9949b696b4545",
      "tree": "d3aca83fb8994d2efbc5420d68e1d27f1c8c08a7",
      "parents": [
        "d8dd15781dd621c5ceab79083f4c5112787863f5"
      ],
      "author": {
        "name": "Andrei Pelinescu-Onciul",
        "email": "andrei@iptel.org",
        "time": "Mon Nov 23 15:54:01 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:54:01 2009 -0500"
      },
      "message": "sctp: limit maximum autoclose setsockopt value\n\nTo avoid overflowing the maximum timer interval when transforming\nthe  autoclose interval from seconds to jiffies, limit the maximum\nautoclose value to MAX_SCHEDULE_TIMEOUT/HZ.\n\nSigned-off-by: Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "a242b41dedfe0fd51ab1c906daa703c09b196744",
      "tree": "6c52f80cf5a0f8d73fc43d595cacd9d2f0154e3d",
      "parents": [
        "37051f73862d15862aecc08b887b2884137af327"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Nov 23 15:53:58 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:53:58 2009 -0500"
      },
      "message": "sctp: remove deprecated SCTP_GET_*_OLD stuffs\n\nSCTP_GET_*_OLD stuffs are schedlued to be removed.\n\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "37051f73862d15862aecc08b887b2884137af327",
      "tree": "c62999e8365a14ecb5f87a2921bc964bc609b915",
      "parents": [
        "90f2f5318b3a5b0898fef0fec9b91376c7de7a2c"
      ],
      "author": {
        "name": "Andrei Pelinescu-Onciul",
        "email": "andrei@iptel.org",
        "time": "Mon Nov 23 15:53:57 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:53:57 2009 -0500"
      },
      "message": "sctp: allow setting path_maxrxt independent of SPP_PMTUD_ENABLE\n\nSince draft-ietf-tsvwg-sctpsocket-15.txt, setting the\nSPP_MTUD_ENABLE flag when changing pathmaxrxt via the\nSCTP_PEER_ADDR_PARAMS setsockopt is not required any\nlonger.\n\nSigned-off-by: Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "a2bfbc072e279ff81e6b336acff612b9bc2e5281",
      "tree": "89cfe21911e1539e1b7f89d8a10d42abecba2a18",
      "parents": [
        "5c427ff9e4cc61625d48172ea082ae99e21eea6a",
        "82b3cc1a2f5e46300a9dec4a8cc8106dc20a4c23"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 00:05:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 00:05:02 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/can/Kconfig\n"
    },
    {
      "commit": "f9c67811ebc00a42f62f5d542d3abd36bd49ae35",
      "tree": "f58d9f0c0ae23ded2f758b73e2c47a97a25376a3",
      "parents": [
        "409b95aff3583c05ac7a9247fa3d8c9aa7f9cae3"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Nov 11 08:19:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 19:56:51 2009 -0800"
      },
      "message": "sctp: Fix regression introduced by new sctp_connectx api\n\nA new (unrealeased to the user) sctp_connectx api\n\nc6ba68a26645dbc5029a9faa5687ebe6fcfc53e4\n    sctp: support non-blocking version of the new sctp_connectx() API\n\nintroduced a regression cought by the user regression test\nsuite.  In particular, the API requires the user library to\nre-allocate the buffer and could potentially trigger a SIGFAULT.\n\nThis change corrects that regression by passing the original\naddress buffer to the kernel unmodified, but still allows for\na returned association id.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "409b95aff3583c05ac7a9247fa3d8c9aa7f9cae3",
      "tree": "a8cd8135f974b8f1c6ef9d092755e1ac5b190b2f",
      "parents": [
        "d792c1006fe92448217b71513d3955868358271d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Nov 10 08:57:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 19:56:50 2009 -0800"
      },
      "message": "sctp: Set source addresses on the association before adding transports\n\nRecent commit 8da645e101a8c20c6073efda3c7cc74eec01b87f\n\tsctp: Get rid of an extra routing lookup when adding a transport\nintroduced a regression in the connection setup.  The behavior was\n\ndifferent between IPv4 and IPv6.  IPv4 case ended up working because the\nroute lookup routing returned a NULL route, which triggered another\nroute lookup later in the output patch that succeeded.  In the IPv6 case,\na valid route was returned for first call, but we could not find a valid\nsource address at the time since the source addresses were not set on the\nassociation yet.  Thus resulted in a hung connection.\n\nThe solution is to set the source addresses on the association prior to\nadding peers.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c720c7e8383aff1cb219bddf474ed89d850336e3",
      "tree": "4f12337e6690fccced376db9f501eaf98614a65e",
      "parents": [
        "988ade6b8e27e79311812f83a87b5cea11fabcd7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 15 06:30:45 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 18 18:52:53 2009 -0700"
      },
      "message": "inet: rename some inet_sock fields\n\nIn order to have better cache layouts of struct sock (separate zones\nfor rx/tx paths), we need this preliminary patch.\n\nGoal is to transfert fields used at lookup time in the first\nread-mostly cache line (inside struct sock_common) and move sk_refcnt\nto a separate cache line (only written by rx path)\n\nThis patch adds inet_ prefix to daddr, rcv_saddr, dport, num, saddr,\nsport and id fields. This allows a future patch to define these\nfields as macros, like sk_refcnt, without name clashes.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b885787ea4112eaa80945999ea0901bf742707f",
      "tree": "06fc15f8e8083d5652ccb4d06653d9812dce9c0b",
      "parents": [
        "d5e63bded6e819ca77ee1a1d97c783a31f6caf30"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Mon Oct 12 13:26:31 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 12 13:26:31 2009 -0700"
      },
      "message": "net: Generalize socket rx gap / receive queue overflow cmsg\n\nCreate a new socket level option to report number of queue overflows\n\nRecently I augmented the AF_PACKET protocol to report the number of frames lost\non the socket receive queue between any two enqueued frames.  This value was\nexported via a SOL_PACKET level cmsg.  AFter I completed that work it was\nrequested that this feature be generalized so that any datagram oriented socket\ncould make use of this option.  As such I\u0027ve created this patch, It creates a\nnew SOL_SOCKET level option called SO_RXQ_OVFL, which when enabled exports a\nSOL_SOCKET level cmsg that reports the nubmer of times the sk_receive_queue\noverflowed between any two given frames.  It also augments the AF_PACKET\nprotocol to take advantage of this new feature (as it previously did not touch\nsk-\u003esk_drops, which this patch uses to record the overflow count).  Tested\nsuccessfully by me.\n\nNotes:\n\n1) Unlike my previous patch, this patch simply records the sk_drops value, which\nis not a number of drops between packets, but rather a total number of drops.\nDeltas must be computed in user space.\n\n2) While this patch currently works with datagram oriented protocols, it will\nalso be accepted by non-datagram oriented protocols. I\u0027m not sure if thats\nagreeable to everyone, but my argument in favor of doing so is that, for those\nprotocols which aren\u0027t applicable to this option, sk_drops will always be zero,\nand reporting no drops on a receive queue that isn\u0027t used for those\nnon-participating protocols seems reasonable to me.  This also saves us having\nto code in a per-protocol opt in mechanism.\n\n3) This applies cleanly to net-next assuming that commit\n977750076d98c7ff6cbda51858bb5a5894a9d9ab (my af packet cmsg patch) is reverted\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7058842c940ad2c08dd829b21e5c92ebe3b8758",
      "tree": "5fe78d599fc345ca0bcd4b083b79095a54b2921b",
      "parents": [
        "eb1cf0f8f7a9e5a6d573d5bd72c015686a042db0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 30 16:12:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 30 16:12:20 2009 -0700"
      },
      "message": "net: Make setsockopt() optlen be unsigned.\n\nThis provides safety against negative optlen at the type\nlevel instead of depending upon (sometimes non-trivial)\nchecks against this sprinkled all over the the place, in\neach and every implementation.\n\nBased upon work done by Arjan van de Ven and feedback\nfrom Linus Torvalds.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f68b2e05f326971cd76c65aa91a1a41771dd7485",
      "tree": "2940d83f3787570cc030791378ee23b89b941662",
      "parents": [
        "cb95ea32a457871f72752164de8d94fa20f4703c"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "message": "sctp: Fix SCTP_MAXSEG socket option to comply to spec.\n\nWe had a bug that we never stored the user-defined value for\nMAXSEG when setting the value on an association.  Thus future\nPMTU events ended up re-writing the frag point and increasing\nit past user limit.  Additionally, when setting the option on\nthe socket/endpoint, we effect all current associations, which\nis against spec.\n\nNow, we store the user \u0027maxseg\u0027 value along with the computed\n\u0027frag_point\u0027.  We inherit \u0027maxseg\u0027 from the socket at association\ncreation and use it as an upper limit for \u0027frag_point\u0027 when its\nset.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "9c5c62be2f794c7cee533d856f9f34c3cf21ff1b",
      "tree": "e81bcc703cedf4e667b91504b5cf9e8e01ffb6a5",
      "parents": [
        "5d7ff261ef497c62f54c39effc259910a28b313d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Aug 10 13:51:03 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:57 2009 -0400"
      },
      "message": "sctp: Send user messages to the lower layer as one\n\nCurrenlty, sctp breaks up user messages into fragments and\nsends each fragment to the lower layer by itself.  This means\nthat for each fragment we go all the way down the stack\nand back up.  This also discourages bundling of multiple\nfragments when they can fit into a sigle packet (ex: due\nto user setting a low fragmentation threashold).\n\nWe introduce a new command SCTP_CMD_SND_MSG and hand the\nwhole message down state machine.  The state machine and\nthe side-effect parser will cork the queue, add all chunks\nfrom the message to the queue, and then un-cork the queue\nthus causing the chunks to get transmitted.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "bec9640bb0d451813b1bb1f2cc13a5bfb17c3e48",
      "tree": "8c44f18560570c7200eed1a92cd0d9fab6c2a4f2",
      "parents": [
        "af87b823ca2b05257192e8d48dc686db6173d7b2"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jul 30 18:08:28 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:56 2009 -0400"
      },
      "message": "sctp: Disallow new connection on a closing socket\n\nIf a socket has a lot of association that are in the process of\nof being closed/aborted, it is possible for a remote to establish\nnew associations during the time period that the old ones are shutting\ndown.  If this was a result of a close() call, there will be no socket\nand will cause a memory leak.  We\u0027ll prevent this by setting the\nsocket state to CLOSING and disallow new associations when in this state.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "1bc4ee4088c9a502db0e9c87f675e61e57fa1734",
      "tree": "a166f4b7e7aa78fa31431ae6cb060bf4e5d088be",
      "parents": [
        "3c8a9c63d5fd738c261bd0ceece04d9c8357ca13"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sun Jul 05 19:45:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 06 12:47:08 2009 -0700"
      },
      "message": "sctp: fix warning at inet_sock_destruct() while release sctp socket\n\nCommit \u0027net: Move rx skb_orphan call to where needed\u0027 broken sctp protocol\nwith warning at inet_sock_destruct(). Actually, sctp can do this right with\nsctp_sock_rfree_frag() and sctp_skb_set_owner_r_frag() pair.\n\n    sctp_sock_rfree_frag(skb);\n    sctp_skb_set_owner_r_frag(skb, newsk);\n\nThis patch not revert the commit d55d87fdff8252d0e2f7c28c2d443aee17e9d70f,\ninstead remove the sctp_sock_rfree_frag() function.\n\n------------[ cut here ]------------\nWARNING: at net/ipv4/af_inet.c:151 inet_sock_destruct+0xe0/0x142()\nModules linked in: sctp ipv6 dm_mirror dm_region_hash dm_log dm_multipath\nscsi_mod ext3 jbd uhci_hcd ohci_hcd ehci_hcd [last unloaded: scsi_wait_scan]\nPid: 1808, comm: sctp_test Not tainted 2.6.31-rc2 #40\nCall Trace:\n [\u003cc042dd06\u003e] warn_slowpath_common+0x6a/0x81\n [\u003cc064a39a\u003e] ? inet_sock_destruct+0xe0/0x142\n [\u003cc042dd2f\u003e] warn_slowpath_null+0x12/0x15\n [\u003cc064a39a\u003e] inet_sock_destruct+0xe0/0x142\n [\u003cc05fde44\u003e] __sk_free+0x19/0xcc\n [\u003cc05fdf50\u003e] sk_free+0x18/0x1a\n [\u003cca0d14ad\u003e] sctp_close+0x192/0x1a1 [sctp]\n [\u003cc0649f7f\u003e] inet_release+0x47/0x4d\n [\u003cc05fba4d\u003e] sock_release+0x19/0x5e\n [\u003cc05fbab3\u003e] sock_close+0x21/0x25\n [\u003cc049c31b\u003e] __fput+0xde/0x189\n [\u003cc049c3de\u003e] fput+0x18/0x1a\n [\u003cc049988f\u003e] filp_close+0x56/0x60\n [\u003cc042f422\u003e] put_files_struct+0x5d/0xa1\n [\u003cc042f49f\u003e] exit_files+0x39/0x3d\n [\u003cc043086a\u003e] do_exit+0x1a5/0x5dd\n [\u003cc04a86c2\u003e] ? d_kill+0x35/0x3b\n [\u003cc0438fa4\u003e] ? dequeue_signal+0xa6/0x115\n [\u003cc0430d05\u003e] do_group_exit+0x63/0x8a\n [\u003cc0439504\u003e] get_signal_to_deliver+0x2e1/0x2f9\n [\u003cc0401d9e\u003e] do_notify_resume+0x7c/0x6b5\n [\u003cc043f601\u003e] ? autoremove_wake_function+0x0/0x34\n [\u003cc04a864e\u003e] ? __d_free+0x3d/0x40\n [\u003cc04a867b\u003e] ? d_free+0x2a/0x3c\n [\u003cc049ba7e\u003e] ? vfs_write+0x103/0x117\n [\u003cc05fc8fa\u003e] ? sys_socketcall+0x178/0x182\n [\u003cc0402a56\u003e] work_notifysig+0x13/0x19\n---[ end trace 9db92c463e789fba ]---\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31e6d363abcd0d05766c82f1a9c905a4c974a199",
      "tree": "f2b5c46354d95f91e743ae748b8add0de8bffd17",
      "parents": [
        "d3b238a03efd6d644ff93c8b10a1d38a596f2e34"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jun 17 19:05:41 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 18 00:29:12 2009 -0700"
      },
      "message": "net: correct off-by-one write allocations reports\n\ncommit 2b85a34e911bf483c27cfdd124aeb1605145dc80\n(net: No more expensive sock_hold()/sock_put() on each tx)\nchanged initial sk_wmem_alloc value.\n\nWe need to take into account this offset when reporting\nsk_wmem_alloc to user, in PROC_FS files or various\nioctls (SIOCOUTQ/TIOCOUTQ)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b003be39e91a6cd013c9ea580ccc24d1fac9959",
      "tree": "3fc29fa91c80842de9620c7c046d895255878d66",
      "parents": [
        "5c313e9a7773ec4d7ac554e841fba583f7c63aba"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 09 00:22:35 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 09 00:24:07 2009 -0700"
      },
      "message": "sctp: Use frag list abstraction interfaces.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6ba68a26645dbc5029a9faa5687ebe6fcfc53e4",
      "tree": "e47a8f343b7fd0ba0a5d3e49a740d5dbe73e430a",
      "parents": [
        "9919b455fc00c995ef8141848bdc0709ce50bf36"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Jun 01 12:41:15 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Jun 03 09:14:47 2009 -0400"
      },
      "message": "sctp: support non-blocking version of the new sctp_connectx() API\n\nPrior implementation of the new sctp_connectx() call that returns\nan association ID did not work correctly on non-blocking socket.\nThis is because we could not return both a EINPROGRESS error and\nan association id.  This is a new implementation that supports this.\n\nOriginally from Ivan Skytte Jørgensen \u003cisj-sctp@i1.dk\n\nSigned-off-by: Ivan Skytte Jørgensen \u003cisj-sctp@i1.dk\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "5e8f3f703ae4e4af65e2695e486b3cd198328863",
      "tree": "1927b01e884dbd5ddb1d4586ac08e4a14e0601eb",
      "parents": [
        "3bcb1255bae39cae1b4d2660f2b5a6ab2f404c10"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Mar 12 09:49:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 11:37:56 2009 -0700"
      },
      "message": "sctp: simplify sctp listening code\n\nsctp_inet_listen() call is split between UDP and TCP style.  Looking\nat the code, the two functions are almost the same and can be\nmerged into a single helper.  This also fixes a bug that was\nfixed in the UDP function, but missed in the TCP function.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6db93a58f1745cfe1acc2e1a1d68afc3245eced",
      "tree": "b4e88d10bc75fa6565d91202460fb3f0ed5cc7c5",
      "parents": [
        "d212318c9d1b11ff44b57f90b4f9d9c9b31a6ced"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Mon Mar 02 09:46:12 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 22:49:17 2009 -0800"
      },
      "message": "sctp: fix the length check in sctp_getsockopt_maxburst()\n\nThe code in sctp_getsockopt_maxburst() doesn\u0027t allow len to be larger\nthen struct sctp_assoc_value, which is a common case where app writers\njust pass down the sizeof(buf) or something similar.\n\nThis patch fix the problem.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d212318c9d1b11ff44b57f90b4f9d9c9b31a6ced",
      "tree": "f3da90f6ecf7b085e546566503a445df26d91b60",
      "parents": [
        "906f8257eedf64c9f4da0adfacca76d06d8e8cb0"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Mon Mar 02 09:46:11 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 22:49:16 2009 -0800"
      },
      "message": "sctp: remove dup code in net/sctp/socket.c\n\nRemove dup check of \"if (optlen \u003c sizeof(int))\".\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "914e1c8b6980c516667375d3e55f0b6e674c8c58",
      "tree": "d61194143a112ace85f6e6dfc22bc01d7173f62e",
      "parents": [
        "faee47cdbfe8d74a1573c2f81ea6dbb08d735be6"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Feb 13 08:33:44 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 16 00:03:11 2009 -0800"
      },
      "message": "sctp: Inherit all socket options from parent correctly.\n\nDuring peeloff/accept() sctp needs to save the parent socket state\ninto the new socket so that any options set on the parent are\ninherited by the child socket.  This was found when the\nparent/listener socket issues SO_BINDTODEVICE, but the\ndata was misrouted after a route cache flush.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "025dfdafe77f20b3890981a394774baab7b9c827",
      "tree": "c4d514990d7a0673df5d32aa11fded95f9644ff0",
      "parents": [
        "0abb8b6a939b742f273edc68b64dba26c57331bc"
      ],
      "author": {
        "name": "Frederik Schwarzer",
        "email": "schwarzerf@gmail.com",
        "time": "Thu Oct 16 19:02:37 2008 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Jan 06 11:28:06 2009 +0100"
      },
      "message": "trivial: fix then -\u003e than typos in comments and documentation\n\n- (better, more, bigger ...) then -\u003e (...) than\n\nSigned-off-by: Frederik Schwarzer \u003cschwarzerf@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "8510b937ae1e23583abdeb828cad5c518295c61d",
      "tree": "5ef0449bc7673c99a2134d8bba8e4f1dd4c79549",
      "parents": [
        "9fcb95a105758b81ef0131cd18e2db5149f13e95"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:59:03 2008 -0800"
      },
      "message": "sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option\n\nThe latest ietf socket extensions API draft said:\n\n  8.1.21.  Set or Get the SCTP Partial Delivery Point\n\n    Note also that the call will fail if the user attempts to set\n    this value larger than the socket receive buffer size.\n\nThis patch add this validity check for SCTP_PARTIAL_DELIVERY_POINT\nsocket option.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aea3c5c05d2c409e93bfa80dcedc06af7da6c13b",
      "tree": "2ee271efa68ef7677c94b1c9daaa33b9ad6a2531",
      "parents": [
        "ea686a2653c5586b1c7192958b9d521abde66e92"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:57:24 2008 -0800"
      },
      "message": "sctp: Implement socket option SCTP_GET_ASSOC_NUMBER\n\nImplement socket option SCTP_GET_ASSOC_NUMBER of the latest ietf socket\nextensions API draft.\n\n  8.2.5.  Get the Current Number of Associations (SCTP_GET_ASSOC_NUMBER)\n\n   This option gets the current number of associations that are attached\n   to a one-to-many style socket.  The option value is an uint32_t.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea686a2653c5586b1c7192958b9d521abde66e92",
      "tree": "f82a38e2dba44629110f111cd4adf49d3df86d9b",
      "parents": [
        "e89c2095815d82eaa9fb85eff42f8b65b67a59cf"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:56:45 2008 -0800"
      },
      "message": "sctp: Fix a typo in socket.c\n\nJust fix a typo in socket.c.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e89c2095815d82eaa9fb85eff42f8b65b67a59cf",
      "tree": "a6ee89692051c0fa1328b8b79c3b9d7b44dbeab5",
      "parents": [
        "161c8d2f50109b44b664eaf23831ea1587979a61"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 25 16:54:58 2008 -0800"
      },
      "message": "sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance\n\nBrings maxseg socket option set/get into line with the latest ietf socket\nextensions API draft, while maintaining backwards compatibility.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1748376b6626acf59c24e9592ac67b3fe2a0e026",
      "tree": "65a28205daf1ca92e31389440764fc407365014e",
      "parents": [
        "c1b56878fb68e9c14070939ea4537ad4db79ffae"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "message": "net: Use a percpu_counter for sockets_allocated\n\nInstead of using one atomic_t per protocol, use a percpu_counter\nfor \"sockets_allocated\", to reduce cache line contention on\nheavy duty network servers. \n\nNote : We revert commit (248969ae31e1b3276fc4399d67ce29a5d81e6fd9\nnet: af_unix can make unix_nr_socks visbile in /proc),\nsince it is not anymore used after sock_prot_inuse_add() addition\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5bc0b3bfa758e4ae49c94e31c1edb9a5f10a8060",
      "tree": "229c10e9c3db1b0e6b1dc0ac2b3964340d2f1732",
      "parents": [
        "8eecaba900e89643029fd2c253ad8ebb60761165"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Nov 25 13:53:27 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 13:53:27 2008 -0800"
      },
      "message": "net: Make sure BHs are disabled in sock_prot_inuse_add()\n\nprot-\u003edestroy is not called with BH disabled. So we must add\nexplicit BH disable around call to sock_prot_inuse_add()\nin sctp_destroy_sock()\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f756a8c36bf54d0afb1d457082b3e3033d951a7",
      "tree": "33efc99e3df9edf1d777a00913852d24d19b930b",
      "parents": [
        "be77e5930725c3e77bcc0fb1def28e016080d0a1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 23 17:34:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 23 17:34:03 2008 -0800"
      },
      "message": "net: Make sure BHs are disabled in sock_prot_inuse_add()\n\nThe rule of calling sock_prot_inuse_add() is that BHs must\nbe disabled.  Some new calls were added where this was not\ntrue and this tiggers warnings as reported by Ilpo.\n\nFix this by adding explicit BH disabling around those call sites.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a57f7fabd383920585ed8b74eacd117c6551f2d",
      "tree": "893f953e3b4f7cad6a227c5f5dc2209966b2761d",
      "parents": [
        "a8076d8db98de6da61394b2e942320e4612643ac"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 17 02:41:00 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 17 02:41:00 2008 -0800"
      },
      "message": "net: sctp should update its inuse counter\n\nThis patch is a preparation to namespace conversion of /proc/net/protocols\n\nIn order to have relevant information for SCTP protocols, we should use\nsock_prot_inuse_add() to update a (percpu and pernamespace) counter of\ninuse sockets.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52cae8f06babf9eed327479c1aa024ce3732f912",
      "tree": "2ef0dc1e4daf53735681ba7223d40058f1175092",
      "parents": [
        "c226ef9b83694311327f3ab0036c6de9c22e9daf"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Aug 18 10:34:34 2008 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Oct 01 11:33:06 2008 -0400"
      },
      "message": "sctp: try harder to figure out address family when checking wildcards\n\nsctp_is_any() function that is used to check for wildcard addresses\nonly looks at the address itself to determine the address family.\nThis function is used in the API to check the address passed in from\nthe user.  If the user simply zerroes out the sockaddr_storage and\npass that in, we\u0027ll end up failing.  So, let\u0027s try harder to determine\nthe address family by also checking the socket if it\u0027s possible.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "d97240552cd98c4b07322f30f66fd9c3ba4171de",
      "tree": "61a8fd1ace711bcf2c832d0c453d8fbf6f8f3003",
      "parents": [
        "328fc47ea0bcc27d9afa69c3ad6e52431cadd76c"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Aug 27 16:09:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 16:09:49 2008 -0700"
      },
      "message": "sctp: fix random memory dereference with SCTP_HMAC_IDENT option.\n\nThe number of identifiers needs to be checked against the option\nlength.  Also, the identifier index provided needs to be verified\nto make sure that it doesn\u0027t exceed the bounds of the array.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "328fc47ea0bcc27d9afa69c3ad6e52431cadd76c",
      "tree": "5969688468a63ee01db68be4adff671bd9aa85c8",
      "parents": [
        "f2455eb176ac87081bbfc9a44b21c7cd2bc1967e"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Aug 27 16:08:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 16:08:54 2008 -0700"
      },
      "message": "sctp: correct bounds check in sctp_setsockopt_auth_key\n\nThe bonds check to prevent buffer overlflow was not exactly\nright.  It still allowed overflow of up to 8 bytes which is\nsizeof(struct sctp_authkey).\n\nSince optlen is already checked against the size of that struct,\nwe are guaranteed not to cause interger overflow either.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30c2235cbc477d4629983d440cdc4f496fec9246",
      "tree": "c280fcf36c472f1a21a58f74a2dc76dbf337859e",
      "parents": [
        "f410a1fba7afa79d2992620e874a343fdba28332"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Aug 25 15:16:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 25 15:16:19 2008 -0700"
      },
      "message": "sctp: add verification checks to SCTP_AUTH_KEY option\n\nThe structure used for SCTP_AUTH_KEY option contains a\nlength that needs to be verfied to prevent buffer overflow\nconditions.  Spoted by Eugene Teo \u003ceteo@redhat.com\u003e.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e739d1752aca4e8f3e794d431503bfca3162df4",
      "tree": "c5bdef49d12fbd4bb0eae6fca102607346390cb5",
      "parents": [
        "6a55617ed5d1aa62b850de2cf66f5ede2eef4825"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Aug 21 03:34:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 21 03:34:25 2008 -0700"
      },
      "message": "sctp: fix potential panics in the SCTP-AUTH API.\n\nAll of the SCTP-AUTH socket options could cause a panic\nif the extension is disabled and the API is envoked.\n\nAdditionally, there were some additional assumptions that\ncertain pointers would always be valid which may not\nalways be the case.\n\nThis patch hardens the API and address all of the crash\nscenarios.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a677a039be7243357d93502bff2b40850c942e2d",
      "tree": "6cf1669c4752e2527e02f33baa920cd2dfd59117",
      "parents": [
        "6e2c10a12a2170856f5582d62d583cbcd1cb5eaf"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jul 23 21:29:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:27 2008 -0700"
      },
      "message": "flag parameters: socket and socketpair\n\nThis patch adds support for flag values which are ORed to the type passwd\nto socket and socketpair.  The additional code is minimal.  The flag\nvalues in this implementation can and must match the O_* flags.  This\navoids overhead in the conversion.\n\nThe internal functions sock_alloc_fd and sock_map_fd get a new parameters\nand all callers are changed.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003cnetinet/in.h\u003e\n#include \u003csys/socket.h\u003e\n\n#define PORT 57392\n\n/* For Linux these must be the same.  */\n#define SOCK_CLOEXEC O_CLOEXEC\n\nint\nmain (void)\n{\n  int fd;\n  fd \u003d socket (PF_INET, SOCK_STREAM, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"socket(0) failed\");\n      return 1;\n    }\n  int coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if (coe \u0026 FD_CLOEXEC)\n    {\n      puts (\"socket(0) set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  fd \u003d socket (PF_INET, SOCK_STREAM|SOCK_CLOEXEC, 0);\n  if (fd \u003d\u003d -1)\n    {\n      puts (\"socket(SOCK_CLOEXEC) failed\");\n      return 1;\n    }\n  coe \u003d fcntl (fd, F_GETFD);\n  if (coe \u003d\u003d -1)\n    {\n      puts (\"fcntl failed\");\n      return 1;\n    }\n  if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n    {\n      puts (\"socket(SOCK_CLOEXEC) does not set close-on-exec flag\");\n      return 1;\n    }\n  close (fd);\n\n  int fds[2];\n  if (socketpair (PF_UNIX, SOCK_STREAM, 0, fds) \u003d\u003d -1)\n    {\n      puts (\"socketpair(0) failed\");\n      return 1;\n    }\n  for (int i \u003d 0; i \u003c 2; ++i)\n    {\n      coe \u003d fcntl (fds[i], F_GETFD);\n      if (coe \u003d\u003d -1)\n        {\n          puts (\"fcntl failed\");\n          return 1;\n        }\n      if (coe \u0026 FD_CLOEXEC)\n        {\n          printf (\"socketpair(0) set close-on-exec flag for fds[%d]\\n\", i);\n          return 1;\n        }\n      close (fds[i]);\n    }\n\n  if (socketpair (PF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0, fds) \u003d\u003d -1)\n    {\n      puts (\"socketpair(SOCK_CLOEXEC) failed\");\n      return 1;\n    }\n  for (int i \u003d 0; i \u003c 2; ++i)\n    {\n      coe \u003d fcntl (fds[i], F_GETFD);\n      if (coe \u003d\u003d -1)\n        {\n          puts (\"fcntl failed\");\n          return 1;\n        }\n      if ((coe \u0026 FD_CLOEXEC) \u003d\u003d 0)\n        {\n          printf (\"socketpair(SOCK_CLOEXEC) does not set close-on-exec flag for fds[%d]\\n\", i);\n          return 1;\n        }\n      close (fds[i]);\n    }\n\n  puts (\"OK\");\n\n  return 0;\n}\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e54064e0a13b7a7d4a481123c1783f770538e30",
      "tree": "ccd64b852003e7f3869cd24e78381fbba7bae764",
      "parents": [
        "23b29ed80bd7184398317a111dc488605cb66c7f"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jul 18 23:06:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 23:06:32 2008 -0700"
      },
      "message": "sctp: Allow only 1 listening socket with SO_REUSEADDR\n\nWhen multiple socket bind to the same port with SO_REUSEADDR,\nonly 1 can be listining.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23b29ed80bd7184398317a111dc488605cb66c7f",
      "tree": "be2d87726f00ebb21d10fc62c2b4ba557a7392eb",
      "parents": [
        "7dab83de50c7b2b7ceac695a0b56fa6c0f95b0bc"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jul 18 23:06:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 23:06:07 2008 -0700"
      },
      "message": "sctp: Do not leak memory on multiple listen() calls\n\nSCTP permits multiple listen call and on subsequent calls\nwe leak he memory allocated for the crypto transforms.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7dab83de50c7b2b7ceac695a0b56fa6c0f95b0bc",
      "tree": "979c6905f2ef643acccfea9ab9ed926e764e72c8",
      "parents": [
        "6d0ccbac688207ca0616ab5094932af4db4747b3"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jul 18 23:05:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 23:05:40 2008 -0700"
      },
      "message": "sctp: Support ipv6only AF_INET6 sockets.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c52ba170f8167511bdb65b981f4582100c40675",
      "tree": "1dab120003eb696dfb4ca18c40861274a317739d",
      "parents": [
        "cf1100a7a4f2573f50f9a923b53373977328e3c8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jul 16 20:28:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 16 20:28:10 2008 -0700"
      },
      "message": "sock: add net to prot-\u003eenter_memory_pressure callback\n\nThe tcp_enter_memory_pressure calls NET_INC_STATS, but doesn\u0027t\nhave where to get the net from.\n\nI decided to add a sk argument, not the net itself, only to factor\nall the required sock_net(sk) calls inside the enter_memory_pressure \ncallback itself.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ecbed6a41900126e7b9509e12a8d0cc22176e3eb",
      "tree": "4ad958d028412df7049684dbbe686852a6dd792d",
      "parents": [
        "6dbf4bcac98bbc76ef425b3a2b4169f31199f6c7"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Jul 01 20:06:22 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 20:06:22 2008 -0700"
      },
      "message": "sctp: Mark GET_PEER|LOCAL_ADDR_OLD deprecated.\n\nSocket options SCTP_GET_PEER_ADDR_OLD, SCTP_GET_PEER_ADDR_NUM_OLD,\nSCTP_GET_LOCAL_ADDR_OLD, and SCTP_GET_PEER_LOCAL_ADDR_NUM_OLD\nhave been replaced by newer versions a since 2005.  It\u0027s time\nto officially deprecate them and schedule them for removal.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b63ba8a86c85524a8d7e5953b314ce71ebcb9c9",
      "tree": "fe3dc41cbb47ae12b7c3faf6a88b097349e50d5a",
      "parents": [
        "e35c3269edba151e1c703d87068a28ce2cd65bb0",
        "d420895efb259a78dda50f95289571faa6e10e41"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 28 01:19:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 28 01:19:40 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/iwlwifi/iwl4965-base.c\n"
    },
    {
      "commit": "735ce972fbc8a65fb17788debd7bbe7b4383cc62",
      "tree": "b047160a720011021b148350e42d8cc020f06a61",
      "parents": [
        "2645a3c3761ac25498db2e627271016c849c68e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 20 22:04:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 20 22:04:34 2008 -0700"
      },
      "message": "sctp: Make sure N * sizeof(union sctp_addr) does not overflow.\n\nAs noticed by Gabriel Campana, the kmalloc() length arg\npassed in by sctp_getsockopt_local_addrs_old() can overflow\nif -\u003eaddr_num is large enough.\n\nTherefore, enforce an appropriate limit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7d06b2e053d2d536348e3a0f6bb02982a41bea37",
      "tree": "ec6a5c3f448e84cd431a0397b9e2a87ca25aec17",
      "parents": [
        "4ae127d1b6c71f9240dd4245f240e6dd8fc98014"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Sat Jun 14 17:04:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 14 17:04:49 2008 -0700"
      },
      "message": "net: change proto destroy method to return void\n\nChange struct proto destroy function pointer to return void.  Noticed\nby Al Viro.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7bfe8bdb80d5988483b01177b09b9c8d1605dffb",
      "tree": "a18463ac461bd213876771e0b0d2bc3957afc726",
      "parents": [
        "9457afee85e0dfc2b5075a391d6f34463b4c2b90"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Jun 09 15:45:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 09 15:45:05 2008 -0700"
      },
      "message": "sctp: Fix problems with the new SCTP_DELAYED_ACK code\n\nThe default sack frequency should be 2.  Also fix copy/paste\nerror when updating all transports.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88a0a948e752bb9b617a8c55417a9fd9b0257199",
      "tree": "029e51ae711181e0c3e27432f54e9992b998525f",
      "parents": [
        "d364d9276b54af16fcb4db83f1315b620daec102"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri May 09 15:14:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 09 15:14:11 2008 -0700"
      },
      "message": "sctp: Support the new specification of sctp_connectx()\n\nThe specification of sctp_connectx() has been changed to return\nan association id.  We\u0027ve added a new socket option that will\nreturn the association id as the return value from the setsockopt()\ncall.  The library that implements sctp_connectx() interface will\nimplement both socket options.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d364d9276b54af16fcb4db83f1315b620daec102",
      "tree": "1554b1e3f951cdbde62500056f3b26630c8e09ab",
      "parents": [
        "5c5e12898af0978a780991950be12d0d73c02f04"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Fri May 09 15:13:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 09 15:13:26 2008 -0700"
      },
      "message": "sctp: Bring SCTP_DELAYED_ACK socket option into API compliance\n\nBrings delayed_ack socket option set/get into line with the latest ietf\nsocket extensions API draft, while maintaining backwards compatibility.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df39e8ba56a788733d369068c7319e04b1da3cd5",
      "tree": "1e9be853bdb455e341cdbf957656f342cfa2eb9e",
      "parents": [
        "f5572855ec492334d8c3ec0e0e86c31865d5cf07",
        "159d83363b629c91d020734207c1bc788b96af5a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ehea/ehea_main.c\n\tdrivers/net/wireless/iwlwifi/Kconfig\n\tdrivers/net/wireless/rt2x00/rt61pci.c\n\tnet/ipv4/inet_timewait_sock.c\n\tnet/ipv6/raw.c\n\tnet/mac80211/ieee80211_sta.c\n"
    },
    {
      "commit": "9dbc15f055f05393ace4f1733f160ec3d188cf9b",
      "tree": "c3aca36fdb57d7b64aa5d5fdea0b7cf048c88dc7",
      "parents": [
        "30e935600776b45db38238355f0de2b8f72b3847"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Sat Apr 12 18:54:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 12 18:54:24 2008 -0700"
      },
      "message": "[SCTP]: \"list_for_each()\" -\u003e \"list_for_each_entry()\" where appropriate.\n\nReplacing (almost) all invocations of list_for_each() with\nlist_for_each_entry() tightens up the code and allows for the deletion\nof numerous list iterator variables that are no longer necessary.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab38fb04c9f8928cfaf6f4966633d783419906a1",
      "tree": "e7025f9cc3979a509081eb7ad93f5f6a39610c71",
      "parents": [
        "f4ad85ca3ef8a1ede76c5020a28a8f4057b4d24f"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sat Apr 12 18:40:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 12 18:40:06 2008 -0700"
      },
      "message": "[SCTP]: Fix compiler warning about const qualifiers\n\nFix 3 warnings about discarding const qualifiers:\n\nnet/sctp/ulpevent.c:862: warning: passing argument 1 of \u0027sctp_event2skb\u0027 discards qualifiers from pointer target type\nnet/sctp/sm_statefuns.c:4393: warning: passing argument 1 of \u0027SCTP_ASOC\u0027 discards qualifiers from pointer target type\nnet/sctp/socket.c:5874: warning: passing argument 1 of \u0027cmsg_nxthdr\u0027 discards qualifiers from pointer target type\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "935a7f6e4d2f2c69a2d94cbda377684fffbdcb27",
      "tree": "c86bd97a3803713c6979a43181f8ad97c5ef6ce3",
      "parents": [
        "e8c38751be84e2e930642be60331fbb6d3c4becb"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 10 01:58:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:58:06 2008 -0700"
      },
      "message": "SCTP: fix wrong debug counting of bind_bucket\n\nShould not count it if the allocation of the object\nis failed.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bdcde3d71a67e97f25e851f3ca97c9bb5ef03e7f",
      "tree": "eab4a66777582718ffe2eff9038324331106ec18",
      "parents": [
        "60e7663d462af3994f292cb3691ea4f7371a9220"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Mar 28 16:39:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:39:33 2008 -0700"
      },
      "message": "[SOCK]: Drop inuse pcounter from struct proto (v2).\n\nAn uppercut - do not use the pcounter on struct proto.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "80445cfb28a6b093540582b68d9ae928bf34cfe7",
      "tree": "67b3cdcc8af6b7f74c82d70727880f0571f8ecba",
      "parents": [
        "2444844cefd2ce0ac73858cf980de07e33a5dd20"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Sun Mar 23 22:47:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 23 22:47:08 2008 -0700"
      },
      "message": "[SCTP]: Remove redundant wrapper functions.\n\nsctp_datamsg_free and sctp_datamsg_track are just aliases for\nsctp_datamsg_put and sctp_chunk_hold, respectively.\n\nSaves 32 Bytes on x86.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "577f99c1d08cf9cbdafd4e858dd13ff04d855090",
      "tree": "0f726bbda9b18d311d4c95198bbd96cb7ac01db0",
      "parents": [
        "26c0f03f6b77c513cb7bc37b73a06819bdbb791b",
        "2f633928cbba8a5858bb39b11e7219a41b0fbef5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 18 00:37:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 18 00:37:55 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/rt2x00/rt2x00dev.c\n\tnet/8021q/vlan_dev.c\n"
    },
    {
      "commit": "0dc47877a3de00ceadea0005189656ae8dc52669",
      "tree": "7440a87385fe318cb42f0ae161be195f5e967d82",
      "parents": [
        "6387c4bed539539b05fa773cf2ff26529dc3074c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "message": "net: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "219b99a9edab4fdc478c819acb38f4a592dffd7d",
      "tree": "1cb97ab7985ea8944ee618a46b85c96173af3ccd",
      "parents": [
        "140ee9603c753ce11fc3088c1988a77e92183f9b"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Mar 05 13:44:46 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 13:44:46 2008 -0800"
      },
      "message": "[SCTP]: Bring MAX_BURST socket option into ietf API extension compliance\n\nBrings max_burst socket option set/get into line with the latest ietf\nsocket extensions api draft, while maintaining backwards\ncompatibility.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e8616d8e7731b026019d9af7cc9914b8bb42bc7",
      "tree": "ab2e83ac38625159f53eace7c99e2017df523198",
      "parents": [
        "b40db6846847e82daf175641987df29324c425fa"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Feb 27 16:04:52 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Feb 28 16:45:04 2008 -0500"
      },
      "message": "[SCTP]: Update AUTH structures to match declarations in draft-16.\n\nThe new SCTP socket api (draft 16) updates the AUTH API structures.\nWe never exported these since we knew they would change.\nUpdate the rest to match the draft.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "b40db6846847e82daf175641987df29324c425fa",
      "tree": "11f1f64c79c2da85eaf4bbd13828616058ea22af",
      "parents": [
        "15efbe763978d7cc327d824d9e8f8f9e525dd40d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Feb 27 14:40:37 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Feb 28 16:45:01 2008 -0500"
      },
      "message": "[SCTP]: Incorrect length was used in SCTP_*_AUTH_CHUNKS socket option\n\nThe chunks are stored inside a parameter structure in the kernel\nand when we copy them to the user, we need to account for\nthe parameter header.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "5f31886ff03ef68dc078c585fa3a2af9a011a8fa",
      "tree": "8a81e95ab6c83dce5af6853009ef6e4b24e96f97",
      "parents": [
        "c15853f2c1c9baaa27bbc494cd183be96f6d9bb9"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Feb 20 00:23:01 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 20 00:23:01 2008 -0800"
      },
      "message": "[SCTP]: Pick up an orphaned sctp_sockets_allocated counter.\n\nThis counter is currently write-only.\n\nDrawing an analogy with the similar tcp counter, I think\nthat this one should be pointed by the sockets_allocated\nmembers of sctp_prot and sctpv6_prot.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b46ae36de451212d253f31112338517753739191",
      "tree": "eccdb446b5d29a09ad9e8bb28ada1c99361b93ce",
      "parents": [
        "c068be5491924c1c1c37dc046f36976c27bc7bb2"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Jan 28 14:25:36 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Feb 06 21:27:39 2008 -0500"
      },
      "message": "[SCTP]: Set ports in every address returned by sctp_getladdrs()\n\nThomas Dreibholz has reported that port numbers are not filled\nin the results of sctp_getladdrs() when the socket was bound\nto an ephemeral port.  This is only true, if the address was\nnot specified either.  So, fill in the port number correctly.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "0eca8fee0ce3fa0962ac98ab30c10995754a3195",
      "tree": "5ab3ab7fd42ca8df049f5291d5674a8ddf4e3287",
      "parents": [
        "60c778b25972e095df8981dd41e99d161e8738f9"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jan 11 10:12:56 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Feb 05 10:59:30 2008 -0500"
      },
      "message": "[SCTP]: Do not increase rwnd when reading partial notification.\n\nWhen a user reads a partial notification message, do not\nupdate rwnd since notifications must not be counted towards\nreceive window.\n\nTested-by: Oliver Roll \u003cmail@oliroll.de\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "60c778b25972e095df8981dd41e99d161e8738f9",
      "tree": "546a16d6eca1acbf41ee2b772f12ba3f4ffa21e3",
      "parents": [
        "3113e88c3cb3c0a22920b621f8e4d1f2ccc07f1e"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jan 11 09:57:09 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Feb 05 10:59:07 2008 -0500"
      },
      "message": "[SCTP]: Stop claiming that this is a \"reference implementation\"\n\nI was notified by Randy Stewart that lksctp claims to be\n\"the reference implementation\".  First of all, \"the\nrefrence implementation\" was the original implementation\nof SCTP in usersapce written ty Randy and a few others.\nSecond, after looking at the definiton of \u0027reference implementation\u0027,\nwe don\u0027t really meet the requirements.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "3ab224be6d69de912ee21302745ea45a99274dbc",
      "tree": "335dcef1cfacfefe3f36c21d5f144e011bc3bfba",
      "parents": [
        "a06b494b61de44617dd58612164bdde56fca7bfb"
      ],
      "author": {
        "name": "Hideo Aoki",
        "email": "haoki@redhat.com",
        "time": "Mon Dec 31 00:11:19 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:18 2008 -0800"
      },
      "message": "[NET] CORE: Introducing new memory accounting interface.\n\nThis patch introduces new memory accounting functions for each network\nprotocol. Most of them are renamed from memory accounting functions\nfor stream protocols. At the same time, some stream memory accounting\nfunctions are removed since other functions do same thing.\n\nRenaming:\n\tsk_stream_free_skb()\t\t-\u003e\tsk_wmem_free_skb()\n\t__sk_stream_mem_reclaim()\t-\u003e\t__sk_mem_reclaim()\n\tsk_stream_mem_reclaim()\t\t-\u003e\tsk_mem_reclaim()\n\tsk_stream_mem_schedule \t\t-\u003e    \t__sk_mem_schedule()\n\tsk_stream_pages()      \t\t-\u003e\tsk_mem_pages()\n\tsk_stream_rmem_schedule()\t-\u003e\tsk_rmem_schedule()\n\tsk_stream_wmem_schedule()\t-\u003e\tsk_wmem_schedule()\n\tsk_charge_skb()\t\t\t-\u003e\tsk_mem_charge()\n\nRemoveing\n\tsk_stream_rfree():\tconsolidates into sock_rfree()\n\tsk_stream_set_owner_r(): consolidates into skb_set_owner_r()\n\tsk_stream_mem_schedule()\n\nThe following functions are added.\n    \tsk_has_account(): check if the protocol supports accounting\n\tsk_mem_uncharge(): do the opposite of sk_mem_charge()\n\nIn addition, to achieve consolidation, updating sk_wmem_queued is\nremoved from sk_mem_charge().\n\nNext, to consolidate memory accounting functions, this patch adds\nmemory accounting calls to network core functions. Moreover, present\nmemory accounting call is renamed to new accounting call.\n\nFinally we replace present memory accounting calls with new interface\nin TCP and SCTP.\n\nSigned-off-by: Takahiro Yasui \u003ctyasui@redhat.com\u003e\nSigned-off-by: Hideo Aoki \u003chaoki@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f57d96b2e92d209ab3991bba9a44e0d6ef7614a8",
      "tree": "bfd82e031bd1842d0efc60beb893947d9ee95ccc",
      "parents": [
        "a08de64d074b36a56ee3bb985cd171281db78e96"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Dec 20 14:12:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:59:24 2008 -0800"
      },
      "message": "[SCTP]: Change use_as_src into a full address state\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d8ad9d7c4bfe79bc91b7fc419ecfb9dcdfe6a51",
      "tree": "4b655c4b898e634f39fd170eeb8d06f45b240660",
      "parents": [
        "ce865a61c810c971b47f57c729ec6e9b2d522d94"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 26 20:10:50 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:03 2008 -0800"
      },
      "message": "[NET]: Name magic constants in sock_wake_async()\n\nThe sock_wake_async() performs a bit different actions\ndepending on \"how\" argument. Unfortunately this argument\nony has numerical magic values.\n\nI propose to give names to their constants to help people\nreading this function callers understand what\u0027s going on\nwithout looking into this function all the time.\n\nI suppose this is 2.6.25 material, but if it\u0027s not (or the\nnaming seems poor/bad/awful), I can rework it against the\ncurrent net-2.6 tree.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e71a11c9f3c09a01fcb445772ffd61b140f2479",
      "tree": "a0fb2c002d472252ea060c88f8dfda6ddb23b3fc",
      "parents": [
        "f26f7c480555812ca7c4037e0a50fa54afe2cb4a"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Dec 06 22:50:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 07 01:07:49 2007 -0800"
      },
      "message": "[SCTP]: Fix the bind_addr info during migration.\n\nDuring accept/migrate the code attempts to copy the addresses from\nthe parent endpoint to the new endpoint.   However, if the parent\nwas bound to a wildcard address, then we end up pointlessly copying\nall of the current addresses on the system.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f26f7c480555812ca7c4037e0a50fa54afe2cb4a",
      "tree": "1418b99033d50241b8f866124b0974e7adb16449",
      "parents": [
        "56c99d0415e8b778c200f115b198c126243ec351"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Dec 06 22:50:27 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 07 01:07:45 2007 -0800"
      },
      "message": "[SCTP]: Add bind hash locking to the migrate code\n\nSCTP accept code tries to add a newliy created socket\nto a bind bucket without holding a lock.   On a really\nbusy system, that can causes slab corruptions.\nAdd a lock around this code.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d970dbf8455eb1b8cebd3cde6e18f73dd1b3ce38",
      "tree": "e7866d392c3654a379492ca78249231be47401a4",
      "parents": [
        "123ed979eaa8de0dd2422862d247469eda0bd645"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Nov 09 11:43:40 2007 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Nov 09 11:43:40 2007 -0500"
      },
      "message": "SCTP: Convert custom hash lists to use hlist.\n\nConvert the custom hash list traversals to use hlist functions.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "0ed90fb0f668fd07f14ae2007a809e8b26cd27a6",
      "tree": "114e48301b89a8e82f7238d8b691880607842947",
      "parents": [
        "b6157d8e03e1e780660a328f7183bcbfa4a93a19"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Oct 24 16:10:00 2007 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Nov 07 11:39:27 2007 -0500"
      },
      "message": "SCTP: Update RCU handling during the ADD-IP case\n\nAfter learning more about rcu, it looks like the ADD-IP hadling\ndoesn\u0027t need to call call_rcu_bh.  All the rcu critical sections\nuse rcu_read_lock, so using call_rcu_bh is wrong here.\nNow, restore the local_bh_disable() code blocks and use normal\ncall_rcu() calls.  Also restore the missing return statement.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "8295b6d9e623879344ed0ca7565336e4fd698e42",
      "tree": "f80798af3cbd0a4006325037313a195f410dcd23",
      "parents": [
        "c5a432f1a18b4b2efe691dd6bbb30d86a281f783"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 05 23:40:28 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 07 04:09:00 2007 -0800"
      },
      "message": "[SCTP]: Use the {DEFINE|REF}_PROTO_INUSE infrastructure\n\nTrivial patch to make \"sctcp,sctpv6\" protocols uses the fast \"inuse\nsockets\" infrastructure\n\nEach protocol use then a static percpu var, instead of a dynamic one.\nThis saves some ram and some cpu cycles\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "411223c01a51163e995dbc2679bf8e963a136a5f",
      "tree": "d482cfd94bf1f4e36035d7f00d6160d9dc5f74d6",
      "parents": [
        "47063d6b11fdeb166a323315a9e19f565b73d352"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 14 19:21:20 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 14 12:41:51 2007 -0700"
      },
      "message": "fix breakage in sctp getsockopt\n\ncopy_to_user() into on-stack array\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "227b60f5102cda4e4ab792b526a59c8cb20cd9f8",
      "tree": "2c9e372601ba794894833b0618bc531a9f5d57c4",
      "parents": [
        "06393009000779b00a558fd2f280882cc7dc2008"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Oct 10 17:30:46 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 17:30:46 2007 -0700"
      },
      "message": "[INET]: local port range robustness\n\nExpansion of original idea from Denis V. Lunev \u003cden@openvz.org\u003e\n\nAdd robustness and locking to the local_port_range sysctl.\n1. Enforce that low \u003c high when setting.\n2. Use seqlock to ensure atomic update.\n\nThe locking might seem like overkill, but there are\ncases where sysadmin might want to change value in the\nmiddle of a DoS attack.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "06393009000779b00a558fd2f280882cc7dc2008"
}
