)]}'
{
  "log": [
    {
      "commit": "d0b093a8b5ae34ee8be1f7e0dd197fe4788fa1d5",
      "tree": "deaed4192d440b6afb7470b0c36e69d9d65dd119",
      "parents": [
        "3e72b810e30cdf4655279dd767eb798ac7a8fe5e",
        "5c828713358cb9df8aa174371edcbbb62203a490"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:50:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:50:22 2009 -0800"
      },
      "message": "Merge branch \u0027core-printk-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-printk-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ratelimit: Make suppressed output messages more useful\n  printk: Remove ratelimit.h from kernel.h\n  ratelimit: Fix/allow use in atomic contexts\n  ratelimit: Use per ratelimit context locking\n"
    },
    {
      "commit": "29e553631b2a0d4eebd23db630572e1027a9967a",
      "tree": "a891e02cc245ac9c14dc47528120e262d0298698",
      "parents": [
        "ed9fd93e9a0c327e5d02313ba6e233c8e76da118",
        "827d42c9ac91ddd728e4f4a31fefb906ef2ceff7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 30 16:47:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 30 16:47:16 2009 -0800"
      },
      "message": "Merge branch \u0027security\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\n* \u0027security\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6:\n  mac80211: fix spurious delBA handling\n  mac80211: fix two remote exploits\n"
    },
    {
      "commit": "cd79bf7b1c061752dbee723bccf60c85d6c2d45d",
      "tree": "bc892e172aa64aa80b087767dfce767559ae4795",
      "parents": [
        "d0964c37b539c2b76752b1ff8b0a618c5f82f077",
        "0cae200eec6330cd2c20b24279597be1da50dc93"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 30 14:01:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 30 14:01:36 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (42 commits)\n  b44: Fix wedge when using netconsole.\n  wan: cosa: drop chan-\u003ewsem on error path\n  ep93xx-eth: check for zero MAC address on probe, not on device open\n  NET: smc91x: Fix irq flags\n  smsc9420: prevent BUG() if ethtool is called with interface down\n  r8169: restore mac addr in rtl8169_remove_one and rtl_shutdown\n  ipv4: additional update of dev_net(dev) to struct *net in ip_fragment.c, NULL ptr OOPS\n  e100: Use pci pool to work around GFP_ATOMIC order 5 memory allocation failure\n  sctp: on T3_RTX retransmit all the in-flight chunks\n  pktgen: Fix netdevice unregister\n  macvlan: fix gso_max_size setting\n  rfkill: fix miscdev ops\n  ath9k: set ps_default as false\n  hso: fix soft-lockup\n  hso: fix debug routines\n  pktgen: Fix device name compares\n  stmmac: do not fail when the timer cannot be used.\n  stmmac: fixed a compilation error when use the external timer\n  netfilter: xt_limit: fix invalid return code in limit_mt_check()\n  Au1x00: fix crash when trying register_netdev()\n  ...\n"
    },
    {
      "commit": "827d42c9ac91ddd728e4f4a31fefb906ef2ceff7",
      "tree": "e29371d79d63d0a3ec2cb6d010b71147853fc771",
      "parents": [
        "4253119acf412fd686ef4bd8749b5a4d70ea3a51"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Nov 22 12:28:41 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 30 13:55:51 2009 -0500"
      },
      "message": "mac80211: fix spurious delBA handling\n\nLennert Buytenhek noticed that delBA handling in mac80211\nwas broken and has remotely triggerable problems, some of\nwhich are due to some code shuffling I did that ended up\nchanging the order in which things were done -- this was\n\n  commit d75636ef9c1af224f1097941879d5a8db7cd04e5\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Tue Feb 10 21:25:53 2009 +0100\n\n    mac80211: RX aggregation: clean up stop session\n\nand other parts were already present in the original\n\n  commit d92684e66091c0f0101819619b315b4bb8b5bcc5\n  Author: Ron Rindjunsky \u003cron.rindjunsky@intel.com\u003e\n  Date:   Mon Jan 28 14:07:22 2008 +0200\n\n      mac80211: A-MPDU Tx add delBA from recipient support\n\nThe first problem is that I moved a BUG_ON before various\nchecks -- thereby making it possible to hit. As the comment\nindicates, the BUG_ON can be removed since the ampdu_action\ncallback must already exist when the state is !\u003d IDLE.\n\nThe second problem isn\u0027t easily exploitable but there\u0027s a\nrace condition due to unconditionally setting the state to\nOPERATIONAL when a delBA frame is received, even when no\naggregation session was ever initiated. All the drivers\naccept stopping the session even then, but that opens a\nrace window where crashes could happen before the driver\naccepts it. Right now, a WARN_ON may happen with non-HT\ndrivers, while the race opens only for HT drivers.\n\nFor this case, there are two things necessary to fix it:\n 1) don\u0027t process spurious delBA frames, and be more careful\n    about the session state; don\u0027t drop the lock\n\n 2) HT drivers need to be prepared to handle a session stop\n    even before the session was really started -- this is\n    true for all drivers (that support aggregation) but\n    iwlwifi which can be fixed easily. The other HT drivers\n    (ath9k and ar9170) are behaving properly already.\n\nReported-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4253119acf412fd686ef4bd8749b5a4d70ea3a51",
      "tree": "44dc3e4ea5a6c2eb21a0e0c04de1c04e1662549d",
      "parents": [
        "3e9848403ad59c53b31facb30b43ca80135ae0b9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Nov 20 09:15:51 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 30 13:52:21 2009 -0500"
      },
      "message": "mac80211: fix two remote exploits\n\nLennert Buytenhek noticed a remotely triggerable problem\nin mac80211, which is due to some code shuffling I did\nthat ended up changing the order in which things were\ndone -- this was in\n\n  commit d75636ef9c1af224f1097941879d5a8db7cd04e5\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Tue Feb 10 21:25:53 2009 +0100\n\n    mac80211: RX aggregation: clean up stop session\n\nThe problem is that the BUG_ON moved before the various\nchecks, and as such can be triggered.\n\nAs the comment indicates, the BUG_ON can be removed since\nthe ampdu_action callback must already exist when the\nstate is OPERATIONAL.\n\nA similar code path leads to a WARN_ON in\nieee80211_stop_tx_ba_session, which can also be removed.\n\nCc: stable@kernel.org [2.6.29+]\nCc: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bbf31bf18d34caa87dd01f08bf713635593697f2",
      "tree": "715a876da3cd826c701c7b22c8c4add9cf99dba2",
      "parents": [
        "98468efddb101f8a29af974101c17ba513b07be1"
      ],
      "author": {
        "name": "David Ford",
        "email": "david@blue-labs.org",
        "time": "Sun Nov 29 23:02:22 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 23:02:22 2009 -0800"
      },
      "message": "ipv4: additional update of dev_net(dev) to struct *net in ip_fragment.c, NULL ptr OOPS\n\nipv4 ip_frag_reasm(), fully replace \u0027dev_net(dev)\u0027 with \u0027net\u0027, defined\npreviously patched into 2.6.29.\n\nBetween 2.6.28.10 and 2.6.29, net/ipv4/ip_fragment.c was patched,\nchanging from dev_net(dev) to container_of(...).  Unfortunately the goto\nsection (out_fail) on oversized packets inside ip_frag_reasm() didn\u0027t\nget touched up as well.  Oversized IP packets cause a NULL pointer\ndereference and immediate hang.\n\nI discovered this running openvasd and my previous email on this is\ntitled:  NULL pointer dereference at 2.6.32-rc8:net/ipv4/ip_fragment.c:566\n\nSigned-off-by: David Ford \u003cdavid@blue-labs.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5fdd4baef6195a1f2960e901c8877e2105f832ca",
      "tree": "198a3f2df2bea3c5239c95957e21f3680908ddf6",
      "parents": [
        "3e9848403ad59c53b31facb30b43ca80135ae0b9"
      ],
      "author": {
        "name": "Andrei Pelinescu-Onciul",
        "email": "andrei@iptel.org",
        "time": "Sun Nov 29 00:14:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 00:14:02 2009 -0800"
      },
      "message": "sctp: on T3_RTX retransmit all the in-flight chunks\n\nWhen retransmitting due to T3 timeout, retransmit all the\nin-flight chunks for the corresponding  transport/path, including\nchunks sent less then 1 rto ago.\nThis is the correct behaviour according to rfc4960 section 6.3.3\nE3 and\n\"Note: Any DATA chunks that were sent to the address for which the\n T3-rtx timer expired but did not fit in one MTU (rule E3 above)\n should be marked for retransmission and sent as soon as cwnd\n allows (normally, when a SACK arrives). \".\n\nThis fixes problems when more then one path is present and the T3\nretransmission of the first chunk that timeouts stops the T3 timer\nfor the initial active path, leaving all the other in-flight\nchunks waiting forever or until a new chunk is transmitted on the\nsame path and timeouts (and this will happen only if the cwnd\nallows sending new chunks, but since cwnd was dropped to MTU by\nthe timeout \u003d\u003e it will wait until the first heartbeat).\n\nExample: 10 packets in flight, sent at 0.1 s intervals on the\nprimary path. The primary path is down and the first packet\ntimeouts. The first packet is retransmitted on another path, the\nT3 timer for the primary path is stopped and cwnd is set to MTU.\nAll the other 9 in-flight packets will not be retransmitted\n(unless more new packets are sent on the primary path which depend\non cwnd allowing it, and even in this case the 9 packets will be\nretransmitted only after a new packet timeouts which even in the\nbest case would be more then RTO).\n\nThis commit reverts d0ce92910bc04e107b2f3f2048f07e94f570035d and\nalso removes the now unused transport-\u003elast_rto, introduced in\n b6157d8e03e1e780660a328f7183bcbfa4a93a19.\n\np.s  The problem is not only when multiple paths are there.  It\ncan happen in a single homed environment.  If the application\nstops sending data, it possible to have a hung association.\n\nSigned-off-by: Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e9848403ad59c53b31facb30b43ca80135ae0b9",
      "tree": "ec5d47edd7bc85509d3c8b5b593d12a2e05c3969",
      "parents": [
        "8c2acc53fd7987493f11640e266cf7130591e764"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 24 14:50:53 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 24 14:50:53 2009 -0800"
      },
      "message": "pktgen: Fix netdevice unregister\n\nWhen multi queue compatable names are used by pktgen (eg eth0@0),\nwe currently cannot unload a NIC driver if one of its device\nis currently in use.\n\nAllow pktgen_find_dev() to find pktgen devices by their suffix (netdev name)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b5b5150977cdfb7173f4468ccd30f9b4a981b902",
      "tree": "27d477910d630a027c0b447a58ae61b1c57dbca5",
      "parents": [
        "dcfcb256cc23c4436691b0fe677275306699d6a1",
        "45ba564d765d6165330e9bb14a197bdd348c114d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 23 14:01:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 23 14:01:47 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "45ba564d765d6165330e9bb14a197bdd348c114d",
      "tree": "3f1cb8b5349b04d449e3074da177e6eda82a3257",
      "parents": [
        "54ab040d24904d1fa2c0a6a27936b7c56a4efb24"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Nov 23 11:27:30 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 23 16:23:10 2009 -0500"
      },
      "message": "rfkill: fix miscdev ops\n\nThe /dev/rfkill ops don\u0027t refer to the module,\nso it is possible to unload the module while\nfile descriptors are open. Fix this oversight.\n\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "593f63b0be70762bd4354bde147b8e169c5a2f57",
      "tree": "1427512bd5c5124f1ca91d5cae2be26193e987d1",
      "parents": [
        "73cfe264c27fb50d4592ef1580486bea319443ac"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 23 01:44:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 23 10:39:35 2009 -0800"
      },
      "message": "pktgen: Fix device name compares\n\nCommit e6fce5b916cd7f7f7 (pktgen: multiqueue etc.) tried to relax\nthe pktgen restriction of one device per kernel thread, adding a \u0027@\u0027\ntag to device names.\n\nProblem is we dont perform check on full pktgen device name.\nThis allows adding many time same \u0027device\u0027 to pktgen thread\n\n pgset \"add_device eth0@0\"\n\none session later :\n\n pgset \"add_device eth0@0\"\n\n(This doesnt find previous device)\n\nThis consumes ~1.5 MBytes of vmalloc memory per round and also triggers\nthis warning :\n\n[  673.186380] proc_dir_entry \u0027pktgen/eth0@0\u0027 already registered\n[  673.186383] Modules linked in: pktgen ixgbe ehci_hcd psmouse mdio mousedev evdev [last unloaded: pktgen]\n[  673.186406] Pid: 6219, comm: bash Tainted: G        W  2.6.32-rc7-03302-g41cec6f-dirty #16\n[  673.186410] Call Trace:\n[  673.186417]  [\u003cffffffff8104a29b\u003e] warn_slowpath_common+0x7b/0xc0\n[  673.186422]  [\u003cffffffff8104a341\u003e] warn_slowpath_fmt+0x41/0x50\n[  673.186426]  [\u003cffffffff8114e789\u003e] proc_register+0x109/0x210\n[  673.186433]  [\u003cffffffff8100bf2e\u003e] ? apic_timer_interrupt+0xe/0x20\n[  673.186438]  [\u003cffffffff8114e905\u003e] proc_create_data+0x75/0xd0\n[  673.186444]  [\u003cffffffffa006ad38\u003e] pktgen_thread_write+0x568/0x640 [pktgen]\n[  673.186449]  [\u003cffffffffa006a7d0\u003e] ? pktgen_thread_write+0x0/0x640 [pktgen]\n[  673.186453]  [\u003cffffffff81149144\u003e] proc_reg_write+0x84/0xc0\n[  673.186458]  [\u003cffffffff810f5a58\u003e] vfs_write+0xb8/0x180\n[  673.186463]  [\u003cffffffff810f5c11\u003e] sys_write+0x51/0x90\n[  673.186468]  [\u003cffffffff8100b51b\u003e] system_call_fastpath+0x16/0x1b\n[  673.186470] ---[ end trace ccbb991b0a8d994d ]---\n\nSolution to this problem is to use a odevname field (includes @ tag and suffix),\ninstead of using netdevice name.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Robert Olsson \u003crobert.olsson@its.uu.se\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73570314e4fa1605189a32c493fd15eebdc44863",
      "tree": "7d36ef1cee1177593b1a45b7619170b5bfa51298",
      "parents": [
        "63edaf647607795a065e6956a79c47f500dc8447",
        "8fa539bd911e8a7faa7cd77b5192229c9666d9b8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 23 09:52:51 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 23 09:52:51 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "8fa539bd911e8a7faa7cd77b5192229c9666d9b8",
      "tree": "9019a89aa1b860ca52eae27d0e048aab752a1177",
      "parents": [
        "7378396cd172cc058fa62220c6486419046c4e0c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 23 13:37:23 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 23 13:37:23 2009 +0100"
      },
      "message": "netfilter: xt_limit: fix invalid return code in limit_mt_check()\n\nCommit acc738fe (netfilter: xtables: avoid pointer to self) introduced\nan invalid return value in limit_mt_check().\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "e6236f781cc7777a2e74d256c478bb07496f35ec",
      "tree": "559a5816b803ec3f86dae82bdb9e5d3f9c20deee",
      "parents": [
        "308efab5e231d1510cd35931d87629bf5171caae",
        "1e360a60b24ad8f8685af66fa6de10ce46693a4b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 19 13:43:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 19 13:43:19 2009 -0800"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  SUNRPC: Address buffer overrun in rpc_uaddr2sockaddr()\n  NFSv4: Fix a cache validation bug which causes getcwd() to return ENOENT\n"
    },
    {
      "commit": "6440fe059ee8b49b548c8c2c1447530075d07e10",
      "tree": "e3fcac4c384c47d6e279236fbcd25b3166482e2e",
      "parents": [
        "d667b9cfd09a2ca61f74a9edc73d08d2ad0d14da"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Nov 19 04:59:05 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 19 13:16:31 2009 -0800"
      },
      "message": "netfilter: nf_log: fix sleeping function called from invalid context in seq_show()\n\n[  171.925285] BUG: sleeping function called from invalid context at kernel/mutex.c:280\n[  171.925296] in_atomic(): 1, irqs_disabled(): 0, pid: 671, name: grep\n[  171.925306] 2 locks held by grep/671:\n[  171.925312]  #0:  (\u0026p-\u003elock){+.+.+.}, at: [\u003cc10b8acd\u003e] seq_read+0x25/0x36c\n[  171.925340]  #1:  (rcu_read_lock){.+.+..}, at: [\u003cc1391dac\u003e] seq_start+0x0/0x44\n[  171.925372] Pid: 671, comm: grep Not tainted 2.6.31.6-4-netbook #3\n[  171.925380] Call Trace:\n[  171.925398]  [\u003cc105104e\u003e] ? __debug_show_held_locks+0x1e/0x20\n[  171.925414]  [\u003cc10264ac\u003e] __might_sleep+0xfb/0x102\n[  171.925430]  [\u003cc1461521\u003e] mutex_lock_nested+0x1c/0x2ad\n[  171.925444]  [\u003cc1391c9e\u003e] seq_show+0x74/0x127\n[  171.925456]  [\u003cc10b8c5c\u003e] seq_read+0x1b4/0x36c\n[  171.925469]  [\u003cc10b8aa8\u003e] ? seq_read+0x0/0x36c\n[  171.925483]  [\u003cc10d5c8e\u003e] proc_reg_read+0x60/0x74\n[  171.925496]  [\u003cc10d5c2e\u003e] ? proc_reg_read+0x0/0x74\n[  171.925510]  [\u003cc10a4468\u003e] vfs_read+0x87/0x110\n[  171.925523]  [\u003cc10a458a\u003e] sys_read+0x3b/0x60\n[  171.925538]  [\u003cc1002a49\u003e] syscall_call+0x7/0xb\n\nFix it by replacing RCU with nf_log_mutex.\n\nReported-by: \"Yin, Kangkai\" \u003ckangkai.yin@intel.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d667b9cfd09a2ca61f74a9edc73d08d2ad0d14da",
      "tree": "4052d37435e9d46a29261151601a5d24dba059cb",
      "parents": [
        "2b1c8b0f925c3f5943cf95d263d72927baae88e7"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Nov 19 04:59:03 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 19 13:16:26 2009 -0800"
      },
      "message": "netfilter: xt_osf: fix xt_osf_remove_callback() return value\n\nReturn a negative error value.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ceb99fe071eb688255798d89be337affffa2b103",
      "tree": "443cdf6d6fffab53db16006e44fd6506d814fd86",
      "parents": [
        "8ade00824607fcfa8842572012d4393b40a74a94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Nov 19 14:29:39 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 19 11:08:39 2009 -0500"
      },
      "message": "mac80211: fix resume\n\nWhen mac80211 resumes, it currently first sets suspended\nto false so the driver can start doing things and we can\nreceive frames.\n\nHowever, if we actually receive frames then it can end\nup starting some work which adds timers and then later\nruns into a BUG_ON in the timer code because it tries\nadd_timer() on a pending timer.\n\nFix this by keeping track of the resuming process by\nintroducing a new variable \u0027resuming\u0027 which gets set to\ntrue early on instead of setting \u0027suspended\u0027 to false,\nand allow queueing work but not receiving frames while\nresuming.\n\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "486bfe5c7ca6184f35b93b9f2bf3fa3baa1b65e4",
      "tree": "3cec2570aca8ec88da087398d0bdd52054dfa697",
      "parents": [
        "5cbb0601bfddfc55d6ea409651313c13e3d6e90a",
        "70e3bb504ccfe6ba725ab120bdb516d205d834f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 18 14:54:45 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 18 14:54:45 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (42 commits)\n  cxgb3: fix premature page unmap\n  ibm_newemac: Fix EMACx_TRTR[TRT] bit shifts\n  vlan: Fix register_vlan_dev() error path\n  gro: Fix illegal merging of trailer trash\n  sungem: Fix Serdes detection.\n  net: fix mdio section mismatch warning\n  ppp: fix BUG on non-linear SKB (multilink receive)\n  ixgbe: Fixing EEH handler to handle more than one error\n  net: Fix the rollback test in dev_change_name()\n  Revert \"isdn: isdn_ppp: Use SKB list facilities instead of home-grown implementation.\"\n  TI Davinci EMAC : Fix Console Hang when bringing the interface down\n  smsc911x: Fix Console Hang when bringing the interface down.\n  mISDN: fix error return in HFCmulti_init()\n  forcedeth: mac address fix\n  r6040: fix version printing\n  Bluetooth: Fix regression with L2CAP configuration in Basic Mode\n  Bluetooth: Select Basic Mode as default for SOCK_SEQPACKET\n  Bluetooth: Set general bonding security for ACL by default\n  r8169: Fix receive buffer length when MTU is between 1515 and 1536\n  can: add the missing netlink get_xstats_size callback\n  ...\n"
    },
    {
      "commit": "8ade00824607fcfa8842572012d4393b40a74a94",
      "tree": "e88b9ce6d6743294e5287d6c3729bbb215cabb3e",
      "parents": [
        "70e3bb504ccfe6ba725ab120bdb516d205d834f9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 18 17:15:06 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 18 17:01:47 2009 -0500"
      },
      "message": "mac80211: fix addba timer (again...)\n\ncommit 2171abc58644e09dbba546d91366b12743115396\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Thu Oct 29 08:34:00 2009 +0100\n\n      mac80211: fix addba timer\n\nleft a problem in there, even if the timer was\nnever started it could be deleted and then added.\n\nLinus pointed out that del_timer_sync() isn\u0027t\nactually needed if we make the timer able to\ndeal with no longer being needed when it gets\nqueued _while_ we\u0027re in the locked section that\nalso deletes it. For that the timer function only\nneeds to check the HT_ADDBA_RECEIVED_MSK bit as\nwell as the HT_ADDBA_REQUESTED_MSK bit, only if\nthe former is clear should it do anything.\n\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6b863d1d3239eff0f45c2e6e672f5b56db828db0",
      "tree": "8384f6f29891d684725015e1dad5a96e6d9fb8fc",
      "parents": [
        "69c0cab120a85471054614418b447349caba22d7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 17 06:45:04 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 06:45:04 2009 -0800"
      },
      "message": "vlan: Fix register_vlan_dev() error path\n\nIn case register_netdevice() returns an error, and a new vlan_group\nwas allocated and inserted in vlan_group_hash[] we call\nvlan_group_free() without deleting group from hash table. Future\nlookups can give infinite loops or crashes.\n\nWe must delete the vlan_group using RCU safe procedure.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69c0cab120a85471054614418b447349caba22d7",
      "tree": "6ab6f5ee4d0e605c61280f2b1eaa57e94001bde6",
      "parents": [
        "e54d5512b600aa0d492010436ff7eb0c9194efc1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 17 05:18:18 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 17 05:18:18 2009 -0800"
      },
      "message": "gro: Fix illegal merging of trailer trash\n\nWhen we\u0027ve merged skb\u0027s with page frags, and subsequently receive\na trailer skb (\u003c MSS) that is not completely non-linear (this can\noccur on Intel NICs if the packet size falls below the threshold),\nGRO ends up producing an illegal GSO skb with a frag_list.\n\nThis is harmless unless the skb is then forwarded through an\ninterface that requires software GSO, whereupon the GSO code\nwill BUG.\n\nThis patch detects this case in GRO and avoids merging the\ntrailer skb.\n\nReported-by: Mark Wagner \u003cmwagner@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91e9c07bd635353d1a278bdb38dbb56ac371bcb8",
      "tree": "f208f4e68fdf504fd2039b07c719ca38a2234c61",
      "parents": [
        "e29d4363174949a7a4e46f670993d7ff43342c1c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Nov 15 23:30:24 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 16 03:30:35 2009 -0800"
      },
      "message": "net: Fix the rollback test in dev_change_name()\n\nnet: Fix the rollback test in dev_change_name()\n\nIn dev_change_name() an err variable is used for storing the original\ncall_netdevice_notifiers() errno (negative) and testing for a rollback\nerror later, but the test for non-zero is wrong, because the err might\nhave positive value as well - from dev_alloc_name(). It means the\nrollback for a netdevice with a number \u003e 0 will never happen. (The err\ntest is reordered btw. to make it more readable.)\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eaa04dc353f45404be54a61b48a3f97de12fafc3",
      "tree": "633b044f974327a95225b4787a9ada24cf9f33cb",
      "parents": [
        "8812304cf1110ae16b0778680f6022216cf4716a",
        "68ae6639b6dff117ba37f648f1611a4629abadf0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 15 20:59:34 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 15 20:59:34 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6\n"
    },
    {
      "commit": "68ae6639b6dff117ba37f648f1611a4629abadf0",
      "tree": "2f83dd6f4858c9294687013e7ef7eff6a1888125",
      "parents": [
        "a0e55a32afc2130e5ae506755e4b8eb42a23b568"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Sat Oct 17 21:41:01 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Nov 16 01:31:41 2009 +0100"
      },
      "message": "Bluetooth: Fix regression with L2CAP configuration in Basic Mode\n\nBasic Mode is the default mode of operation of a L2CAP entity. In\nthis case the RFC (Retransmission and Flow Control) configuration\noption should not be used at all.\n\nNormally remote L2CAP implementation should just ignore this option,\nbut it can cause various side effects with other Bluetooth stacks\nthat are not capable of handling unknown options.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a0e55a32afc2130e5ae506755e4b8eb42a23b568",
      "tree": "721f3c543b688ced6a7f55ffffd487f0b63a406a",
      "parents": [
        "93f19c9fc8c98bb6d2e9825115989603ffd5cd1f"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Tue Sep 29 01:42:23 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Nov 16 01:31:16 2009 +0100"
      },
      "message": "Bluetooth: Select Basic Mode as default for SOCK_SEQPACKET\n\nThe default mode for SOCK_SEQPACKET is Basic Mode. So when no\nmode has been specified, Basic Mode shall be used.\n\nThis is important for current application to keep working as\nexpected and not cause a regression.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "93f19c9fc8c98bb6d2e9825115989603ffd5cd1f",
      "tree": "5635759dd469fffb423b3cb7ddaa13adfbfbff24",
      "parents": [
        "d01032e4fd33110f9f3a085a36cb819c1dfc5827"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@nokia.com",
        "time": "Thu Sep 03 12:34:19 2009 +0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Nov 16 01:30:28 2009 +0100"
      },
      "message": "Bluetooth: Set general bonding security for ACL by default\n\nThis patch fixes double pairing issues with Secure Simple\nParing support. It was observed that when pairing with SSP\nenabled, that the confirmation will be asked twice.\n\nhttp://www.spinics.net/lists/linux-bluetooth/msg02473.html\n\nThis also causes bug when initiating SSP connection from\nWindows Vista.\n\nThe reason is because bluetoothd does not store link keys\nsince HCIGETAUTHINFO returns 0. Setting default to general\nbonding fixes these issues.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@nokia.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d0490cfdf440fded2c292cfb8bb9272fc9ef6943",
      "tree": "6230f8a577136ca2d82d9d00cb36cf8b5a8ae3c3",
      "parents": [
        "b8a623bf836ccfab09a5a6daf62116f455082e6e"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Wed Nov 11 02:03:54 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 19:56:54 2009 -0800"
      },
      "message": "ipmr: missing dev_put() on error path in vif_add()\n\nThe other error paths in front of this one have a dev_put() but this one\ngot missed.\n\nFound by smatch static checker.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nAcked-by: Wang Chen \u003cellre923@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a78102e74e782914039cd8a6939532649825a2e3",
      "tree": "d741fc090641c3cb01f872bce286ccc2265b4b6f",
      "parents": [
        "f9c67811ebc00a42f62f5d542d3abd36bd49ae35"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Nov 11 11:54:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 19:56:52 2009 -0800"
      },
      "message": "sctp: Set socket source address when additing first transport\n\nRecent commits\n\tsctp: Get rid of an extra routing lookup when adding a transport\nand\n\tsctp: Set source addresses on the association before adding transports\n\nchanged when routes are added to the sctp transports.  As such,\nwe didn\u0027t set the socket source address correctly when adding the first\ntransport.  The first transport is always the primary/active one, so\nwhen adding it, set the socket source address.  This was causing\nregression failures in SCTP tests.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\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": "1e360a60b24ad8f8685af66fa6de10ce46693a4b",
      "tree": "b720e1ec1431b296918cba7e399cf41285ea7b5c",
      "parents": [
        "96d25e532234bec1a1989e6e1baf702d43a78b0d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Nov 13 10:52:55 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Nov 14 08:17:04 2009 +0900"
      },
      "message": "SUNRPC: Address buffer overrun in rpc_uaddr2sockaddr()\n\nThe size of buf[] must account for the string termination needed for\nthe first strict_strtoul() call.  Introduced in commit a02d6926.\n\nFábio Olivé Leite points out that strict_strtoul() requires _either_\n\u0027\\n\\0\u0027 _or_ \u0027\\0\u0027 termination, so use the simpler \u0027\\0\u0027 here instead.\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d14546 .\n\nReported-by: argp@census-labs.com\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Fábio Olivé Leite \u003cfleite@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d792c1006fe92448217b71513d3955868358271d",
      "tree": "918d3fea89ab7f053a0a3f15c2b2feff24f81ef5",
      "parents": [
        "d01032e4fd33110f9f3a085a36cb819c1dfc5827"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Nov 13 13:56:33 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 13:56:33 2009 -0800"
      },
      "message": "tcp: provide more information on the tcp receive_queue bugs\n\nThe addition of rcv_nxt allows to discern whether the skb\nwas out of place or tp-\u003ecopied. Also catch fancy combination\nof flags if necessary (sadly we might miss the actual causer\nflags as it might have already returned).\n\nBtw, we perhaps would want to forward copied_seq in\nsomewhere or otherwise we might have some nice loop with\nWARN stuff within but where to do that safely I don\u0027t\nknow at this stage until more is known (but it is not\nmade significantly worse by this patch).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7378396cd172cc058fa62220c6486419046c4e0c",
      "tree": "8431c1d9ff2dc520199074946125489aa5542316",
      "parents": [
        "1c622ae67bfc729891f5cd80795b15b87e6ac471"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Nov 13 09:34:44 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Nov 13 09:34:44 2009 +0100"
      },
      "message": "netfilter: nf_log: fix sleeping function called from invalid context in seq_show()\n\n[  171.925285] BUG: sleeping function called from invalid context at kernel/mutex.c:280\n[  171.925296] in_atomic(): 1, irqs_disabled(): 0, pid: 671, name: grep\n[  171.925306] 2 locks held by grep/671:\n[  171.925312]  #0:  (\u0026p-\u003elock){+.+.+.}, at: [\u003cc10b8acd\u003e] seq_read+0x25/0x36c\n[  171.925340]  #1:  (rcu_read_lock){.+.+..}, at: [\u003cc1391dac\u003e] seq_start+0x0/0x44\n[  171.925372] Pid: 671, comm: grep Not tainted 2.6.31.6-4-netbook #3\n[  171.925380] Call Trace:\n[  171.925398]  [\u003cc105104e\u003e] ? __debug_show_held_locks+0x1e/0x20\n[  171.925414]  [\u003cc10264ac\u003e] __might_sleep+0xfb/0x102\n[  171.925430]  [\u003cc1461521\u003e] mutex_lock_nested+0x1c/0x2ad\n[  171.925444]  [\u003cc1391c9e\u003e] seq_show+0x74/0x127\n[  171.925456]  [\u003cc10b8c5c\u003e] seq_read+0x1b4/0x36c\n[  171.925469]  [\u003cc10b8aa8\u003e] ? seq_read+0x0/0x36c\n[  171.925483]  [\u003cc10d5c8e\u003e] proc_reg_read+0x60/0x74\n[  171.925496]  [\u003cc10d5c2e\u003e] ? proc_reg_read+0x0/0x74\n[  171.925510]  [\u003cc10a4468\u003e] vfs_read+0x87/0x110\n[  171.925523]  [\u003cc10a458a\u003e] sys_read+0x3b/0x60\n[  171.925538]  [\u003cc1002a49\u003e] syscall_call+0x7/0xb\n\nFix it by replacing RCU with nf_log_mutex.\n\nReported-by: \"Yin, Kangkai\" \u003ckangkai.yin@intel.com\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "1c622ae67bfc729891f5cd80795b15b87e6ac471",
      "tree": "499484792bf2bc84b204732f88a373755840742e",
      "parents": [
        "d01032e4fd33110f9f3a085a36cb819c1dfc5827"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Fri Nov 13 09:31:35 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Nov 13 09:31:35 2009 +0100"
      },
      "message": "netfilter: xt_osf: fix xt_osf_remove_callback() return value\n\nReturn a negative error value.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "1ce55238e2dd46b978b098a85cb3d3ea494e4a93",
      "tree": "523254dbb402b1850d693f0c1f1a1db6e865456d",
      "parents": [
        "aa907639f1d9fe0e3274b4f6c1088542f750a539",
        "2606289779cb297320a185db5997729d29b6700b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 09 09:51:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 09 09:51:42 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (34 commits)\n  net/fsl_pq_mdio: add module license GPL\n  can: fix WARN_ON dump in net/core/rtnetlink.c:rtmsg_ifinfo()\n  can: should not use __dev_get_by_index() without locks\n  hisax: remove bad udelay call to fix build error on ARM\n  ipip: Fix handling of DF packets when pmtudisc is OFF\n  qlge: Set PCIe reset type for EEH to fundamental.\n  qlge: Fix early exit from mbox cmd complete wait.\n  ixgbe: fix traffic hangs on Tx with ioatdma loaded\n  ixgbe: Fix checking TFCS register for TXOFF status when DCB is enabled\n  ixgbe: Fix gso_max_size for 82599 when DCB is enabled\n  macsonic: fix crash on PowerBook 520\n  NET: cassini, fix lock imbalance\n  ems_usb: Fix byte order issues on big endian machines\n  be2net: Bug fix to send config commands to hardware after netdev_register\n  be2net: fix to set proper flow control on resume\n  netfilter: xt_connlimit: fix regression caused by zero family value\n  rt2x00: Don\u0027t queue ieee80211 work after USB removal\n  Revert \"ipw2200: fix oops on missing firmware\"\n  decnet: netdevice refcount leak\n  netfilter: nf_nat: fix NAT issue in 2.6.30.4+\n  ...\n"
    },
    {
      "commit": "6755aebaaf9fc5416acfd4578ab7a1e122ecbc74",
      "tree": "09f23419b097b15e7c36954cb98bdf28cdfa5af1",
      "parents": [
        "cc05368c52fed7d9efa0f56c5270e95bb569713e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 06 00:23:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 08 00:33:43 2009 -0800"
      },
      "message": "can: should not use __dev_get_by_index() without locks\n\nbcm_proc_getifname() is called with RTNL and dev_base_lock\nnot held. It calls __dev_get_by_index() without locks, and\nthis is illegal (might crash)\n\nClose the race by holding dev_base_lock and copying dev-\u003ename\nin the protected section.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23ca0c989e46924393f1d54bec84801d035dd28e",
      "tree": "4d7d997c52e517cc008702389d8c2f9bb2513301",
      "parents": [
        "73475339005dc68eb0bd2f6b1e93a3a39b628410"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 06 10:37:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 06 20:33:40 2009 -0800"
      },
      "message": "ipip: Fix handling of DF packets when pmtudisc is OFF\n\nRFC 2003 requires the outer header to have DF set if DF is set\non the inner header, even when PMTU discovery is off for the\ntunnel.  Our implementation does exactly that.\n\nFor this to work properly the IPIP gateway also needs to engate\nin PMTU when the inner DF bit is set.  As otherwise the original\nhost would not be able to carry out its PMTU successfully since\npart of the path is only visible to the gateway.\n\nUnfortunately when the tunnel PMTU discovery setting is off, we\ndo not collect the necessary soft state, resulting in blackholes\nwhen the original host tries to perform PMTU discovery.\n\nThis problem is not reproducible on the IPIP gateway itself as\nthe inner packet usually has skb-\u003elocal_df set.  This is not\ncorrectly cleared (an unrelated bug) when the packet passes\nthrough the tunnel, which allows fragmentation to occur.  For\nhosts behind the IPIP gateway it is readily visible with a simple\nping.\n\nThis patch fixes the problem by performing PMTU discovery for\nall packets with the inner DF bit set, regardless of the PMTU\ndiscovery setting on the tunnel itself.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "539054a8fa5141c9a4e9ac6a86d249e3f2bdef45",
      "tree": "3a4b8eb797bb56eccfed6131f0d7b6d8e2499668",
      "parents": [
        "887e671f324d9898aaedb29a6ece6c853c394067"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Fri Nov 06 18:08:32 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 06 18:08:32 2009 -0800"
      },
      "message": "netfilter: xt_connlimit: fix regression caused by zero family value\n\nCommit v2.6.28-rc1~717^2~109^2~2 was slightly incomplete; not all\ninstances of par-\u003ematch-\u003efamily were changed to par-\u003efamily.\n\nReferences: http://bugzilla.netfilter.org/show_bug.cgi?id\u003d610\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "887e671f324d9898aaedb29a6ece6c853c394067",
      "tree": "ff6e580e0342453b3e7251681ad6bc67ad7958a7",
      "parents": [
        "f9dd09c7f7199685601d75882447a6598be8a3e0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Nov 06 00:50:39 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 06 00:50:39 2009 -0800"
      },
      "message": "decnet: netdevice refcount leak\n\nWhile working on device refcount stuff, I found a device refcount leak\nthrough DECNET.\nThis nasty bug can be used to hold refcounts on any !DECNET netdevice.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9dd09c7f7199685601d75882447a6598be8a3e0",
      "tree": "98ab4a75ec6c74cdb4aa807c491002ba33de56c5",
      "parents": [
        "f5209b4446d185cc95f46363f8043a743530c15a"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Fri Nov 06 00:43:42 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 06 00:43:42 2009 -0800"
      },
      "message": "netfilter: nf_nat: fix NAT issue in 2.6.30.4+\n\nVitezslav Samel discovered that since 2.6.30.4+ active FTP can not work\nover NAT. The \"cause\" of the problem was a fix of unacknowledged data\ndetection with NAT (commit a3a9f79e361e864f0e9d75ebe2a0cb43d17c4272).\nHowever, actually, that fix uncovered a long standing bug in TCP conntrack:\nwhen NAT was enabled, we simply updated the max of the right edge of\nthe segments we have seen (td_end), by the offset NAT produced with\nchanging IP/port in the data. However, we did not update the other parameter\n(td_maxend) which is affected by the NAT offset. Thus that could drift\naway from the correct value and thus resulted breaking active FTP.\n\nThe patch below fixes the issue by *not* updating the conntrack parameters\nfrom NAT, but instead taking into account the NAT offsets in conntrack in a\nconsistent way. (Updating from NAT would be more harder and expensive because\nit\u0027d need to re-calculate parameters we already calculated in conntrack.)\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4ec824021493ba6cb7eeb61572f4d2f8a80a52e",
      "tree": "17a2848c3deac1ad7efd24bfae43fb019f35cd19",
      "parents": [
        "1056bd51674e529813213186471bb4ac6689a755"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 05 20:56:07 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 05 20:56:07 2009 -0800"
      },
      "message": "rose: device refcount leak\n\nWhile hunting dev_put() for net-next-2.6, I found a device refcount\nleak in ROSE, ioctl(SIOCADDRT) error path.\n\nFix is to not touch device refcount, as we hold RTNL\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1056bd51674e529813213186471bb4ac6689a755",
      "tree": "9843cf9f4a07caadbf1d733de0b9d495554ab799",
      "parents": [
        "22402529df88ec39a59b08a46bced73dd5722b64"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Nov 05 20:46:52 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 05 20:46:52 2009 -0800"
      },
      "message": "bridge: prevent bridging wrong device\n\nThe bridge code assumes ethernet addressing, so be more strict in\nthe what is allowed. This showed up when GRE had a bug and was not\nusing correct address format.\n\nAdd some more comments for increased clarity.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a84216e671c724e0920dfad2fb70828d428ff60a",
      "tree": "a39f53715c73d267d854653dfe275da5fc60e842",
      "parents": [
        "1836d95928a0f41ada0cbb2a6c4e46b027db9491",
        "bcfe3c2046fc4f16544f2b127f1b159dd1fcad8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 03 07:44:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 03 07:44:01 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)\n  mac80211: check interface is down before type change\n  cfg80211: fix NULL ptr deref\n  libertas if_usb: Fix crash on 64-bit machines\n  mac80211: fix reason code output endianness\n  mac80211: fix addba timer\n  ath9k: fix misplaced semicolon on rate control\n  b43: Fix DMA TX bounce buffer copying\n  mac80211: fix BSS leak\n  rt73usb.c : more ids\n  ipw2200: fix oops on missing firmware\n  gre: Fix dev_addr clobbering for gretap\n  sky2: set carrier off in probe\n  net: fix sk_forward_alloc corruption\n  pcnet_cs: add cis of PreMax PE-200 ethernet pcmcia card\n  r8169: Fix card drop incoming VLAN tagged MTU byte large jumbo frames\n  ibmtr: possible Read buffer overflow?\n  net: Fix RPF to work with policy routing\n  net: fix kmemcheck annotations\n  e1000e: rework disable K1 at 1000Mbps for 82577/82578\n  e1000e: config PHY via software after resets\n  ...\n"
    },
    {
      "commit": "bcfe3c2046fc4f16544f2b127f1b159dd1fcad8b",
      "tree": "d1a13eedc08cdc07aa488e77af08b84c50a07c46",
      "parents": [
        "2e9526b352061ee0fd2a1580a2e3a5af960dabc4",
        "c1f9a764cf47686b1f5a0cf87ada68d90056136a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 19:18:50 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 02 19:18:50 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "c1f9a764cf47686b1f5a0cf87ada68d90056136a",
      "tree": "77bff7f1361deb11e1b3c60470d9d5784c00a771",
      "parents": [
        "7400f42e9d765fa0656b432f3ab1245f9710f190"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Nov 01 19:25:40 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 02 15:14:07 2009 -0500"
      },
      "message": "mac80211: check interface is down before type change\n\nFor some strange reason the netif_running() check\nended up after the actual type change instead of\nbefore, potentially causing all kinds of problems\nif the interface is up while changing the type;\none of the problems manifests itself as a warning:\n\nWARNING: at net/mac80211/iface.c:651 ieee80211_teardown_sdata+0xda/0x1a0 [mac80211]()\nHardware name: Aspire one\nPid: 2596, comm: wpa_supplicant Tainted: G        W  2.6.31-10-generic #32-Ubuntu\nCall Trace:\n [] warn_slowpath_common+0x6d/0xa0\n [] warn_slowpath_null+0x15/0x20\n [] ieee80211_teardown_sdata+0xda/0x1a0 [mac80211]\n [] ieee80211_if_change_type+0x4a/0xc0 [mac80211]\n [] ieee80211_change_iface+0x61/0xa0 [mac80211]\n [] cfg80211_wext_siwmode+0xc7/0x120 [cfg80211]\n [] ioctl_standard_call+0x58/0xf0\n\n(http://www.kerneloops.org/searchweek.php?search\u003dieee80211_teardown_sdata)\n\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: stable@kernel.org\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7400f42e9d765fa0656b432f3ab1245f9710f190",
      "tree": "0ed7c06fb44c0c2b966755c2a0264827b7e100f3",
      "parents": [
        "e9024a059f2c17fb2bfab212ee9d31511d7b8e57"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Oct 31 07:40:37 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 02 15:14:07 2009 -0500"
      },
      "message": "cfg80211: fix NULL ptr deref\n\ncommit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Tue Oct 20 15:08:53 2009 +0900\n\n      cfg80211: sme: deauthenticate on assoc failure\n\nintroduced a potential NULL pointer dereference that\nsome people have been hitting for some reason -- the\nparams.bssid pointer is not guaranteed to be non-NULL\nfor what seems to be a race between various ways of\nreaching the same thing.\n\nWhile I\u0027m trying to analyse the problem more let\u0027s\nfirst fix the crash. I think the real fix may be to\navoid doing _anything_ if it ended up being NULL, but\nright now I\u0027m not sure yet.\n\nI think\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d14342\nmight also be this issue.\n\nReported-by: Parag Warudkar \u003cparag.lkml@gmail.com\u003e\nTested-by: Parag Warudkar \u003cparag.lkml@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3e2796a90cf349527e50b3bc4d0b2f4019b1ce7a",
      "tree": "80bddc0f5d36a589db5a77b9b60e4c94c75994ed",
      "parents": [
        "2511cd0b3b9e9b1c3e9360cc565c3745ac3f3f3f"
      ],
      "author": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Nov 02 08:39:28 2009 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Nov 02 08:43:45 2009 -0600"
      },
      "message": "9p: fix readdir corner cases\n\nThe patch below also addresses a couple of other corner cases in readdir\nseen with a large (e.g. 64k) msize.  I\u0027m not sure what people think of\nmy co-opting of fid-\u003eaux here.  I\u0027d be happy to rework if there\u0027s a better\nway.\n\nWhen the size of the user supplied buffer passed to readdir is smaller\nthan the data returned in one go by the 9P read request, v9fs_dir_readdir()\ncurrently discards extra data so that, on the next call, a 9P read\nrequest will be issued with offset \u003c previous offset + bytes returned,\nwhich voilates the constraint described in paragraph 3 of read(5) description.\nThis patch preseves the leftover data in fid-\u003eaux for use in the next call.\n\nSigned-off-by: Jim Garlick \u003cgarlick@llnl.gov\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n"
    },
    {
      "commit": "372362ade2fe5c33d749e017f1c5bc8140769a3e",
      "tree": "a28b1455c3ef7941031ebaa74f0ca48ed86eddab",
      "parents": [
        "2171abc58644e09dbba546d91366b12743115396"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 29 10:09:28 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 30 15:50:25 2009 -0400"
      },
      "message": "mac80211: fix reason code output endianness\n\nWhen HT debugging is enabled and we receive a DelBA\nframe we print out the reason code in the wrong byte\norder. Fix that so we don\u0027t get weird values printed.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2171abc58644e09dbba546d91366b12743115396",
      "tree": "b4b75fad9bb425034f71cf995586dd4898c93c2f",
      "parents": [
        "e55ea2b152569f09ef6bb28d5a341a4e5a21f5ce"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 29 08:34:00 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 30 15:50:25 2009 -0400"
      },
      "message": "mac80211: fix addba timer\n\nThe addba timer function acquires the sta spinlock,\nbut at the same time we try to del_timer_sync() it\nunder the spinlock which can produce deadlocks.\n\nTo fix this, always del_timer_sync() the timer in\nieee80211_process_addba_resp() and add it again\nafter checking the conditions, if necessary.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f446d10f214091408b7300f15c9adf60569edf28",
      "tree": "2c649a3483fc493746568a36ab4677ee8b9f0fa7",
      "parents": [
        "227206455fde433f86305f9a5b8bdd1eca759929"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Oct 28 15:12:32 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Oct 30 15:50:24 2009 -0400"
      },
      "message": "mac80211: fix BSS leak\n\nThe IBSS code leaks a BSS struct after telling\ncfg80211 about a given BSS by passing a frame.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2e9526b352061ee0fd2a1580a2e3a5af960dabc4",
      "tree": "589ae8d9832a929acc68f58cdb8f8b84fb35978e",
      "parents": [
        "33cb7d33a1c36e07839d08a4d1a33bf6a0f70bba"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Oct 30 05:51:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:28:07 2009 -0700"
      },
      "message": "gre: Fix dev_addr clobbering for gretap\n\nNathan Neulinger noticed that gretap devices get their MAC address\nfrom the local IP address, which results in invalid MAC addresses\nhalf of the time.\n\nThis is because gretap is still using the tunnel netdev ops rather\nthan the correct tap netdev ops struct.\n\nThis patch also fixes changelink to not clobber the MAC address\nfor the gretap case.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nTested-by: Nathan Neulinger \u003cnneul@mst.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d410c796067686b1e032d54ce475b7055537138",
      "tree": "4442bdbe4a4be1cce024f2e83a12b7404ef935fa",
      "parents": [
        "63ca2d74ea4f9c7a7ac082c915609a7b224908e7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 30 05:03:53 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 30 12:25:12 2009 -0700"
      },
      "message": "net: fix sk_forward_alloc corruption\n\nOn UDP sockets, we must call skb_free_datagram() with socket locked,\nor risk sk_forward_alloc corruption. This requirement is not respected\nin SUNRPC.\n\nAdd a convenient helper, skb_free_datagram_locked() and use it in SUNRPC\n\nReported-by: Francis Moreau \u003cfrancis.moro@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0c110ca8e89f2c9cd52ec7fb1b98c5b7aa78496",
      "tree": "613bb6966bce4b5dc63e5090aff04254f7dbb709",
      "parents": [
        "14d18a81b5171d4433e41129619c75748b4f4d26"
      ],
      "author": {
        "name": "jamal",
        "email": "hadi@cyberus.ca",
        "time": "Sun Oct 18 02:12:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 22:49:12 2009 -0700"
      },
      "message": "net: Fix RPF to work with policy routing\n\nPolicy routing is not looked up by mark on reverse path filtering.\nThis fixes it.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49b2de8e6febfea5a8791b6476195903af83a35d",
      "tree": "c93f328623b9429615981d4b7502997fdd0f72b0",
      "parents": [
        "8633322c5fd5b2a986b279f88a7559d8409f7da3",
        "b5dd884e682cae6b8c037f9d11f3b623b4cf2011"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 09:22:08 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits)\n  net: Fix \u0027Re: PACKET_TX_RING: packet size is too long\u0027\n  netdev: usb: dm9601.c can drive a device not supported yet, add support for it\n  qlge: Fix firmware mailbox command timeout.\n  qlge: Fix EEH handling.\n  AF_RAW: Augment raw_send_hdrinc to expand skb to fit iphdr-\u003eihl (v2)\n  bonding: fix a race condition in calls to slave MII ioctls\n  virtio-net: fix data corruption with OOM\n  sfc: Set ip_summed correctly for page buffers passed to GRO\n  cnic: Fix L2CTX_STATUSB_NUM offset in context memory.\n  MAINTAINERS: rt2x00 list is moderated\n  airo: Reorder tests, check bounds before element\n  mac80211: fix for incorrect sequence number on hostapd injected frames\n  libertas spi: fix sparse errors\n  mac80211: trivial: fix spelling in mesh_hwmp\n  cfg80211: sme: deauthenticate on assoc failure\n  mac80211: keep auth state when assoc fails\n  mac80211: fix ibss joining\n  b43: add \u0027struct b43_wl\u0027 missing declaration\n  b43: Fix Bugzilla #14181 and the bug from the previous \u0027fix\u0027\n  rt2x00: Fix crypto in TX frame for rt2800usb\n  ...\n"
    },
    {
      "commit": "b5dd884e682cae6b8c037f9d11f3b623b4cf2011",
      "tree": "224328f65e56b5d4b33078f09b397ec9e4b6ff46",
      "parents": [
        "06b71b657b03c33b8d919da29f33d326f1471b39"
      ],
      "author": {
        "name": "Gabor Gombas",
        "email": "gombasg@sztaki.hu",
        "time": "Thu Oct 29 03:19:11 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 03:19:11 2009 -0700"
      },
      "message": "net: Fix \u0027Re: PACKET_TX_RING: packet size is too long\u0027\n\nCurrently PACKET_TX_RING forces certain amount of every frame to remain\nunused. This probably originates from an early version of the\nPACKET_TX_RING patch that in fact used the extra space when the (since\nremoved) CONFIG_PACKET_MMAP_ZERO_COPY option was enabled. The current\ncode does not make any use of this extra space.\n\nThis patch removes the extra space reservation and lets userspace make\nuse of the full frame size.\n\nSigned-off-by: Gabor Gombas \u003cgombasg@sztaki.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55888dfb6ba7e318bb3d6a44d25009906206bf6a",
      "tree": "f78100527fdc2aa7d9626fd1c2475f0a8ee7a342",
      "parents": [
        "f552ce5fc2df5504f2feb0087e8a3e61b694ad67"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Oct 28 08:59:47 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 01:09:58 2009 -0700"
      },
      "message": "AF_RAW: Augment raw_send_hdrinc to expand skb to fit iphdr-\u003eihl (v2)\n\nAugment raw_send_hdrinc to correct for incorrect ip header length values\n\nA series of oopses was reported to me recently.  Apparently when using AF_RAW\nsockets to send data to peers that were reachable via ipsec encapsulation,\npeople could panic or BUG halt their systems.\n\nI\u0027ve tracked the problem down to user space sending an invalid ip header over an\nAF_RAW socket with IP_HDRINCL set to 1.\n\nBasically what happens is that userspace sends down an ip frame that includes\nonly the header (no data), but sets the ip header ihl value to a large number,\none that is larger than the total amount of data passed to the sendmsg call.  In\nraw_send_hdrincl, we allocate an skb based on the size of the data in the msghdr\nthat was passed in, but assume the data is all valid.  Later during ipsec\nencapsulation, xfrm4_tranport_output moves the entire frame back in the skbuff\nto provide headroom for the ipsec headers.  During this operation, the\nskb-\u003etransport_header is repointed to a spot computed by\nskb-\u003enetwork_header + the ip header length (ihl).  Since so little data was\npassed in relative to the value of ihl provided by the raw socket, we point\ntransport header to an unknown location, resulting in various crashes.\n\nThis fix for this is pretty straightforward, simply validate the value of of\niph-\u003eihl when sending over a raw socket.  If (iph-\u003eihl*4U) \u003e user data buffer\nsize, drop the frame and return -EINVAL.  I just confirmed this fixes the\nreported crashes.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9b1ce526eb917c8b5c8497c327768130ee683392",
      "tree": "dcd6dff3083e293d5ec8045f79c0e14f8640c583",
      "parents": [
        "d18ba452d7de12a22bd01a0a00e5b836eb0f4198"
      ],
      "author": {
        "name": "Björn Smedman",
        "email": "bjorn.smedman@venatech.se",
        "time": "Sat Oct 24 20:55:09 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:48 2009 -0400"
      },
      "message": "mac80211: fix for incorrect sequence number on hostapd injected frames\n\nWhen hostapd injects a frame, e.g. an authentication or association\nresponse, mac80211 looks for a suitable access point virtual interface\nto associate the frame with based on its source address. This makes it\npossible e.g. to correctly assign sequence numbers to the frames.\n\nA small typo in the ethernet address comparison statement caused a\nfailure to find a suitable ap interface. Sequence numbers on such\nframes where therefore left unassigned causing some clients\n(especially windows-based 11b/g clients) to reject them and fail to\nauthenticate or associate with the access point. This patch fixes the\ntypo in the address comparison statement.\n\nSigned-off-by: Björn Smedman \u003cbjorn.smedman@venatech.se\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f99288d1761fb3b0decb0fdc4d746406addd29d5",
      "tree": "043e1e45808fd86ef8f7b922895fa91a83042a97",
      "parents": [
        "7d930bc33653d5592dc386a76a38f39c2e962344"
      ],
      "author": {
        "name": "Andrey Yurovsky",
        "email": "andrey@cozybit.com",
        "time": "Tue Oct 20 12:17:34 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:47 2009 -0400"
      },
      "message": "mac80211: trivial: fix spelling in mesh_hwmp\n\nFix a typo in the description of hwmp_route_info_get(), no function\nchanges.\n\nSigned-off-by: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7d930bc33653d5592dc386a76a38f39c2e962344",
      "tree": "f974e7f86b0d695ca1ca90095c157bec4f739006",
      "parents": [
        "2ef6e4440926668cfa9eac4b79e63528ebcbe0c1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 20 15:08:53 2009 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:47 2009 -0400"
      },
      "message": "cfg80211: sme: deauthenticate on assoc failure\n\nWhen the in-kernel SME gets an association failure from\nthe AP we don\u0027t deauthenticate, and thus get into a very\nconfused state which will lead to warnings later on. Fix\nthis by actually deauthenticating when the AP indicates\nan association failure.\n\n(Brought to you by the hacking session at Kernel Summit 2009 in Tokyo,\nJapan. -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2ef6e4440926668cfa9eac4b79e63528ebcbe0c1",
      "tree": "6db9ef36346c2b263d7bed07fed99cffd6fb2a44",
      "parents": [
        "d419b9f0fa69e79ccba3e5e79a58a52ae0c2ed6a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 20 15:08:12 2009 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:47 2009 -0400"
      },
      "message": "mac80211: keep auth state when assoc fails\n\nWhen association fails, we should stay authenticated,\nwhich in mac80211 is represented by the existence of\nthe mlme work struct, so we cannot free that, instead\nwe need to just set it to idle.\n\n(Brought to you by the hacking session at Kernel Summit 2009 in Tokyo,\nJapan. -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d419b9f0fa69e79ccba3e5e79a58a52ae0c2ed6a",
      "tree": "9437f790f07c46a645b867871e81a71dc1058749",
      "parents": [
        "e6693eab351fc19809e76167cd18a6f028661e8a"
      ],
      "author": {
        "name": "Reinette Chatre",
        "email": "reinette.chatre@intel.com",
        "time": "Mon Oct 19 14:55:37 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:46 2009 -0400"
      },
      "message": "mac80211: fix ibss joining\n\nRecent commit \"mac80211: fix logic error ibss merge bssid check\" fixed\njoining of ibss cell when static bssid is provided. In this case\nifibss-\u003ebssid is set before the cell is joined and comparing that address\nto a bss should thus always succeed. Unfortunately this change broke the\nother case of joining a ibss cell without providing a static bssid where\nthe value of ifibss-\u003ebssid is not set before the cell is joined.\n\nSince ifibss-\u003ebssid may be set before or after joining the cell we do not\nlearn anything by comparing it to a known bss. Remove this check.\n\nSigned-off-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "66ed1e5ec1d979e572554643063734a7664261bb",
      "tree": "ebe8b3f132b4191d1f1c663e75f93e778db0cd6c",
      "parents": [
        "62e20a624b18e135870ae781087bc63fdda829ba"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Oct 24 06:55:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 24 06:55:20 2009 -0700"
      },
      "message": "pktgen: Dont leak kernel memory\n\nWhile playing with pktgen, I realized IP ID was not filled and a\nrandom value was taken, possibly leaking 2 bytes of kernel memory.\n \nWe can use an increasing ID, this can help diagnostics anyway.\n\nAlso clear packet payload, instead of leaking kernel memory.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c62f4c453ab4b0240ab857bfd089da2c01ad91e7",
      "tree": "2c99ed102d752d762cc051ee1e89539e0453bdc0",
      "parents": [
        "74eee2e8d08048c847d1998c686e12a477ff939a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Thu Oct 22 21:37:56 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 22 21:37:56 2009 -0700"
      },
      "message": "net: use WARN() for the WARN_ON in commit b6b39e8f3fbbb\n\nCommit b6b39e8f3fbbb (tcp: Try to catch MSG_PEEK bug) added a printk()\nto the WARN_ON() that\u0027s in tcp.c. This patch changes this combination\nto WARN(); the advantage of WARN() is that the printk message shows up\ninside the message, so that kerneloops.org will collect the message.\n\nIn addition, this gets rid of an extra if() statement.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "964fe080d94db82a3268443e9b9ece4c60246414",
      "tree": "d0095a9befb34f77bf32757e7465e5d2cbc40a93",
      "parents": [
        "4848490c50c5d46d4e9749fddc374c303823bcc4",
        "ff07eb897a97640b7ac0262cd50311ad403038f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 23 07:35:16 2009 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 23 07:35:16 2009 +0900"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  move virtrng_remove to .devexit.text\n  move virtballoon_remove to .devexit.text\n  virtio_blk: Revert serial number support\n  virtio: let header files include virtio_ids.h\n  virtio_blk: revert QUEUE_FLAG_VIRT addition\n"
    },
    {
      "commit": "4848490c50c5d46d4e9749fddc374c303823bcc4",
      "tree": "f8ef23f86241789521b637fd39f80ef6f5018518",
      "parents": [
        "d995053d045d777e78ba7eba71a6a0733f3aa726",
        "845de8afa66550331dca164ab77fa49de930b699"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 23 07:34:23 2009 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 23 07:34:23 2009 +0900"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)\n  niu: VLAN_ETH_HLEN should be used to make sure that the whole MAC header was copied to the head buffer in the Vlan packets case\n  KS8851: Fix ks8851_set_rx_mode() for IFF_MULTICAST\n  KS8851: Fix MAC address write order\n  KS8851: Add soft reset at probe time\n  net: fix section mismatch in fec.c\n  net: Fix struct inet_timewait_sock bitfield annotation\n  tcp: Try to catch MSG_PEEK bug\n  net: Fix IP_MULTICAST_IF\n  bluetooth: static lock key fix\n  bluetooth: scheduling while atomic bug fix\n  tcp: fix TCP_DEFER_ACCEPT retrans calculation\n  tcp: reduce SYN-ACK retrans for TCP_DEFER_ACCEPT\n  tcp: accept socket after TCP_DEFER_ACCEPT period\n  Revert \"tcp: fix tcp_defer_accept to consider the timeout\"\n  AF_UNIX: Fix deadlock on connecting to shutdown socket\n  ethoc: clear only pending irqs\n  ethoc: inline regs access\n  vmxnet3: use dev_dbg, fix build for CONFIG_BLOCK\u003dn\n  virtio_net: use dev_kfree_skb_any() in free_old_xmit_skbs()\n  be2net: fix support for PCI hot plug\n  ...\n"
    },
    {
      "commit": "e95646c3ec33c8ec0693992da4332a6b32eb7e31",
      "tree": "7855767cc4dccdefc4ea64584cc01b64f92176f3",
      "parents": [
        "f8b12e513b953aebf30f8ff7d2de9be7e024dbbe"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Wed Sep 30 11:17:21 2009 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Oct 22 16:39:28 2009 +1030"
      },
      "message": "virtio: let header files include virtio_ids.h\n\nRusty,\n\ncommit 3ca4f5ca73057a617f9444a91022d7127041970a\n    virtio: add virtio IDs file\nmoved all device IDs into a single file. While the change itself is\na very good one, it can break userspace applications. For example\nif a userspace tool wanted to get the ID of virtio_net it used to\ninclude virtio_net.h. This does no longer work, since virtio_net.h\ndoes not include virtio_ids.h.\nThis patch moves all \"#include \u003clinux/virtio_ids.h\u003e\" from the C\nfiles into the header files, making the header files compatible with\nthe old ones.\n\nIn addition, this patch exports virtio_ids.h to userspace.\n\nCC: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b6b39e8f3fbbb31001b836afec87bcaf4811a7bf",
      "tree": "33cf8d3732bde60abc7651b0ecf78e297d7b0afb",
      "parents": [
        "55b8050353c4a212c94d7156e2bd5885225b869b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Oct 19 19:41:06 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 20 00:51:57 2009 -0700"
      },
      "message": "tcp: Try to catch MSG_PEEK bug\n\nThis patch tries to print out more information when we hit the\nMSG_PEEK bug in tcp_recvmsg.  It\u0027s been around since at least\n2005 and it\u0027s about time that we finally fix it.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55b8050353c4a212c94d7156e2bd5885225b869b",
      "tree": "013778c4d48b946b2c565f8b55f40e505ec255ce",
      "parents": [
        "45054dc1bf2367ccb0e7c0486037907cd9395f8b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Oct 19 06:41:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 21:34:20 2009 -0700"
      },
      "message": "net: Fix IP_MULTICAST_IF\n\nipv4/ipv6 setsockopt(IP_MULTICAST_IF) have dubious __dev_get_by_index() calls.\n\nThis function should be called only with RTNL or dev_base_lock held, or reader\ncould see a corrupt hash chain and eventually enter an endless loop.\n\nFix is to call dev_get_by_index()/dev_put().\n\nIf this happens to be performance critical, we could define a new dev_exist_by_index()\nfunction to avoid touching dev refcount.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45054dc1bf2367ccb0e7c0486037907cd9395f8b",
      "tree": "a2dbc61975f169bd841a012d159210c69024c317",
      "parents": [
        "f74c77cb1124a11acf69c98d10c0fdc22f322664"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Sun Oct 18 20:28:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:36:49 2009 -0700"
      },
      "message": "bluetooth: static lock key fix\n\nWhen shutdown ppp connection, lockdep waring about non-static key\nwill happen, it is caused by the lock is not initialized properly\nat that time.\n\nFix with tuning the lock/skb_queue_head init order\n\n[   94.339261] INFO: trying to register non-static key.\n[   94.342509] the code is fine but needs lockdep annotation.\n[   94.342509] turning off the locking correctness validator.\n[   94.342509] Pid: 0, comm: swapper Not tainted 2.6.31-mm1 #2\n[   94.342509] Call Trace:\n[   94.342509]  [\u003cc0248fbe\u003e] register_lock_class+0x58/0x241\n[   94.342509]  [\u003cc024b5df\u003e] ? __lock_acquire+0xb57/0xb73\n[   94.342509]  [\u003cc024ab34\u003e] __lock_acquire+0xac/0xb73\n[   94.342509]  [\u003cc024b7fa\u003e] ? lock_release_non_nested+0x17b/0x1de\n[   94.342509]  [\u003cc024b662\u003e] lock_acquire+0x67/0x84\n[   94.342509]  [\u003cc04cd1eb\u003e] ? skb_dequeue+0x15/0x41\n[   94.342509]  [\u003cc054a857\u003e] _spin_lock_irqsave+0x2f/0x3f\n[   94.342509]  [\u003cc04cd1eb\u003e] ? skb_dequeue+0x15/0x41\n[   94.342509]  [\u003cc04cd1eb\u003e] skb_dequeue+0x15/0x41\n[   94.342509]  [\u003cc054a648\u003e] ? _read_unlock+0x1d/0x20\n[   94.342509]  [\u003cc04cd641\u003e] skb_queue_purge+0x14/0x1b\n[   94.342509]  [\u003cfab94fdc\u003e] l2cap_recv_frame+0xea1/0x115a [l2cap]\n[   94.342509]  [\u003cc024b5df\u003e] ? __lock_acquire+0xb57/0xb73\n[   94.342509]  [\u003cc0249c04\u003e] ? mark_lock+0x1e/0x1c7\n[   94.342509]  [\u003cf8364963\u003e] ? hci_rx_task+0xd2/0x1bc [bluetooth]\n[   94.342509]  [\u003cfab95346\u003e] l2cap_recv_acldata+0xb1/0x1c6 [l2cap]\n[   94.342509]  [\u003cf8364997\u003e] hci_rx_task+0x106/0x1bc [bluetooth]\n[   94.342509]  [\u003cfab95295\u003e] ? l2cap_recv_acldata+0x0/0x1c6 [l2cap]\n[   94.342509]  [\u003cc02302c4\u003e] tasklet_action+0x69/0xc1\n[   94.342509]  [\u003cc022fbef\u003e] __do_softirq+0x94/0x11e\n[   94.342509]  [\u003cc022fcaf\u003e] do_softirq+0x36/0x5a\n[   94.342509]  [\u003cc022fe14\u003e] irq_exit+0x35/0x68\n[   94.342509]  [\u003cc0204ced\u003e] do_IRQ+0x72/0x89\n[   94.342509]  [\u003cc02038ee\u003e] common_interrupt+0x2e/0x34\n[   94.342509]  [\u003cc024007b\u003e] ? pm_qos_add_requirement+0x63/0x9d\n[   94.342509]  [\u003cc038e8a5\u003e] ? acpi_idle_enter_bm+0x209/0x238\n[   94.342509]  [\u003cc049d238\u003e] cpuidle_idle_call+0x5c/0x94\n[   94.342509]  [\u003cc02023f8\u003e] cpu_idle+0x4e/0x6f\n[   94.342509]  [\u003cc0534153\u003e] rest_init+0x53/0x55\n[   94.342509]  [\u003cc0781894\u003e] start_kernel+0x2f0/0x2f5\n[   94.342509]  [\u003cc0781091\u003e] i386_start_kernel+0x91/0x96\n\nReported-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nTested-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f74c77cb1124a11acf69c98d10c0fdc22f322664",
      "tree": "432ed5d118c00a274feae1a9dc3d494ec9b15ce1",
      "parents": [
        "b103cf34382f26ff48a87931b83f13b177b47c1a"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Sun Oct 18 20:24:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:36:45 2009 -0700"
      },
      "message": "bluetooth: scheduling while atomic bug fix\n\nDue to driver core changes dev_set_drvdata will call kzalloc which should be\nin might_sleep context, but hci_conn_add will be called in atomic context\n\nLike dev_set_name move dev_set_drvdata to work queue function.\n\noops as following:\n\nOct  2 17:41:59 darkstar kernel: [  438.001341] BUG: sleeping function called from invalid context at mm/slqb.c:1546\nOct  2 17:41:59 darkstar kernel: [  438.001345] in_atomic(): 1, irqs_disabled(): 0, pid: 2133, name: sdptool\nOct  2 17:41:59 darkstar kernel: [  438.001348] 2 locks held by sdptool/2133:\nOct  2 17:41:59 darkstar kernel: [  438.001350]  #0:  (sk_lock-AF_BLUETOOTH-BTPROTO_L2CAP){+.+.+.}, at: [\u003cfaa1d2f5\u003e] lock_sock+0xa/0xc [l2cap]\nOct  2 17:41:59 darkstar kernel: [  438.001360]  #1:  (\u0026hdev-\u003elock){+.-.+.}, at: [\u003cfaa20e16\u003e] l2cap_sock_connect+0x103/0x26b [l2cap]\nOct  2 17:41:59 darkstar kernel: [  438.001371] Pid: 2133, comm: sdptool Not tainted 2.6.31-mm1 #2\nOct  2 17:41:59 darkstar kernel: [  438.001373] Call Trace:\nOct  2 17:41:59 darkstar kernel: [  438.001381]  [\u003cc022433f\u003e] __might_sleep+0xde/0xe5\nOct  2 17:41:59 darkstar kernel: [  438.001386]  [\u003cc0298843\u003e] __kmalloc+0x4a/0x15a\nOct  2 17:41:59 darkstar kernel: [  438.001392]  [\u003cc03f0065\u003e] ? kzalloc+0xb/0xd\nOct  2 17:41:59 darkstar kernel: [  438.001396]  [\u003cc03f0065\u003e] kzalloc+0xb/0xd\nOct  2 17:41:59 darkstar kernel: [  438.001400]  [\u003cc03f04ff\u003e] device_private_init+0x15/0x3d\nOct  2 17:41:59 darkstar kernel: [  438.001405]  [\u003cc03f24c5\u003e] dev_set_drvdata+0x18/0x26\nOct  2 17:41:59 darkstar kernel: [  438.001414]  [\u003cfa51fff7\u003e] hci_conn_init_sysfs+0x40/0xd9 [bluetooth]\nOct  2 17:41:59 darkstar kernel: [  438.001422]  [\u003cfa51cdc0\u003e] ? hci_conn_add+0x128/0x186 [bluetooth]\nOct  2 17:41:59 darkstar kernel: [  438.001429]  [\u003cfa51ce0f\u003e] hci_conn_add+0x177/0x186 [bluetooth]\nOct  2 17:41:59 darkstar kernel: [  438.001437]  [\u003cfa51cf8a\u003e] hci_connect+0x3c/0xfb [bluetooth]\nOct  2 17:41:59 darkstar kernel: [  438.001442]  [\u003cfaa20e87\u003e] l2cap_sock_connect+0x174/0x26b [l2cap]\nOct  2 17:41:59 darkstar kernel: [  438.001448]  [\u003cc04c8df5\u003e] sys_connect+0x60/0x7a\nOct  2 17:41:59 darkstar kernel: [  438.001453]  [\u003cc024b703\u003e] ? lock_release_non_nested+0x84/0x1de\nOct  2 17:41:59 darkstar kernel: [  438.001458]  [\u003cc028804b\u003e] ? might_fault+0x47/0x81\nOct  2 17:41:59 darkstar kernel: [  438.001462]  [\u003cc028804b\u003e] ? might_fault+0x47/0x81\nOct  2 17:41:59 darkstar kernel: [  438.001468]  [\u003cc033361f\u003e] ? __copy_from_user_ll+0x11/0xce\nOct  2 17:41:59 darkstar kernel: [  438.001472]  [\u003cc04c9419\u003e] sys_socketcall+0x82/0x17b\nOct  2 17:41:59 darkstar kernel: [  438.001477]  [\u003cc020329d\u003e] syscall_call+0x7/0xb\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b103cf34382f26ff48a87931b83f13b177b47c1a",
      "tree": "6922379bca3fc9935d394bc474a91b859ac06813",
      "parents": [
        "0c3d79bce48034018e840468ac5a642894a521a3"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Mon Oct 19 10:10:40 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:19:06 2009 -0700"
      },
      "message": "tcp: fix TCP_DEFER_ACCEPT retrans calculation\n\nFix TCP_DEFER_ACCEPT conversion between seconds and\nretransmission to match the TCP SYN-ACK retransmission periods\nbecause the time is converted to such retransmissions. The old\nalgorithm selects one more retransmission in some cases. Allow\nup to 255 retransmissions.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c3d79bce48034018e840468ac5a642894a521a3",
      "tree": "96a56d10d55173c032aa1adc2b47a7571e4055a2",
      "parents": [
        "d1b99ba41d6c5aa1ed2fc634323449dd656899e9"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Mon Oct 19 10:03:58 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:19:03 2009 -0700"
      },
      "message": "tcp: reduce SYN-ACK retrans for TCP_DEFER_ACCEPT\n\nChange SYN-ACK retransmitting code for the TCP_DEFER_ACCEPT\nusers to not retransmit SYN-ACKs during the deferring period if\nACK from client was received. The goal is to reduce traffic\nduring the deferring period. When the period is finished\nwe continue with sending SYN-ACKs (at least one) but this time\nany traffic from client will change the request to established\nsocket allowing application to terminate it properly.\nAlso, do not drop acked request if sending of SYN-ACK fails.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1b99ba41d6c5aa1ed2fc634323449dd656899e9",
      "tree": "06c2106cda7c565c08da8d510612d2c805fc3c33",
      "parents": [
        "a1a2ad9151c26d92e5c733a33d52108f5d3a5b57"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Mon Oct 19 10:01:56 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:19:01 2009 -0700"
      },
      "message": "tcp: accept socket after TCP_DEFER_ACCEPT period\n\nWilly Tarreau and many other folks in recent years\nwere concerned what happens when the TCP_DEFER_ACCEPT period\nexpires for clients which sent ACK packet. They prefer clients\nthat actively resend ACK on our SYN-ACK retransmissions to be\nconverted from open requests to sockets and queued to the\nlistener for accepting after the deferring period is finished.\nThen application server can decide to wait longer for data\nor to properly terminate the connection with FIN if read()\nreturns EAGAIN which is an indication for accepting after\nthe deferring period. This change still can have side effects\nfor applications that expect always to see data on the accepted\nsocket. Others can be prepared to work in both modes (with or\nwithout TCP_DEFER_ACCEPT period) and their data processing can\nignore the read\u003dEAGAIN notification and to allocate resources for\nclients which proved to have no data to send during the deferring\nperiod. OTOH, servers that use TCP_DEFER_ACCEPT\u003d1 as flag (not\nas a timeout) to wait for data will notice clients that didn\u0027t\nsend data for 3 seconds but that still resend ACKs.\nThanks to Willy Tarreau for the initial idea and to\nEric Dumazet for the review and testing the change.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a1a2ad9151c26d92e5c733a33d52108f5d3a5b57",
      "tree": "f794c456544391a6797ead469ce3beab5cee2912",
      "parents": [
        "77238f2b942b38ab4e7f3aced44084493e4a8675"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:12:36 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 19 19:12:36 2009 -0700"
      },
      "message": "Revert \"tcp: fix tcp_defer_accept to consider the timeout\"\n\nThis reverts commit 6d01a026b7d3009a418326bdcf313503a314f1ea.\n\nJulian Anastasov, Willy Tarreau and Eric Dumazet have come up\nwith a more correct way to deal with this.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77238f2b942b38ab4e7f3aced44084493e4a8675",
      "tree": "5cddd194862ca982d3f701167f897566a037c275",
      "parents": [
        "50c54a57dfbd392e17f1473717b8e125afcb01a3"
      ],
      "author": {
        "name": "Tomoki Sekiyama",
        "email": "tomoki.sekiyama.qu@hitachi.com",
        "time": "Sun Oct 18 23:17:37 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 18 23:17:37 2009 -0700"
      },
      "message": "AF_UNIX: Fix deadlock on connecting to shutdown socket\n\nI found a deadlock bug in UNIX domain socket, which makes able to DoS\nattack against the local machine by non-root users.\n\nHow to reproduce:\n1. Make a listening AF_UNIX/SOCK_STREAM socket with an abstruct\n    namespace(*), and shutdown(2) it.\n 2. Repeat connect(2)ing to the listening socket from the other sockets\n    until the connection backlog is full-filled.\n 3. connect(2) takes the CPU forever. If every core is taken, the\n    system hangs.\n\nPoC code: (Run as many times as cores on SMP machines.)\n\nint main(void)\n{\n\tint ret;\n\tint csd;\n\tint lsd;\n\tstruct sockaddr_un sun;\n\n\t/* make an abstruct name address (*) */\n\tmemset(\u0026sun, 0, sizeof(sun));\n\tsun.sun_family \u003d PF_UNIX;\n\tsprintf(\u0026sun.sun_path[1], \"%d\", getpid());\n\n\t/* create the listening socket and shutdown */\n\tlsd \u003d socket(AF_UNIX, SOCK_STREAM, 0);\n\tbind(lsd, (struct sockaddr *)\u0026sun, sizeof(sun));\n\tlisten(lsd, 1);\n\tshutdown(lsd, SHUT_RDWR);\n\n\t/* connect loop */\n\talarm(15); /* forcely exit the loop after 15 sec */\n\tfor (;;) {\n\t\tcsd \u003d socket(AF_UNIX, SOCK_STREAM, 0);\n\t\tret \u003d connect(csd, (struct sockaddr *)\u0026sun, sizeof(sun));\n\t\tif (-1 \u003d\u003d ret) {\n\t\t\tperror(\"connect()\");\n\t\t\tbreak;\n\t\t}\n\t\tputs(\"Connection OK\");\n\t}\n\treturn 0;\n}\n\n(*) Make sun_path[0] \u003d 0 to use the abstruct namespace.\n    If a file-based socket is used, the system doesn\u0027t deadlock because\n    of context switches in the file system layer.\n\nWhy this happens:\n Error checks between unix_socket_connect() and unix_wait_for_peer() are\n inconsistent. The former calls the latter to wait until the backlog is\n processed. Despite the latter returns without doing anything when the\n socket is shutdown, the former doesn\u0027t check the shutdown state and\n just retries calling the latter forever.\n\nPatch:\n The patch below adds shutdown check into unix_socket_connect(), so\n connect(2) to the shutdown socket will return -ECONREFUSED.\n\nSigned-off-by: Tomoki Sekiyama \u003ctomoki.sekiyama.qu@hitachi.com\u003e\nSigned-off-by: Masanori Yoshida \u003cmasanori.yoshida.tv@hitachi.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3da31485f074a6f598b67045b08e2e15d908310",
      "tree": "64f9ad3d3752e80de2b22b47cbea8f8512dc5d59",
      "parents": [
        "bd0704111e625ebe75418531550cf471215c3267",
        "8f7e524ce33ca81b663711404709396165da3cbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 15 15:03:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 15 15:03:17 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (53 commits)\n  vmxnet: fix 2 build problems\n  net: add support for STMicroelectronics Ethernet controllers.\n  net: ks8851_mll uses mii interfaces\n  net/fec_mpc52xx: Fix kernel panic on FEC error\n  net: Fix OF platform drivers coldplug/hotplug when compiled as modules\n  TI DaVinci EMAC: Clear statistics register properly.\n  r8169: partial support and phy init for the 8168d\n  irda/sa1100_ir: check return value of startup hook\n  udp: Fix udp_poll() and ioctl()\n  WAN: fix Cisco HDLC handshaking.\n  tcp: fix tcp_defer_accept to consider the timeout\n  3c574_cs: spin_lock the set_multicast_list function\n  net: Teach pegasus driver to ignore bluetoother adapters with clashing Vendor:Product IDs\n  netxen: fix pci bar mapping\n  ethoc: fix warning from 32bit build\n  libertas: fix build\n  net: VMware virtual Ethernet NIC driver: vmxnet3\n  net: Fix IXP 2000 network driver building.\n  libertas: fix build\n  mac80211: document ieee80211_rx() context requirement\n  ...\n"
    },
    {
      "commit": "417c5233dbe35ffd6fa9e53754773f73690e1ce3",
      "tree": "1cfcbeddd1f91d5811de67dcb86f060d194ad6f5",
      "parents": [
        "91cd1756cbbe9ba8772e6a5908f20cee56019c0d",
        "c49de94a56f02768fa881cd7cbf58907910ceb8e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 11:41:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 11:41:34 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "85584672012ee0c3b7b8e033a1ecf7c11878e45f",
      "tree": "f35b38f084453e2d7260d4a7a8d13f2a01641664",
      "parents": [
        "9652041da18a1a1d9a0b7ebd9eef16bd712be38a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 09 04:43:40 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 03:16:54 2009 -0700"
      },
      "message": "udp: Fix udp_poll() and ioctl()\n\nudp_poll() can in some circumstances drop frames with incorrect checksums.\n\nProblem is we now have to lock the socket while dropping frames, or risk\nsk_forward corruption.\n\nThis bug is present since commit 95766fff6b9a78d1\n([UDP]: Add memory accounting.)\n\nWhile we are at it, we can correct ioctl(SIOCINQ) to also drop bad frames.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d01a026b7d3009a418326bdcf313503a314f1ea",
      "tree": "c16b0e20f4fcf60d33e7ca141e5f8d67ee846891",
      "parents": [
        "e3eef534c50ad39654e247f88dc01e6a3f76b6b4"
      ],
      "author": {
        "name": "Willy Tarreau",
        "email": "w@1wt.eu",
        "time": "Tue Oct 13 00:27:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 01:35:28 2009 -0700"
      },
      "message": "tcp: fix tcp_defer_accept to consider the timeout\n\nI was trying to use TCP_DEFER_ACCEPT and noticed that if the\nclient does not talk, the connection is never accepted and\nremains in SYN_RECV state until the retransmits expire, where\nit finally is deleted. This is bad when some firewall such as\nnetfilter sits between the client and the server because the\nfirewall sees the connection in ESTABLISHED state while the\nserver will finally silently drop it without sending an RST.\n\nThis behaviour contradicts the man page which says it should\nwait only for some time :\n\n       TCP_DEFER_ACCEPT (since Linux 2.4)\n          Allows a listener to be awakened only when data arrives\n          on the socket.  Takes an integer value  (seconds), this\n          can  bound  the  maximum  number  of attempts TCP will\n          make to complete the connection. This option should not\n          be used in code intended to be portable.\n\nAlso, looking at ipv4/tcp.c, a retransmit counter is correctly\ncomputed :\n\n        case TCP_DEFER_ACCEPT:\n                icsk-\u003eicsk_accept_queue.rskq_defer_accept \u003d 0;\n                if (val \u003e 0) {\n                        /* Translate value in seconds to number of\n                         * retransmits */\n                        while (icsk-\u003eicsk_accept_queue.rskq_defer_accept \u003c 32 \u0026\u0026\n                               val \u003e ((TCP_TIMEOUT_INIT / HZ) \u003c\u003c\n                                       icsk-\u003eicsk_accept_queue.rskq_defer_accept))\n                                icsk-\u003eicsk_accept_queue.rskq_defer_accept++;\n                        icsk-\u003eicsk_accept_queue.rskq_defer_accept++;\n                }\n                break;\n\n\u003d\u003d\u003e rskq_defer_accept is used as a counter of retransmits.\n\nBut in tcp_minisocks.c, this counter is only checked. And in\nfact, I have found no location which updates it. So I think\nthat what was intended was to decrease it in tcp_minisocks\nwhenever it is checked, which the trivial patch below does.\n\nSigned-off-by: Willy Tarreau \u003cw@1wt.eu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d20ef63d32461332958661df73e21c0ca42601b0",
      "tree": "b63f50f6086cacd9597490459f9febe289ba8c0d",
      "parents": [
        "edbfdcceb41c0cbfc1dd2cd28af2272190be47ad"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Oct 11 15:10:40 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 12 15:55:53 2009 -0400"
      },
      "message": "mac80211: document ieee80211_rx() context requirement\n\nieee80211_rx() must be called with softirqs disabled\nsince the networking stack requires this for netif_rx()\nand some code in mac80211 can assume that it can not\nbe processing its own tasklet and this call at the same\ntime.\n\nIt may be possible to remove this requirement after a\ncareful audit of mac80211 and doing any needed locking\nimprovements in it along with disabling softirqs around\nnetif_rx(). An alternative might be to push all packet\nprocessing to process context in mac80211, instead of\nto the tasklet, and add other synchronisation.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "51f98f1313d2fc4b1d3a3e1f4db7cf4925b29df6",
      "tree": "d39f829ab22aff38791a0c13e05eab985598ef6e",
      "parents": [
        "5e4708bcb5d5360730e31b14e5e36429fc7d48b2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Oct 11 11:47:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 12 15:55:52 2009 -0400"
      },
      "message": "mac80211: fix ibss race\n\nWhen a scan completes, we call ieee80211_sta_find_ibss(),\nwhich is also called from other places. When the scan was\ndone in software, there\u0027s no problem as both run from the\nsingle-threaded mac80211 workqueue and are thus serialised\nagainst each other, but with hardware scan the completion\ncan be in a different context and race against callers of\nthis function from the workqueue (e.g. due to beacon RX).\nSo instead of calling ieee80211_sta_find_ibss() directly,\njust arm the timer and have it fire, scheduling the work,\nwhich will invoke ieee80211_sta_find_ibss() (if that is\nappropriate in the current state).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5e4708bcb5d5360730e31b14e5e36429fc7d48b2",
      "tree": "5517fe42dc87d59ffb678fd405218e9ef7bb78a6",
      "parents": [
        "d7c76f4c50887a7d7279373c1138ac56a1d6db3b"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Oct 11 05:21:10 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 12 15:55:52 2009 -0400"
      },
      "message": "mac80211: fix logic error ibss merge bssid check\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "53f7e35f8b7fc2f5620a863ac613bcf3080cb6ba",
      "tree": "63e2e7a0b1106fc1eeb3417d1310cd2fb5d01c5c",
      "parents": [
        "d1f6803a58e827fda7b810dcb7cbdb490d32ab9e"
      ],
      "author": {
        "name": "jamal",
        "email": "hadi@cyberus.ca",
        "time": "Sun Oct 11 04:21:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 11 23:03:47 2009 -0700"
      },
      "message": "pkt_sched: pedit use proper struct\n\nThis probably deserves to go into -stable.\n\nPedit will reject a policy that is large because it\nuses the wrong structure in the policy validation.\nThis fixes it.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d43c36dc6b357fa1806800f18aa30123c747a6d1",
      "tree": "339ce510073ecbe9b3592008f7dece7b277035ef",
      "parents": [
        "69585dd69e663a40729492c7b52eb82477a2027a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 07 17:09:06 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 11 11:20:58 2009 -0700"
      },
      "message": "headers: remove sched.h from interrupt.h\n\nAfter m68k\u0027s task_thread_info() doesn\u0027t refer to current,\nit\u0027s possible to remove sched.h from interrupt.h and not break m68k!\nMany thanks to Heiko Carstens for allowing this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "67972e0c238fa802580b5919f11e1de3da5179da",
      "tree": "27022c957154a9d36fc8aa0f020bed523e7849b3",
      "parents": [
        "ad61df918c44316940404891d5082c63e79c256a",
        "8a8e05e5d8f6155788761961fc9845328863c16d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 08 15:55:21 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 08 15:55:21 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "8a8e05e5d8f6155788761961fc9845328863c16d",
      "tree": "fc842a395135d7840b440d656cf31f0a7b1548f3",
      "parents": [
        "7e937c633f718e0916a294db7282c922c1bf3ce3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 08 21:02:02 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Oct 08 16:27:00 2009 -0400"
      },
      "message": "cfg80211: fix netns error unwinding bug\n\nThe error unwinding code in set_netns has a bug\nthat will make it run into a BUG_ON if passed a\nbad wiphy index, fix by not trying to unlock a\nwiphy that doesn\u0027t exist.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5587481e92105734e8e45a24fd8603228ec02449",
      "tree": "2de22ddd94e21f681825de002887f3cc89118edd",
      "parents": [
        "df87f344efac96cb9f9367e82509208216f1e0fa",
        "a4d63a943735efa30270ce70716d43323fd40f02"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 08 11:59:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 08 11:59:30 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (40 commits)\n  ethoc: limit the number of buffers to 128\n  ethoc: use system memory as buffer\n  ethoc: align received packet to make IP header at word boundary\n  ethoc: fix buffer address mapping\n  ethoc: fix typo to compute number of tx descriptors\n  au1000_eth: Duplicate test of RX_OVERLEN bit in update_rx_stats()\n  netxen: Fix Unlikely(x) \u003e y\n  pasemi_mac: ethtool get settings fix\n  add maintainer for network drop monitor kernel service\n  tg3: Fix phylib locking strategy\n  rndis_host: support ETHTOOL_GPERMADDR\n  ipv4: arp_notify address list bug\n  gigaset: add kerneldoc comments\n  gigaset: correct debugging output selection\n  gigaset: improve error recovery\n  gigaset: fix device ERROR response handling\n  gigaset: announce if built with debugging\n  gigaset: handle isoc frame errors more gracefully\n  gigaset: linearize skb\n  gigaset: fix reject/hangup handling\n  ...\n"
    },
    {
      "commit": "ad61df918c44316940404891d5082c63e79c256a",
      "tree": "a2d2287677479c1f198dc39fe67506712fe558f8",
      "parents": [
        "879e9304134bb6214fb52377ac1e01e1910f4916"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Oct 08 01:21:46 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 08 01:21:46 2009 -0700"
      },
      "message": "netlink: fix typo in initialization\n\nCommit 9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8 (\"[NETLINK]: Missing\ninitializations in dumped data\") introduced a typo in\ninitialization. This patch fixes this.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0819663d164e090de315c5e619f4e23c27aaff88",
      "tree": "c138ec7cab02eb3f9a7a5cc2cae416817e030926",
      "parents": [
        "9e7ba2465fd453429aa5849c2aadb526cda19034"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Oct 06 15:52:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 07 16:33:51 2009 -0400"
      },
      "message": "mac80211: use kfree_skb() to free struct sk_buff pointers\n\nkfree_skb() should be used to free struct sk_buff pointers.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fbc44bf7177dfd61381da55405550b693943a432",
      "tree": "9869e534f828dd3377cffd2917dfdb6cc72023d3",
      "parents": [
        "727c988593271599c9e5943699426afcce1a62d6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Oct 01 22:06:29 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 07 16:33:49 2009 -0400"
      },
      "message": "mac80211: fix vlan and optimise RX\n\nWhen receiving data frames, we can send them only to\nthe interface they belong to based on transmitting\nstation (this doesn\u0027t work for probe requests). Also,\ndon\u0027t try to handle other frames for AP_VLAN at all\nsince those interface should only receive data.\n\nAdditionally, the transmit side must check that the\nstation we\u0027re sending a frame to is actually on the\ninterface we\u0027re transmitting on, and not transmit\npackets to functions that live on other interfaces,\nso validate that as well.\n\nAnother bug fix is needed in sta_info.c where in the\nVLAN case when adding/removing stations we overwrite\nthe sdata variable we still need.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a21090cff296eb82b6de09304d64de466bdcaefc",
      "tree": "9fb1079548ed85e802c3cc46aa525ae51619e88c",
      "parents": [
        "1cec9727fbfd7baff2034796154be1a0297bcedd"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Oct 07 03:18:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 03:18:17 2009 -0700"
      },
      "message": "ipv4: arp_notify address list bug\n\nThis fixes a bug with arp_notify.\n\nIf arp_notify is enabled, kernel will crash if address is changed\nand no IP address is assigned.\n  http://bugzilla.kernel.org/show_bug.cgi?id\u003d14330\n\nReported-by: Hannes Frederic Sowa \u003channes@stressinduktion.org\u003e\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a160ee69c6a4622ed30c377a978554015e9931cb",
      "tree": "2f02de86e53fd318bee786a41bf397025addd222",
      "parents": [
        "5c6ae5b880b3d19cff6d14f0dcff3362e6f7ffdf"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Oct 05 02:22:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 05 02:22:23 2009 -0700"
      },
      "message": "wext: let get_wireless_stats() sleep\n\nA number of drivers (recently including cfg80211-based ones)\nassume that all wireless handlers, including statistics, can\nsleep and they often also implicitly assume that the rtnl is\nheld around their invocation. This is almost always true now\nexcept when reading from sysfs:\n\n  BUG: sleeping function called from invalid context at kernel/mutex.c:280\n  in_atomic(): 1, irqs_disabled(): 0, pid: 10450, name: head\n  2 locks held by head/10450:\n   #0:  (\u0026buffer-\u003emutex){+.+.+.}, at: [\u003cc10ceb99\u003e] sysfs_read_file+0x24/0xf4\n   #1:  (dev_base_lock){++.?..}, at: [\u003cc12844ee\u003e] wireless_show+0x1a/0x4c\n  Pid: 10450, comm: head Not tainted 2.6.32-rc3 #1\n  Call Trace:\n   [\u003cc102301c\u003e] __might_sleep+0xf0/0xf7\n   [\u003cc1324355\u003e] mutex_lock_nested+0x1a/0x33\n   [\u003cf8cea53b\u003e] wdev_lock+0xd/0xf [cfg80211]\n   [\u003cf8cea58f\u003e] cfg80211_wireless_stats+0x45/0x12d [cfg80211]\n   [\u003cc13118d6\u003e] get_wireless_stats+0x16/0x1c\n   [\u003cc12844fe\u003e] wireless_show+0x2a/0x4c\n\nFix this by using the rtnl instead of dev_base_lock.\n\nReported-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9240d7154e766ce6f3b615e81ed28f7562f509a5",
      "tree": "d8bc456e4b38cde9e4c5a5128f37dac5f66c6f0d",
      "parents": [
        "896a7cf8d846a9e86fb823be16f4f14ffeb7f074"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Oct 03 01:39:18 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 04 21:08:58 2009 -0700"
      },
      "message": "pktgen: restore nanosec delays\n\nCommit fd29cf72 (pktgen: convert to use ktime_t)\ninadvertantly converted \"delay\" parameter from nanosec to microsec.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "896a7cf8d846a9e86fb823be16f4f14ffeb7f074",
      "tree": "2260fac9cccf51938d710ab0fc74dc0fa0503a4f",
      "parents": [
        "a825e00c98a2ee37eb2a0ad93b352e79d2bc1593"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 02 20:24:59 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 04 21:08:54 2009 -0700"
      },
      "message": "pktgen: Fix multiqueue handling\n\nIt is not currently possible to instruct pktgen to use one selected tx queue.\n\nWhen Robert added multiqueue support in commit 45b270f8, he added\nan interval (queue_map_min, queue_map_max), and his code doesnt take\ninto account the case of min \u003d max, to select one tx queue exactly.\n\nI suspect a high performance setup on a eight txqueue device wants\nto use exactly eight cpus, and assign one tx queue to each sender.\n\nThis patchs makes pktgen select the right tx queue, not the first one.\n\nAlso updates Documentation to reflect Robert changes.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Robert Olsson \u003crobert.olsson@its.uu.se\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a99bbaf5ee6bad1aca0c88ea65ec6e5373e86184",
      "tree": "2b0314d68b9e0a76e8f4fb60865a1d56e138833a",
      "parents": [
        "5e5027bd26ed4df735d29e66cd5c1c9b5959a587"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Oct 04 16:11:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 04 15:05:10 2009 -0700"
      },
      "message": "headers: remove sched.h from poll.h\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "90d5ffc729e92bffc0f84e2447e2e6dc280240a5",
      "tree": "ee8e912a1e92ea612843af7492199e977f29ee89",
      "parents": [
        "0efe5e32c8729ef44b00d9a7203e4c99a6378b27",
        "6053bbf7bbdbb2c94547f830ad07636c17d7024e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 02 13:37:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 02 13:37:18 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (46 commits)\n  cnic: Fix NETDEV_UP event processing.\n  uvesafb/connector: Disallow unpliviged users to send netlink packets\n  pohmelfs/connector: Disallow unpliviged users to configure pohmelfs\n  dst/connector: Disallow unpliviged users to configure dst\n  dm/connector: Only process connector packages from privileged processes\n  connector: Removed the destruct_data callback since it is always kfree_skb()\n  connector/dm: Fixed a compilation warning\n  connector: Provide the sender\u0027s credentials to the callback\n  connector: Keep the skb in cn_callback_data\n  e1000e/igb/ixgbe: Don\u0027t report an error if devices don\u0027t support AER\n  net: Fix wrong sizeof\n  net: splice() from tcp to pipe should take into account O_NONBLOCK\n  net: Use sk_mark for routing lookup in more places\n  sky2: irqname based on pci address\n  skge: use unique IRQ name\n  IPv4 TCP fails to send window scale option when window scale is zero\n  net/ipv4/tcp.c: fix min() type mismatch warning\n  Kconfig: STRIP: Remove stale bits of STRIP help text\n  NET: mkiss: Fix typo\n  tg3: Remove prev_vlan_tag from struct tx_ring_info\n  ...\n"
    },
    {
      "commit": "42324c62704365d6a3e89138dea55909d2f26afe",
      "tree": "6a56f042aebb4e0dbc8da7e904d79989e42b3666",
      "parents": [
        "914a9ab386a288d0f22252fc268ecbc048cdcbd5"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Oct 01 15:26:00 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 02 09:46:05 2009 -0700"
      },
      "message": "net: splice() from tcp to pipe should take into account O_NONBLOCK\n\ntcp_splice_read() doesnt take into account socket\u0027s O_NONBLOCK flag\n\nBefore this patch :\n\nsplice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE);\ncauses a random endless block (if pipe is full) and\nsplice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE | SPLICE_F_NONBLOCK);\nwill return 0 immediately if the TCP buffer is empty.\n\nUser application has no way to instruct splice() that socket should be in blocking mode\nbut pipe in nonblock more.\n\nMany projects cannot use splice(tcp -\u003e pipe) because of this flaw.\n\nhttp://git.samba.org/?p\u003dsamba.git;a\u003dhistory;f\u003dsource3/lib/recvfile.c;h\u003dea0159642137390a0f7e57a123684e6e63e47581;hb\u003dHEAD\nhttp://lkml.indiana.edu/hypermail/linux/kernel/0807.2/0687.html\n\nLinus introduced  SPLICE_F_NONBLOCK in commit 29e350944fdc2dfca102500790d8ad6d6ff4f69d\n(splice: add SPLICE_F_NONBLOCK flag )\n\n  It doesn\u0027t make the splice itself necessarily nonblocking (because the\n  actual file descriptors that are spliced from/to may block unless they\n  have the O_NONBLOCK flag set), but it makes the splice pipe operations\n  nonblocking.\n\nLinus intention was clear : let SPLICE_F_NONBLOCK control the splice pipe mode only\n\nThis patch instruct tcp_splice_read() to use the underlying file O_NONBLOCK\nflag, as other socket operations do.\n\nUsers will then call :\n\nsplice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE | SPLICE_F_NONBLOCK );\n\nto block on data coming from socket (if file is in blocking mode),\nand not block on pipe output (to avoid deadlock)\n\nFirst version of this patch was submitted by Octavian Purdila\n\nReported-by: Volker Lendecke \u003cvl@samba.org\u003e\nReported-by: Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "914a9ab386a288d0f22252fc268ecbc048cdcbd5",
      "tree": "5bc164381e7ff1b55990288b67ae014b5ed668ea",
      "parents": [
        "66466797c7e2406579724e42eb9cfe05d53a882b"
      ],
      "author": {
        "name": "Atis Elsts",
        "email": "atis@mikrotik.com",
        "time": "Thu Oct 01 15:16:49 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 01 15:16:49 2009 -0700"
      },
      "message": "net: Use sk_mark for routing lookup in more places\n\nThis patch against v2.6.31 adds support for route lookup using sk_mark in some \nmore places. The benefits from this patch are the following.\nFirst, SO_MARK option now has effect on UDP sockets too.\nSecond, ip_queue_xmit() and inet_sk_rebuild_header() could fail to do routing \nlookup correctly if TCP sockets with SO_MARK were used.\n\nSigned-off-by: Atis Elsts \u003catis@mikrotik.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n"
    },
    {
      "commit": "89e95a613c8a045ce0c5b992ba19f10613f6ab2f",
      "tree": "c2e00d58e520ac114362631d672ea2aa198b9d43",
      "parents": [
        "4fdb78d3093a347456e108b77d56d493d29071b2"
      ],
      "author": {
        "name": "Ori Finkelman",
        "email": "ori@comsleep.com",
        "time": "Thu Oct 01 06:41:59 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 01 15:14:51 2009 -0700"
      },
      "message": "IPv4 TCP fails to send window scale option when window scale is zero\n\nAcknowledge TCP window scale support by inserting the proper option in SYN/ACK\nand SYN headers even if our window scale is zero.\n\nThis fixes the following observed behavior:\n\n1. Client sends a SYN with TCP window scaling option and non zero window scale\nvalue to a Linux box.\n2. Linux box notes large receive window from client.\n3. Linux decides on a zero value of window scale for its part.\n4. Due to compare against requested window scale size option, Linux does not to\n send windows scale TCP option header on SYN/ACK at all.\n\nWith the following result:\n\nClient box thinks TCP window scaling is not supported, since SYN/ACK had no\nTCP window scale option, while Linux thinks that TCP window scaling is\nsupported (and scale might be non zero), since SYN had  TCP window scale\noption and we have a mismatched idea between the client and server\nregarding window sizes.\n\nProbably it also fixes up the following bug (not observed in practice):\n\n1. Linux box opens TCP connection to some server.\n2. Linux decides on zero value of window scale.\n3. Due to compare against computed window scale size option, Linux does\nnot to set windows scale TCP  option header on SYN.\n\nWith the expected result that the server OS does not use window scale option\ndue to not receiving such an option in the SYN headers, leading to suboptimal\nperformance.\n\nSigned-off-by: Gilad Ben-Yossef \u003cgilad@codefidence.com\u003e\nSigned-off-by: Ori Finkelman \u003cori@comsleep.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fdb78d3093a347456e108b77d56d493d29071b2",
      "tree": "2ad6dc10dc3603d40caaa26fbdb6684f30987a4e",
      "parents": [
        "28ad3957b913855e8d41a27f7b90bed944809625"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Oct 01 15:02:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 01 15:02:20 2009 -0700"
      },
      "message": "net/ipv4/tcp.c: fix min() type mismatch warning\n\nnet/ipv4/tcp.c: In function \u0027do_tcp_setsockopt\u0027:\nnet/ipv4/tcp.c:2050: warning: comparison of distinct pointer types lacks a cast\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "a98917acc73181668f2188ec617fea9ce3ac3944"
}
