)]}'
{
  "log": [
    {
      "commit": "7ec75c582e639d956ce3afd499f67febe6f902a4",
      "tree": "4752d1cc90ab385797d526cb901e42f27e3b20f6",
      "parents": [
        "d4c4f07df16c767b8efbc44e7cdf795fac326b33"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 27 06:22:01 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 27 12:39:01 2010 -0700"
      },
      "message": "net: suppress RCU lockdep false positive in twsk_net()\n\nCalls to twsk_net() are in some cases protected by reference counting\nas an alternative to RCU protection.  Cases covered by reference counts\ninclude __inet_twsk_kill(), inet_twsk_free(), inet_twdr_do_twkill_work(),\ninet_twdr_twcal_tick(), and tcp_timewait_state_process().  RCU is used\nby inet_twsk_purge().  Locking is used by established_get_first()\nand established_get_next().  Finally, __inet_twsk_hashdance() is an\ninitialization case.\n\nIt appears to be non-trivial to locate the appropriate locks and\nreference counts from within twsk_net(), so used rcu_dereference_raw().\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7d6a4321195c32b548f0185a2fa0b8f6e02bcfc",
      "tree": "565faf60d0a2cf77f34275b77a775e3e4a5fb8d5",
      "parents": [
        "4b340ae20d0e2366792abe70f46629e576adaf5e",
        "08b202b6726459626c73ecfa08fcdc8c3efc76c2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 23 23:37:24 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 23 23:37:24 2010 -0700"
      },
      "message": "Merge branch \u0027net-next-2.6_20100423a/br/br_multicast_v3\u0027 of git://git.linux-ipv6.org/gitroot/yoshfuji/linux-2.6-next\n"
    },
    {
      "commit": "4b340ae20d0e2366792abe70f46629e576adaf5e",
      "tree": "b0c413a0348e722fbc23d45508224076b6e60f92",
      "parents": [
        "13b52cd44670e3359055e9918d0e766d89836425"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Fri Apr 23 11:26:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 23 23:35:29 2010 -0700"
      },
      "message": "IPv6: Complete IPV6_DONTFRAG support\n\nFinally add support to detect a local IPV6_DONTFRAG event\nand return the relevant data to the user if they\u0027ve enabled\nIPV6_RECVPATHMTU on the socket.  The next recvmsg() will\nreturn no data, but have an IPV6_PATHMTU as ancillary data.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13b52cd44670e3359055e9918d0e766d89836425",
      "tree": "7685597f218fd02dab9abdb32ea0d4ec7c318027",
      "parents": [
        "793b14731686595a741d9f47726ad8b9a235385a"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Fri Apr 23 11:26:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 23 23:35:28 2010 -0700"
      },
      "message": "IPv6: Add dontfrag argument to relevant functions\n\nAdd dontfrag argument to relevant functions for\nIPV6_DONTFRAG support, as well as allowing the value\nto be passed-in via ancillary cmsg data.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b51cc996e81d8a113416d8094fa4a88f8360a51",
      "tree": "e75b98b228bb4e456c30673fcc4b56ffa1d09cf5",
      "parents": [
        "c68ed255265968c3948fa2678bf59d15c471b055",
        "672724403b42da1d276c6cf811e8e34d15efd964"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 23 14:43:45 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 23 14:43:45 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 into for-davem\n\nConflicts:\n\tdrivers/net/wireless/ath/ath9k/phy.c\n\tdrivers/net/wireless/iwlwifi/iwl-6000.c\n\tdrivers/net/wireless/iwlwifi/iwl-debugfs.c\n"
    },
    {
      "commit": "6e7cb8370760ec17e10098399822292def8d84f3",
      "tree": "879ad4284b71e6095bb0128de5b2f02007f27f30",
      "parents": [
        "efe91932e79cfe59a562b70d8eb18049b36debc6"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Apr 18 12:42:05 2010 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Apr 23 13:35:55 2010 +0900"
      },
      "message": "ipv6 mcast: Introduce include/net/mld.h for MLD definitions.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "5ebfbc06aae941484326c9e7e9c4d85330f63591",
      "tree": "35719a9023c47bdaaf25771c03836a15150dc741",
      "parents": [
        "f68c224fedff2157f3fad7f7da674cbc96567c84"
      ],
      "author": {
        "name": "Andrew Hendry",
        "email": "andrew.hendry@gmail.com",
        "time": "Thu Apr 22 16:12:36 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 22 16:12:36 2010 -0700"
      },
      "message": "X25: Add if_x25.h and x25 to device identifiers\n\nV2 Feedback from John Hughes.\n- Add header for userspace implementations such as xot/xoe to use\n- Use explicit values for interface stability\n- No changes to driver patches\n\nV1\n- Use identifiers instead of magic numbers for X25 layer 3 to device interface.\n- Also fixed checkpatch notes on updated code.\n\n[ Add new user header to include/linux/Kbuild  -DaveM ]\n\nSigned-off-by: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f68c224fedff2157f3fad7f7da674cbc96567c84",
      "tree": "848340e2220cffa5de706d5a142b5beeaa02c643",
      "parents": [
        "40eaf96271526a9f71030dd1a199ce46c045752e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 22 16:06:59 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 22 16:06:59 2010 -0700"
      },
      "message": "dst: rcu check refinement\n\n__sk_dst_get() might be called from softirq, with socket lock held.\n\n[  159.026180] include/net/sock.h:1200 invoked rcu_dereference_check()\nwithout protection!\n[  159.026261] \n[  159.026261] other info that might help us debug this:\n[  159.026263] \n[  159.026425] \n[  159.026426] rcu_scheduler_active \u003d 1, debug_locks \u003d 0\n[  159.026552] 2 locks held by swapper/0:\n[  159.026609]  #0:  (\u0026icsk-\u003eicsk_retransmit_timer){+.-...}, at:\n[\u003cffffffff8104fc15\u003e] run_timer_softirq+0x105/0x350\n[  159.026839]  #1:  (slock-AF_INET){+.-...}, at: [\u003cffffffff81392b8f\u003e]\ntcp_write_timer+0x2f/0x1e0\n[  159.027063] \n[  159.027064] stack backtrace:\n[  159.027172] Pid: 0, comm: swapper Not tainted\n2.6.34-rc5-03707-gde498c8-dirty #36\n[  159.027252] Call Trace:\n[  159.027306]  \u003cIRQ\u003e  [\u003cffffffff810718ef\u003e] lockdep_rcu_dereference\n+0xaf/0xc0\n[  159.027411]  [\u003cffffffff8138e4f7\u003e] tcp_current_mss+0xa7/0xb0\n[  159.027537]  [\u003cffffffff8138fa49\u003e] tcp_write_wakeup+0x89/0x190\n[  159.027600]  [\u003cffffffff81391936\u003e] tcp_send_probe0+0x16/0x100\n[  159.027726]  [\u003cffffffff81392cd9\u003e] tcp_write_timer+0x179/0x1e0\n[  159.027790]  [\u003cffffffff8104fca1\u003e] run_timer_softirq+0x191/0x350\n[  159.027980]  [\u003cffffffff810477ed\u003e] __do_softirq+0xcd/0x200\n\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa2ea0586d9dbe56a334d835a43b45e8c2104e77",
      "tree": "1f218166bff8513858ac253e84264a4a8fe9ff0d",
      "parents": [
        "3cfa856d6d43894ebffdc28d2f0587595280893b"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Thu Apr 22 07:00:24 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 22 16:00:00 2010 -0700"
      },
      "message": "tcp: fix outsegs stat for TSO segments\n\nAccount for TSO segments of an skb in TCP_MIB_OUTSEGS counter.  Without\ndoing this, the counter can be off by orders of magnitude from the\nactual number of segments sent.\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "672724403b42da1d276c6cf811e8e34d15efd964",
      "tree": "3664f85476b667625aa37f3493e6bc0791f11ef9",
      "parents": [
        "81b208a6b6e2923dcc2dd5292f0d2ffe20b5d16f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Apr 21 10:25:36 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 21 14:15:19 2010 -0400"
      },
      "message": "radiotap parser: fix endian annotation\n\nWhen I updated this from the corresponding\nuserspace library, an annotation error crept\nin -- this variable needs to be annotated as\nlittle endian. No effect on code generation.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aa395145165cb06a0d0885221bbe0ce4a564391d",
      "tree": "118b0403621f10db8dc3dbf12079f9af5b19e05d",
      "parents": [
        "ab9304717f7624c41927f442e6b6d418b2d8b3e4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Apr 20 13:03:51 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 20 16:37:13 2010 -0700"
      },
      "message": "net: sk_sleep() helper\n\nDefine a new function to return the waitqueue of a \"struct sock\".\n\nstatic inline wait_queue_head_t *sk_sleep(struct sock *sk)\n{\n\treturn sk-\u003esk_sleep;\n}\n\nChange all read occurrences of sk_sleep by a call to this function.\n\nNeeded for a future RCU conversion. sk_sleep wont be a field directly\navailable.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f79d9bad37cb1e7ef23d60b1dd0b7859957ced9e",
      "tree": "455199d0e2560726656858deffe12b7aa702a522",
      "parents": [
        "3bb065a7420c90421d6bbea5f7cffe36bd79a048"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Apr 19 19:57:35 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 20 11:52:21 2010 -0400"
      },
      "message": "mac80211: add flags for STBC (Space-Time Block Coding)\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "80725f454e58937ad546103e6a141c46b0d65a1b",
      "tree": "efebdd49c7f034cdc870e9e72c326cae7eeb7e34",
      "parents": [
        "55ee82b500551f80720de57a00d2990d56cf08a8"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Tue Apr 20 08:16:37 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 20 11:50:52 2010 -0400"
      },
      "message": "mac80211: document IEEE80211_CONF_CHANGE_QOS\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1289723ef238908ca8d95ff48a46ee0de970f882",
      "tree": "b4d584aee8abcc33dec2039fb45112156d3cd3d0",
      "parents": [
        "03ceedea972a82d343fa5c2528b3952fa9e615d5"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "holgerschurig@gmail.com",
        "time": "Mon Apr 19 10:23:57 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 20 11:50:52 2010 -0400"
      },
      "message": "mac80211: sample survey implementation for mac80211 \u0026 hwsim\n\nThis adds the survey function to both mac80211 itself and to mac80211_hwsim.\nFor the latter driver, we simply invent some noise level.A real driver which\ncannot determine the real channel noise MUST NOT report any noise, especially\nnot a magically conjured one :-)\n\nSigned-off-by: Holger Schurig \u003cholgerschurig@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "03ceedea972a82d343fa5c2528b3952fa9e615d5",
      "tree": "7b46f62e4fd82e969bc1cea1999249d25234e330",
      "parents": [
        "e8958330190c57c0d32bee88b64a12de2f58059f"
      ],
      "author": {
        "name": "Daniel Yingqiang Ma",
        "email": "yma.cool@gmail.com",
        "time": "Tue Apr 13 15:12:07 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 20 11:50:51 2010 -0400"
      },
      "message": "ath9k: Group Key fix for VAPs\n\nWhen I set up multiple VAPs with ath9k, I encountered an issue that\nthe traffic may be lost after a while.\n\nThe detailed phenomenon is\n1. After a while the clients connected to one of these VAPs will get\ninto a state that no broadcast/multicast packets can be transfered\nsuccessfully while the unicast packets can be transfered normally.\n2. Minutes latter the unitcast packets transfer will fail as well,\nbecause the ARP entry is expired and it can\u0027t be freshed due to the\nbroadcast trouble.\n\nIt\u0027s caused by the group key overwritten and someone discussed this\nissue in ath9k-devel maillist before, but haven\u0027t work out a fix yet.\n\nI referred the method in madwifi, and made a patch for ath9k.\nThe method is to set the high bit of the sender(AP)\u0027s address, and\nassociated that mac and the group key. It requires the hardware\nsupports multicast frame key search. It seems true for AR9160.\n\nNot sure whether it\u0027s the correct way to fix this issue. But it seems\nto work in my test. The patch is attached, feel free to revise it.\n\nSigned-off-by: Daniel Yingqiang ma \u003cyma.cool@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "93d95b12b3ba06e0e1f3e43a370ee61539d8cb90",
      "tree": "dd47ad008a948d422d07c1635f7d5ae1ee03999a",
      "parents": [
        "76026660c3699a82d1df2d04f6dd81af01d9d19a"
      ],
      "author": {
        "name": "Daniel Halperin",
        "email": "dhalperi@cs.washington.edu",
        "time": "Sun Apr 18 09:28:18 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 19 16:41:42 2010 -0400"
      },
      "message": "mac80211: fix typo in comments\n\nThe flag is called IEEE80211_TX_STAT_AMPDU rather than using the whole word\nSTATUS.\n\nSigned-off-by: Daniel Halperin \u003cdhalperi@cs.washington.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fec5e652e58fa6017b2c9e06466cb2a6538de5b4",
      "tree": "e034f2a1e7930a0a225bd30896f834ec5e09c084",
      "parents": [
        "b5d43998234331b9c01bd2165fdbb25115f4387f"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Fri Apr 16 16:01:27 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 16 16:01:27 2010 -0700"
      },
      "message": "rfs: Receive Flow Steering\n\nThis patch implements receive flow steering (RFS).  RFS steers\nreceived packets for layer 3 and 4 processing to the CPU where\nthe application for the corresponding flow is running.  RFS is an\nextension of Receive Packet Steering (RPS).\n\nThe basic idea of RFS is that when an application calls recvmsg\n(or sendmsg) the application\u0027s running CPU is stored in a hash\ntable that is indexed by the connection\u0027s rxhash which is stored in\nthe socket structure.  The rxhash is passed in skb\u0027s received on\nthe connection from netif_receive_skb.  For each received packet,\nthe associated rxhash is used to look up the CPU in the hash table,\nif a valid CPU is set then the packet is steered to that CPU using\nthe RPS mechanisms.\n\nThe convolution of the simple approach is that it would potentially\nallow OOO packets.  If threads are thrashing around CPUs or multiple\nthreads are trying to read from the same sockets, a quickly changing\nCPU value in the hash table could cause rampant OOO packets--\nwe consider this a non-starter.\n\nTo avoid OOO packets, this solution implements two types of hash\ntables: rps_sock_flow_table and rps_dev_flow_table.\n\nrps_sock_table is a global hash table.  Each entry is just a CPU\nnumber and it is populated in recvmsg and sendmsg as described above.\nThis table contains the \"desired\" CPUs for flows.\n\nrps_dev_flow_table is specific to each device queue.  Each entry\ncontains a CPU and a tail queue counter.  The CPU is the \"current\"\nCPU for a matching flow.  The tail queue counter holds the value\nof a tail queue counter for the associated CPU\u0027s backlog queue at\nthe time of last enqueue for a flow matching the entry.\n\nEach backlog queue has a queue head counter which is incremented\non dequeue, and so a queue tail counter is computed as queue head\ncount + queue length.  When a packet is enqueued on a backlog queue,\nthe current value of the queue tail counter is saved in the hash\nentry of the rps_dev_flow_table.\n\nAnd now the trick: when selecting the CPU for RPS (get_rps_cpu)\nthe rps_sock_flow table and the rps_dev_flow table for the RX queue\nare consulted.  When the desired CPU for the flow (found in the\nrps_sock_flow table) does not match the current CPU (found in the\nrps_dev_flow table), the current CPU is changed to the desired CPU\nif one of the following is true:\n\n- The current CPU is unset (equal to RPS_NO_CPU)\n- Current CPU is offline\n- The current CPU\u0027s queue head counter \u003e\u003d queue tail counter in the\nrps_dev_flow table.  This checks if the queue tail has advanced\nbeyond the last packet that was enqueued using this table entry.\nThis guarantees that all packets queued using this entry have been\ndequeued, thus preserving in order delivery.\n\nMaking each queue have its own rps_dev_flow table has two advantages:\n1) the tail queue counters will be written on each receive, so\nkeeping the table local to interrupting CPU s good for locality.  2)\nthis allows lockless access to the table-- the CPU number and queue\ntail counter need to be accessed together under mutual exclusion\nfrom netif_receive_skb, we assume that this is only called from\ndevice napi_poll which is non-reentrant.\n\nThis patch implements RFS for TCP and connected UDP sockets.\nIt should be usable for other flow oriented protocols.\n\nThere are two configuration parameters for RFS.  The\n\"rps_flow_entries\" kernel init parameter sets the number of\nentries in the rps_sock_flow_table, the per rxqueue sysfs entry\n\"rps_flow_cnt\" contains the number of entries in the rps_dev_flow\ntable for the rxqueue.  Both are rounded to power of two.\n\nThe obvious benefit of RFS (over just RPS) is that it achieves\nCPU locality between the receive processing for a flow and the\napplications processing; this can result in increased performance\n(higher pps, lower latency).\n\nThe benefits of RFS are dependent on cache hierarchy, application\nload, and other factors.  On simple benchmarks, we don\u0027t necessarily\nsee improvement and sometimes see degradation.  However, for more\ncomplex benchmarks and for applications where cache pressure is\nmuch higher this technique seems to perform very well.\n\nBelow are some benchmark results which show the potential benfit of\nthis patch.  The netperf test has 500 instances of netperf TCP_RR\ntest with 1 byte req. and resp.  The RPC test is an request/response\ntest similar in structure to netperf RR test ith 100 threads on\neach host, but does more work in userspace that netperf.\n\ne1000e on 8 core Intel\n   No RFS or RPS\t\t104K tps at 30% CPU\n   No RFS (best RPS config):    290K tps at 63% CPU\n   RFS\t\t\t\t303K tps at 61% CPU\n\nRPC test\ttps\tCPU%\t50/90/99% usec latency\tLatency StdDev\n  No RFS/RPS\t103K\t48%\t757/900/3185\t\t4472.35\n  RPS only:\t174K\t73%\t415/993/2468\t\t491.66\n  RFS\t\t223K\t73%\t379/651/1382\t\t315.61\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a56bd0ae3f84dbd63535205b18b1a736abaa920",
      "tree": "d8b78b8b446a878c84d8f928b882c78005f682b9",
      "parents": [
        "e5003249ae7165654e13fd4809caa346820547f5"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Apr 15 17:39:37 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 16 15:43:48 2010 -0400"
      },
      "message": "mac80211: add LDPC control flag\n\nLDPC will be enabled through the rate control algorithm\nfor each buffer the the tx_info flags.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4e15ed4d930297c127d280ca1d0c785be870def4",
      "tree": "e0808d650ae66cf273758496100d3d24739a9e48",
      "parents": [
        "0eecb784942792863b77dfe11e0c7e286e92db85"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Thu Apr 15 16:43:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 15 23:36:37 2010 -0700"
      },
      "message": "net: replace ipfragok with skb-\u003elocal_df\n\nAs Herbert Xu said: we should be able to simply replace ipfragok\nwith skb-\u003elocal_df. commit f88037(sctp: Drop ipfargok in sctp_xmit function)\nhas droped ipfragok and set local_df value properly.\n\nThe patch kills the ipfragok parameter of .queue_xmit().\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c01d5669356e13f0fb468944c1dd4c6a7e978ad",
      "tree": "fa43345288d7b25fac92b3b35360a177c4947313",
      "parents": [
        "fea069152614cdeefba4b2bf80afcddb9c217fc8",
        "a5e944f1d955f3819503348426763e21e0413ba6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n"
    },
    {
      "commit": "f0ad0860d01e47a3ffd220564c5c653b3afbe962",
      "tree": "91b69423f472b934daa2c18ae3b7ba065b7c7898",
      "parents": [
        "0c12295a741d3186987f96f518cfbdaf01abb087"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:23 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:34 2010 -0700"
      },
      "message": "ipv4: ipmr: support multiple tables\n\nThis patch adds support for multiple independant multicast routing instances,\nnamed \"tables\".\n\nUserspace multicast routing daemons can bind to a specific table instance by\nissuing a setsockopt call using a new option MRT_TABLE. The table number is\nstored in the raw socket data and affects all following ipmr setsockopt(),\ngetsockopt() and ioctl() calls. By default, a single table (RT_TABLE_DEFAULT)\nis created with a default routing rule pointing to it. Newly created pimreg\ndevices have the table number appended (\"pimregX\"), with the exception of\ndevices created in the default table, which are named just \"pimreg\" for\ncompatibility reasons.\n\nPackets are directed to a specific table instance using routing rules,\nsimilar to how regular routing rules work. Currently iif, oif and mark\nare supported as keys, source and destination addresses could be supported\nadditionally.\n\nExample usage:\n\n- bind pimd/xorp/... to a specific table:\n\nuint32_t table \u003d 123;\nsetsockopt(fd, IPPROTO_IP, MRT_TABLE, \u0026table, sizeof(table));\n\n- create routing rules directing packets to the new table:\n\n# ip mrule add iif eth0 lookup 123\n# ip mrule add oif eth0 lookup 123\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c12295a741d3186987f96f518cfbdaf01abb087",
      "tree": "e71d0f5e5193870318e86cd519edf728b1e2a079",
      "parents": [
        "862465f2e7e90975e7bf0ecfbb171dd3adedd950"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:34 2010 -0700"
      },
      "message": "ipv4: ipmr: move mroute data into seperate structure\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "862465f2e7e90975e7bf0ecfbb171dd3adedd950",
      "tree": "281c43f90130cc23eb581c702afaf4ab226dbff5",
      "parents": [
        "d658f8a0e63b6476148162aa7a3ffffc58dcad52"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:33 2010 -0700"
      },
      "message": "ipv4: ipmr: convert struct mfc_cache to struct list_head\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e258beb22f4d3ea3dc88586ffc9c990d0eb03380",
      "tree": "7bd4dc984757894cbfb355189e9172a4a566596c",
      "parents": [
        "f74e49b5613206fb18468bdc9509a1db746aa01b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:32 2010 -0700"
      },
      "message": "ipv4: ipmr: move unres_queue and timer to per-namespace data\n\nThe unres_queue is currently shared between all namespaces. Following patches\nwill additionally allow to create multiple multicast routing tables in each\nnamespace. Having a single shared queue for all these users seems to excessive,\nmove the queue and the cleanup timer to the per-namespace data to unshare it.\n\nAs a side-effect, this fixes a bug in the seq file iteration functions: the\nfirst entry returned is always from the current namespace, entries returned\nafter that may belong to any namespace.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f74e49b5613206fb18468bdc9509a1db746aa01b",
      "tree": "2b45092158d7df385822fd1e21a5433f7ffdb8d1",
      "parents": [
        "0f87b1dd01b51dc3c789f7a212656a4a87eee1bd"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:31 2010 -0700"
      },
      "message": "ipv4: raw: move struct raw_sock and raw_sk() to include/net/raw.h\n\nA following patch will use struct raw_sock to store state for ipmr,\nso having the definitions in icmp.h doesn\u0027t fit very well anymore.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8a566beaa75c6ad5e38cdccf0ea5294323e7866",
      "tree": "56fc11f0806e9e869e65c44a697c896add4b78f6",
      "parents": [
        "561155110307ad304226a23272244398fa46cbae"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Apr 13 05:03:15 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 14:49:30 2010 -0700"
      },
      "message": "net: fib_rules: consolidate IPv4 and DECnet -\u003edefault_pref() functions.\n\nBoth functions are equivalent, consolidate them since a following patch\nneeds a third implementation for multicast routing.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b6c6712a42ca3f9fa7f4a3d7c40e3a9dd1fd9e03",
      "tree": "42032b4978874e8ffcf6c851d13324b8c8c7c113",
      "parents": [
        "7a161ea92471087a1579239d7a58dd06eaa5601c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 08 23:03:29 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 13 01:41:33 2010 -0700"
      },
      "message": "net: sk_dst_cache RCUification\n\nWith latest CONFIG_PROVE_RCU stuff, I felt more comfortable to make this\nwork.\n\nsk-\u003esk_dst_cache is currently protected by a rwlock (sk_dst_lock)\n\nThis rwlock is readlocked for a very small amount of time, and dst\nentries are already freed after RCU grace period. This calls for RCU\nagain :)\n\nThis patch converts sk_dst_lock to a spinlock, and use RCU for readers.\n\n__sk_dst_get() is supposed to be called with rcu_read_lock() or if\nsocket locked by user, so use appropriate rcu_dereference_check()\ncondition (rcu_read_lock_held() || sock_owned_by_user(sk))\n\nThis patch avoids two atomic ops per tx packet on UDP connected sockets,\nfor example, and permits sk_dst_lock to be much less dirtied.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb29624614c2afe2873ee8ee97cf09df42701694",
      "tree": "aea85e4cd6643fb47beba987849378c0e80166a0",
      "parents": [
        "8ad50d96db58c58ba67ec1c6f9d3dae0db52338a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Apr 11 02:15:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 15:29:09 2010 -0700"
      },
      "message": "inet: Remove unused send_check length argument\n\ninet: Remove unused send_check length argument\n\nThis patch removes the unused length argument from the send_check\nfunction in struct inet_connection_sock_af_ops.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nTested-by: Yinghai \u003cyinghai.lu@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "4a1032faac94ebbf647460ae3e06fc21146eb280",
      "tree": "7f31b97beb0406faa1523e619289ad0ab07c9787",
      "parents": [
        "ae4e8d63b5619d4d95f1d2bfa2b836caa6e62d06",
        "0eddb519b9127c73d53db4bf3ec1d45b13f844d1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
      "tree": "f360f4ecacba17132c81ac37b6b737f1458f2d02",
      "parents": [
        "0a5bff744a6263d397f88671ed2f772da9c64989"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Thu Apr 08 11:27:42 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 08 11:27:42 2010 -0700"
      },
      "message": "xfrm: Fix crashes in xfrm_lookup()\n\nFrom: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n\nHappens because CONFIG_XFRM_SUB_POLICY is not enabled, and one of\nthe helper functions I used did unexpected things in that case.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f2df9eac70423838a1f8d410fd3899ddd88317b",
      "tree": "0617f723320d83eca5cef9c964c001014e74213f",
      "parents": [
        "8c11e4ab09ffb975a89802dde0e9aa52a53b8aa5",
        "1144601118507f8b3b676a9a392584d216d3f2cc"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 13:34:54 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 08 13:34:54 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into merge\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/iwlwifi/iwl-4965.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.c\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n"
    },
    {
      "commit": "f5eb917b861828da18dc28854308068c66d1449a",
      "tree": "aa45d1a809abbe426b55dc89b8167e5a6609d418",
      "parents": [
        "fd218cf9557b9bf7061365a8fe7020a56d3f767c"
      ],
      "author": {
        "name": "John Hughes",
        "email": "john@calva.com",
        "time": "Wed Apr 07 21:29:25 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 07 21:29:25 2010 -0700"
      },
      "message": "x25: Patch to fix bug 15678 - x25 accesses fields beyond end of packet.\n\nHere is a patch to stop X.25 examining fields beyond the end of the packet.\n\nFor example, when a simple CALL ACCEPTED was received:\n\n\t10 10 0f\n\nx25_parse_facilities was attempting to decode the FACILITIES field, but this\npacket contains no facilities field.\n\nSigned-off-by: John Hughes \u003cjohn@calva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5cdfacb35ed886271d1ccfffbded98d3447da17",
      "tree": "8233a713949c4c8da8c98e75868efc74d5613c3d",
      "parents": [
        "7590a550b88b8c3cb025f0a8ed58e279ad62e4c1"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sun Apr 04 09:37:19 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:37:56 2010 -0400"
      },
      "message": "cfg80211: Add local-state-change-only auth/deauth/disassoc\n\ncfg80211 is quite strict on allowing authentication and association\ncommands only in certain states. In order to meet these requirements,\nuser space applications may need to clear authentication or\nassociation state in some cases. Currently, this can be done with\ndeauth/disassoc command, but that ends up sending out Deauthentication\nor Disassociation frame unnecessarily. Add a new nl80211 attribute to\nallow this sending of the frame be skipped, but with all other\ndeauth/disassoc operations being completed.\n\nSimilar state change is also needed for IEEE 802.11r FT protocol in\nthe FT-over-DS case which does not use Authentication frame exchange\nin a transition to another BSS. For this to work with cfg80211, an\nauthentication entry needs to be created for the target BSS without\nsending out an Authentication frame. The nl80211 authentication\ncommand can be used for this purpose, too, with the new attribute to\nindicate that the command is only for changing local state. This\nenables wpa_supplicant to complete FT-over-DS transition successfully.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "80c802f3073e84c956846e921e8a0b02dfa3755f",
      "tree": "895dc92dcf6b658d78838e0a23db3dd29c8be695",
      "parents": [
        "fe1a5f031e76bd8761a7803d75b95ee96e84a574"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Wed Apr 07 00:30:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 07 03:43:19 2010 -0700"
      },
      "message": "xfrm: cache bundles instead of policies for outgoing flows\n\n__xfrm_lookup() is called for each packet transmitted out of\nsystem. The xfrm_find_bundle() does a linear search which can\nkill system performance depending on how many bundles are\nrequired per policy.\n\nThis modifies __xfrm_lookup() to store bundles directly in\nthe flow cache. If we did not get a hit, we just create a new\nbundle instead of doing slow search. This means that we can now\nget multiple xfrm_dst\u0027s for same flow (on per-cpu basis).\n\nSigned-off-by: Timo Teras \u003ctimo.teras@iki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe1a5f031e76bd8761a7803d75b95ee96e84a574",
      "tree": "c74392cef02c1529b00df6c5d0b8f4239fe091c3",
      "parents": [
        "8020eb82d4c37d21dade0abeb8feed265a01819e"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Wed Apr 07 00:30:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 07 03:43:18 2010 -0700"
      },
      "message": "flow: virtualize flow cache entry methods\n\nThis allows to validate the cached object before returning it.\nIt also allows to destruct object properly, if the last reference\nwas held in flow cache. This is also a prepartion for caching\nbundles in the flow cache.\n\nIn return for virtualizing the methods, we save on:\n- not having to regenerate the whole flow cache on policy removal:\n  each flow matching a killed policy gets refreshed as the getter\n  function notices it smartly.\n- we do not have to call flow_cache_flush from policy gc, since the\n  flow cache now properly deletes the object if it had any references\n\nSigned-off-by: Timo Teras \u003ctimo.teras@iki.fi\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a35ecf8bf1c4b039503fa554100fe85c761de76",
      "tree": "9b75f5d5636004d9a9aa496924377379be09aa1f",
      "parents": [
        "b4d562e3c3553ac58c7120555c4e4aefbb090a2a",
        "fb9e2d887243499b8d28efcf80821c4f6a092395"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 06 23:53:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bonding/bond_main.c\n\tdrivers/net/via-velocity.c\n\tdrivers/net/wireless/iwlwifi/iwl-agn.c\n"
    },
    {
      "commit": "749d229761ff0135cc4e16b8a28b41ae2f6b2c35",
      "tree": "25551c8cfb38319211f5ee59e78462a0f6fb85c4",
      "parents": [
        "795d580baec0d5386b83a8b557df47c20810e86b",
        "3dc9fef67f6292692dba181a6d0fd0211bd0a607"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 13:42:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 13:42:54 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: saving negative to unsigned char\n  9p: return on mutex_lock_interruptible()\n  9p: Creating files with names too long should fail with ENAMETOOLONG.\n  9p: Make sure we are able to clunk the cached fid on umount\n  9p: drop nlink remove\n  fs/9p: Clunk the fid resulting from partial walk of the name\n  9p: documentation update\n  9p: Fix setting of protocol flags in v9fs_session_info structure.\n"
    },
    {
      "commit": "6d96d3ab7aea5f0e75205a0c97f8d1fdf82c5287",
      "tree": "a4dfa0472e2e670de1da7e7c0905da12d4608ab4",
      "parents": [
        "d994f4058d9f9be7e44529b55fc6be6552901ead"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Mar 29 18:13:59 2010 -0500"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Mon Apr 05 10:37:36 2010 -0500"
      },
      "message": "9p: Make sure we are able to clunk the cached fid on umount\n\ndcache prune happen on umount. So we cannot mark the client\nsatus disconnect. That will prevent a 9p call to the server\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n\n\n"
    },
    {
      "commit": "22bedad3ce112d5ca1eaf043d4990fa2ed698c87",
      "tree": "b6fba5688d48b1396f01d13ee53610dea7749c15",
      "parents": [
        "a748ee2426817a95b1f03012d8f339c45c722ae1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:15 2010 -0700"
      },
      "message": "net: convert multicast list to list_head\n\nConverts the list and the core manipulating with it to be the same as uc_list.\n\n+uses two functions for adding/removing mc address (normal and \"global\"\n variant) instead of a function parameter.\n+removes dev_mcast.c completely.\n+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for\n manipulation with lists on a sandbox (used in bonding and 80211 drivers)\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd2c77a0a749589b45f2697ea446a4438d078f9b",
      "tree": "801d2f87cad4bd6bafd946ad4eb16cb1c0db779b",
      "parents": [
        "152102c7f2bf191690f1069bae292ea3925adf14"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki / 吉藤英明",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 31 22:24:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 01 18:41:41 2010 -0700"
      },
      "message": "ipv6 fib: Make rt6_info{} more cache-line aware.\n\nThe head element of rt6_info{} is dst_entry{}, and\nIPv6 specific elements follow.\n\nBecause elements at the end of dst_entry{} are frequently\nupdated, it is not good to put frequently-used static\nelements, such as rt6i_idev, rt6i_dst or rt6i_flags in the\nsame cache line.\n\nOn the other hand, fib6_table, rt6i_node or rt6i_gateway are\nrarely used, so it is okay to stay in the same cache line.\n\nLet\u0027s rearrange rt6_info{}.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d944c640b4ae5f37c537acf491c2f0eb89fa0d6",
      "tree": "9195a0135ec21c1c06ff4d46e8cf7924e2c364c0",
      "parents": [
        "d4fc6dbb5ae51430e35b2005f6d68938861f8d8b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Mar 31 07:06:04 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 01 18:38:48 2010 -0700"
      },
      "message": "gen_estimator: deadlock fix\n\nOne of my test machine got a deadlock during \"tc\" sessions,\nadding/deleting classes \u0026 filters, using traffic estimators.\n\nAfter some analysis, I believe we have a potential use after free case\nin est_timer() :\n\nspin_lock(e-\u003estats_lock); \u003c\u003c HERE \u003e\u003e\nread_lock(\u0026est_lock);\nif (e-\u003ebstats \u003d\u003d NULL)   \u003c\u003c TEST \u003e\u003e\n\tgoto skip;\n\nTest is done a bit late, because after estimator is killed, and before\nrcu grace period elapsed, we might already have freed/reuse memory where\ne-\u003estats_locks points to (some qdisc-\u003eq.lock)\n\nA possible fix is to respect a rcu grace period at Qdisc dismantle time.\n\nOn 64bit, sizeof(struct Qdisc) is exactly 192 bytes. Adding 16 bytes to\nit (for struct rcu_head) is a problem because it might change\nperformance, given QDISC_ALIGNTO is 32 bytes.\n\nThis is why I also change QDISC_ALIGNTO to 64 bytes, to satisfy most\ncurrent alignment requirements.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9ea3eb44218b0e12a190f222400f8d56136915f",
      "tree": "83c251acb78977d947c27a3982dc1414197701ba",
      "parents": [
        "d5d9de024c157a3dfbab191241c5c51e4d4c069a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Mar 18 18:29:34 2010 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:49:12 2010 -0400"
      },
      "message": "include/net/iw_handler.h: Use SIOCIWFIRST not SIOCSIWCOMMIT in comment\n\nto match use in IW_IOCTL_IDX macro\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e1b3ec1a2a336c328c336cfa5485a5f0484cc90d",
      "tree": "9a71f61f773231fd439220bec60977f45e1ef65f",
      "parents": [
        "ecdf94b81237d272b1514b76f27a5d22782bcaa6"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Mon Mar 29 12:18:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:43:59 2010 -0400"
      },
      "message": "mac80211: explicitly disable/enable QoS\n\nAdd interface to disable/enable QoS (aka WMM or WME). Currently drivers\nenable it explicitly when -\u003econf_tx method is called, and newer disable.\nDisabling is needed for some APs, which do not support QoS, such\nwe should send QoS frames to them.\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e3cf8b3f7b9eefbe1d39b160726d6e5c2cbb4c5d",
      "tree": "c59a6fcb8d0bcd88d848785a3dbe3978d1568274",
      "parents": [
        "e58b1253f1e850b4469964d7b92cf230196223c0"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Mar 29 17:35:07 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:39:34 2010 -0400"
      },
      "message": "mac80211: support paged rx SKBs\n\nMac80211 drivers can now pass paged SKBs to mac80211 via\nieee80211_rx{_irqsafe}. The implementation currently use\nskb_linearize() in a few places i.e. management frame\nhandling, software decryption, defragmentation and A-MSDU\nprocess. We will optimize them one by one later.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nCc: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d57b8fb8a8f94bdf467a4435be7d8bbebf87fe2a",
      "tree": "07aa8906cb5717cbc531e2adfefb2d72c32a7874",
      "parents": [
        "2c73e1fe94b1962ae5df7618519c18526e9d9072"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki / 吉藤英明",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Mar 29 06:00:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 23:28:46 2010 -0700"
      },
      "message": "ipv6: Use __fls() instead of fls() in __ipv6_addr_diff().\n\nBecause we have ensured that the argument is non-zero,\nit is better to use __fls() and generate better code.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2721c5b9dd2a56a9710021c00146bb26ba8dd7b3",
      "tree": "1edf5d8a02e2bc3e6a2860f83035e4d97e325419",
      "parents": [
        "09009f30de188c847d72039e6250bfea56a0f887"
      ],
      "author": {
        "name": "Sjur Braendeland",
        "email": "sjur.brandeland@stericsson.com",
        "time": "Tue Mar 30 13:56:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 19:08:45 2010 -0700"
      },
      "message": "net-caif: add CAIF Link layer device header files\n\nHeader files for CAIF Link layer net-device,\nand link-layer registration.\n\nSigned-off-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09009f30de188c847d72039e6250bfea56a0f887",
      "tree": "d979db08952227ad8175267e68bd61413bd0e53e",
      "parents": [
        "f671c54207d8a47129f35a84569fdfda614d2439"
      ],
      "author": {
        "name": "Sjur Braendeland",
        "email": "sjur.brandeland@stericsson.com",
        "time": "Tue Mar 30 13:56:21 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 30 19:08:45 2010 -0700"
      },
      "message": "net-caif: add CAIF core protocol stack header files\n\nAdd include files for the CAIF Core protocol stack.\n\ncaif_layer.h - Defines the structure of the CAIF protocol layers\ncfcnfg.h     - CAIF Configuration Module for services and link layers\ncfctrl.h     - CAIF Control Protocol Layer\ncffrml.h     - CAIF Framing Layer\ncfmuxl.h     - CAIF Muxing Layer\ncfpkt.h\t     - CAIF Packet layer (skb helper functions)\ncfserl.h     - CAIF Serial Layer\ncfsrvl.h     - CAIF Service Layer\n\nSigned-off-by: Sjur Braendeland \u003csjur.brandeland@stericsson.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "7905e357ebe67a26d9dc8caa1a0b8346431b5f0d",
      "tree": "134442df2f062caa6cebda1b352948b8209efcec",
      "parents": [
        "083ba279d52bcad20f1dfa3cefd4255cbe82d521",
        "76232ebf898c4d5e657f2b663fbf7108bca80ded"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 29 13:50:10 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 29 13:50:10 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "0c0dbfecbf217b47d0b508afb59b8b3639582a4c",
      "tree": "1621673885e28e1c02d938111bfe84ef4f204bea",
      "parents": [
        "adcfe1964e627b62fbc6e45609b1f0db2c64dd14"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 27 19:23:46 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 27 19:23:46 2010 -0700"
      },
      "message": "decnet: Remove unused FIB metric macros.\n\nUnlike the ipv4 side, these are completely unused.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a97c13c34509be460dea23c86f31c02daa2428b5",
      "tree": "eb5d2860af9d6f3121254f2ef262e197b10bed34",
      "parents": [
        "d6dc1a386358979e12366d1f35eeb68fc181e101"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Tue Mar 23 09:02:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 24 16:04:33 2010 -0400"
      },
      "message": "mac80211: Add support for connection quality monitoring\n\nAdd support for the set_cqm_config op. This op function configures the\nrequested connection quality monitor rssi threshold and rssi hysteresis\nvalues to the hardware  if the hardware supports\nIEEE80211_HW_SUPPORTS_CQM.\n\nFor unsupported hardware, currently -EOPNOTSUPP is returned, so the mac80211\nis currently not doing connection quality monitoring on the host. This could be\nadded later, if needed.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d6dc1a386358979e12366d1f35eeb68fc181e101",
      "tree": "4b65ba21328d6984d008b62795dd60d99c350632",
      "parents": [
        "921ca03c8f8e982f27fc406bc301caf2196b99f7"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Tue Mar 23 09:02:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 24 16:02:37 2010 -0400"
      },
      "message": "cfg80211: Add connection quality monitoring support to nl80211\n\nAdd support for basic configuration of a connection quality monitoring to the\nnl80211 interface, and basic support for notifying about triggered monitoring\nevents.\n\nVia this interface a user-space connection manager may configure and receive\npre-warning events of deteriorating WLAN connection quality, and start\npreparing for roaming in advance, before the connection is already lost.\n\nAn example usage of such a trigger is starting scanning for nearby AP\u0027s in\nan attempt to find one with better connection quality, and associate to it\nbefore the connection characteristics of the existing connection become too bad\nor the association is even lost, leading in a prolonged delay in connectivity.\n\nThe interface currently supports only RSSI, but it could be later extended\nto include other parameters, such as signal-to-noise ratio, if need for that\narises.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1e4dcd012423b6a28f968a55886d2b27896a1586",
      "tree": "c2eadaf6a33175840b2f5d8fb7dd6af1d5be76ed",
      "parents": [
        "43ead78ac48b75aaf47de96fcf10cbf5962f32a6"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Fri Mar 19 07:14:53 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 23 16:51:42 2010 -0400"
      },
      "message": "mac80211: Add support for connection monitor in hardware\n\nThis patch is based on a RFC patch by Kalle Valo.\n\nThe wl1271 has a feature which handles the connection monitor logic\nin hardware, basically sending periodically nullfunc frames and reporting\nto the host if AP is lost, after attempting to recover by sending\nprobe-requests to the AP.\n\nAdd support to mac80211 by adding a new flag IEEE80211_HW_CONNECTION_MONITOR\nwhich prevents conn_mon_timer from triggering during idle periods, and\nprevents sending probe-requests to the AP if beacon-loss is indicated by the\nhardware.\n\nCc: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "33e2bf6aa16061bae1253514e7c32af27d2b4b31",
      "tree": "652d13b4feea9a8f562186e7badae72d2e22fe1f",
      "parents": [
        "e880eb6c5c9d98e389ffc0d8947f75d70785361a",
        "819bfecc4fc6b6e5a793f719a45b7146ce423b79"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 22 18:15:15 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 22 18:15:15 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n"
    },
    {
      "commit": "ec733b15a3ef0b5759141a177f8044a2f40c41e7",
      "tree": "41af80ea4dcc89cc049bd36cbd882916a6469263",
      "parents": [
        "62c97ac04a67c120ec37a9bfd445a8d5dbbc1ed2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Mar 18 20:36:06 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 21 18:34:16 2010 -0700"
      },
      "message": "net: snmp mib cleanup\n\nThere is no point to align or pad mibs to cache lines, they are per cpu\nallocated with a 8 bytes alignment anyway.\nThis wastes space for no gain. This patch removes __SNMP_MIB_ALIGN__\n\nSince SNMP mibs contain \"unsigned long\" fields only, we can relax the\nallocation alignment from \"unsigned long long\" to \"unsigned long\"\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aef7d97cc604309b66f6f45cce02cd734934cd4e",
      "tree": "b21aae56f9a5de0bbabe881d597a4dc790ff97c8",
      "parents": [
        "101545f6fef4a0a3ea8daf0b5b880df2c6a92a69"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Mar 21 05:27:45 2010 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Mar 21 05:49:35 2010 +0100"
      },
      "message": "Bluetooth: Convert debug files to actually use debugfs instead of sysfs\n\nSome of the debug files ended up wrongly in sysfs, because at that point\nof time, debugfs didn\u0027t exist. Convert these files to use debugfs and\nalso seq_file. This patch converts all of these files at once and then\nremoves the exported symbol for the Bluetooth sysfs class.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "502a2ffd7376ae27cfde6172257db0ff9d8cfec2",
      "tree": "de51fc19a9442f3edd344f56ff1887b25a5da6c9",
      "parents": [
        "3a88a81d89c20be312b3b219b185bbdde24b8fb8"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 17 20:31:13 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 20 15:45:09 2010 -0700"
      },
      "message": "ipv6: convert idev_list to list macros\n\nConvert to list macro\u0027s for the list of addresses per interface\nin IPv6.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c578aedcb21d79eeb4e9cf04ca5b276ac82614c",
      "tree": "e6d682d3072fda2ae3977beca2beb23d222b6911",
      "parents": [
        "c2e21293c054817c42eb5fa9c613d2ad51954136"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 17 20:31:11 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 20 15:44:35 2010 -0700"
      },
      "message": "IPv6: convert addrconf hash list to RCU\n\nConvert from reader/writer lock to RCU and spinlock for addrconf\nhash list.\n\nAdds an additional helper macro for hlist_for_each_entry_continue_rcu\nto handle the continue case.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c2e21293c054817c42eb5fa9c613d2ad51954136",
      "tree": "481f7de6d3e3a9a3d93af5654ec174ff5945dc2b",
      "parents": [
        "372e6c8f1f7b2bb68f9992d2e664925c73552a1d"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 17 20:31:10 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 20 15:44:34 2010 -0700"
      },
      "message": "ipv6: convert addrconf list to hlist\n\nUsing hash list macros, simplifies code and helps later RCU.\n\nThis patch includes some initialization that is not strictly necessary,\nsince an empty hlist node/list is all zero; and list is in BSS\nand node is allocated with kzalloc.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "372e6c8f1f7b2bb68f9992d2e664925c73552a1d",
      "tree": "8ae282cb00d43e6d04316f5dd1ac163788a7a4df",
      "parents": [
        "e77c8e83dd587f2616d7ff20d23a897891e6e20d"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 17 20:31:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 20 15:44:34 2010 -0700"
      },
      "message": "ipv6: convert temporary address list to list macros\n\nUse list macros instead of open coded linked list.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f5d410f2ea7ba340f11815a56e05b9fa9421c421",
      "tree": "8a03047550a63d94063443b8b3e8c63e472ae469",
      "parents": [
        "6830c25b7d08fbbd922959425193791bc42079f2"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Mar 16 13:30:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 19 22:47:23 2010 -0700"
      },
      "message": "netlink: fix unaligned access in nla_get_be64()\n\nThis patch fixes a unaligned access in nla_get_be64() that was\nintroduced by myself in a17c859849402315613a0015ac8fbf101acf0cc1.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ceb804cd0f63b0e0a87b81913b66add6de03043d",
      "tree": "179d3050a8ea5fe5b8406efec64b5c391499d4d4",
      "parents": [
        "3474cbd11df8cdd6413781ea95bd51dd469098ff",
        "f78233dd44a110c574fe760ad6f9c1e8741a0d00"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 14 11:11:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 14 11:11:08 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: Skip check for mandatory locks when unlocking\n  9p: Fixes a simple bug enabling writes beyond 2GB.\n  9p: Change the name of new protocol from 9p2010.L to 9p2000.L\n  fs/9p: re-init the wstat in readdir loop\n  net/9p: Add sysfs mount_tag file for virtio 9P device\n  net/9p: Use the tag name in the config space for identifying mount point\n"
    },
    {
      "commit": "d89b218b801fd93ea95880f1c7fde348cbcc51c5",
      "tree": "cd3c34e1811f9b2bc10ecfb957bf26cbd04c677e",
      "parents": [
        "80a186074e72e2cd61f6716d90cf32ce54981a56",
        "bec68ff1637ca00bb1585a03a7be8a13380084de"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:50:18 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 13 14:50:18 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (108 commits)\n  bridge: ensure to unlock in error path in br_multicast_query().\n  drivers/net/tulip/eeprom.c: fix bogus \"(null)\" in tulip init messages\n  sky2: Avoid rtnl_unlock without rtnl_lock\n  ipv6: Send netlink notification when DAD fails\n  drivers/net/tg3.c: change the field used with the TG3_FLAG_10_100_ONLY constant\n  ipconfig: Handle devices which take some time to come up.\n  mac80211: Fix memory leak in ieee80211_if_write()\n  mac80211: Fix (dynamic) power save entry\n  ipw2200: use kmalloc for large local variables\n  ath5k: read eeprom IQ calibration values correctly for G mode\n  ath5k: fix I/Q calibration (for real)\n  ath5k: fix TSF reset\n  ath5k: use fixed antenna for tx descriptors\n  libipw: split ieee-\u003enetworks into small pieces\n  mac80211: Fix sta_mtx unlocking on insert STA failure path\n  rt2x00: remove KSEG1ADDR define from rt2x00soc.h\n  net: add ColdFire support to the smc91x driver\n  asix: fix setting mac address for AX88772\n  ipv6 ip6_tunnel: eliminate unused recursion field from ip6_tnl{}.\n  net: Fix dev_mc_add()\n  ...\n"
    },
    {
      "commit": "45bc21edb52fa71dbb1324c6f573aa880e95519d",
      "tree": "adee2b59a562679241f874c978162739e1df78bb",
      "parents": [
        "fae4528b2341f2ab0c86c191e24d9cdd93624c60"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Mon Mar 08 17:33:04 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Sat Mar 13 08:57:29 2010 -0600"
      },
      "message": "9p: Change the name of new protocol from 9p2010.L to 9p2000.L\n\nThis patch changes the name of the new 9P protocol from 9p2010.L to\n9p2000.u. This is because we learnt that the name 9p2010 is already\nbeing used by others.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c32da02342b7521df25fefc2ef20aee0e61cf887",
      "tree": "7e38f664fa3e13602c357d37f77d8adcf82fccc2",
      "parents": [
        "dca1d9f6d7ae428c193f32bd3e9a4ca13176648b",
        "318ae2edc3b29216abd8a2510f3f80b764f06858"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 12 16:04:50 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 12 16:04:50 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (56 commits)\n  doc: fix typo in comment explaining rb_tree usage\n  Remove fs/ntfs/ChangeLog\n  doc: fix console doc typo\n  doc: cpuset: Update the cpuset flag file\n  Fix of spelling in arch/sparc/kernel/leon_kernel.c no longer needed\n  Remove drivers/parport/ChangeLog\n  Remove drivers/char/ChangeLog\n  doc: typo - Table 1-2 should refer to \"status\", not \"statm\"\n  tree-wide: fix typos \"ass?o[sc]iac?te\" -\u003e \"associate\" in comments\n  No need to patch AMD-provided drivers/gpu/drm/radeon/atombios.h\n  devres/irq: Fix devm_irq_match comment\n  Remove reference to kthread_create_on_cpu\n  tree-wide: Assorted spelling fixes\n  tree-wide: fix \u0027lenght\u0027 typo in comments and code\n  drm/kms: fix spelling in error message\n  doc: capitalization and other minor fixes in pnp doc\n  devres: typo fix s/dev/devm/\n  Remove redundant trailing semicolons from macros\n  fix typo \"definetly\" -\u003e \"definitely\" in comment\n  tree-wide: s/widht/width/g typo in comments\n  ...\n\nFix trivial conflict in Documentation/laptops/00-INDEX\n"
    },
    {
      "commit": "8467005da3ef6104b89a4cc5e9c9d9445b75565f",
      "tree": "e21eb9f439a9e17e66d90c691f400db3a5b0c54d",
      "parents": [
        "13aa9a6b0f2371d2ce0de57c2ede62ab7a787157"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Mar 10 15:23:10 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 12 15:52:40 2010 -0800"
      },
      "message": "nsproxy: remove INIT_NSPROXY()\n\nRemove INIT_NSPROXY(), use C99 initializer.\nRemove INIT_IPC_NS(), INIT_NET_NS() while I\u0027m at it.\n\nNote: headers trim will be done later, now it\u0027s quite pointless because\nresults will be invalidated by merge window.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b4c32972b9bcfee29d5e2c1b6f261dda5ef2a21",
      "tree": "12d9e80acef03b91d6d54283b475ef8c2c57685c",
      "parents": [
        "3041f5170751e3522aa1bd6e8ca5d98e846720b0"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki / 吉藤英明",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 09 16:47:52 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 10 07:32:29 2010 -0800"
      },
      "message": "ipv6 ip6_tunnel: eliminate unused recursion field from ip6_tnl{}.\n\nCommit a43912ab19... (\"tunnel: eliminate recursion field\") eliminated\nuse of recursion field from tunnel structures, but its definition\nstill exists in ip6_tnl{}.\n\nLet\u0027s remove that unused field.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62bb2ac5cb6c2f813e151617525ec518e2d1c649",
      "tree": "75e6d81f02580de06897fa2972b86aec881fe3c4",
      "parents": [
        "31f66be44a657a14e0ab3536e4877c66c9ce031e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Feb 17 21:27:26 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 09 15:02:53 2010 -0500"
      },
      "message": "mac80211: deprecate RX status noise\n\nThe noise value as is won\u0027t be used, isn\u0027t\nfilled by most drivers and doesn\u0027t really\nmake a whole lot of sense on a per packet\nbasis -- proper cfg80211 survey support in\nmac80211 will need to be different.\n\nMark the struct member as deprecated so it\nwill be removed from drivers.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4045635318538d3ddd2007720412fdc4b08f6a62",
      "tree": "ee358afe884cd8e8af594de4ea882879bd1ff994",
      "parents": [
        "10cc2b50eb4b01ca4dc014af2094d28b4ebe20d7"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Sun Mar 07 16:21:39 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 08 10:45:26 2010 -0800"
      },
      "message": "net: add __must_check to sk_add_backlog\n\nAdd the \"__must_check\" tag to sk_add_backlog() so that any failure to\ncheck and drop packets will be warned about.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "318ae2edc3b29216abd8a2510f3f80b764f06858",
      "tree": "ce595adde342f57f379d277b25e4dd206988a052",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176",
        "3e58974027b04e84f68b964ef368a6cd758e2f84"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\tDocumentation/filesystems/proc.txt\n\tarch/arm/mach-u300/include/mach/debug-macro.S\n\tdrivers/net/qlge/qlge_ethtool.c\n\tdrivers/net/qlge/qlge_main.c\n\tdrivers/net/typhoon.c\n"
    },
    {
      "commit": "0c9a2ac1f8a2e55b3382dfc27256878a58ea49e9",
      "tree": "0084f79428afa47efd40594cc96fd3a6b87cfc24",
      "parents": [
        "25dc27d17dc868aae78fd03bef3113cf586b12e5"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki / 吉藤英明",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Mar 07 00:14:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 07 15:25:53 2010 -0800"
      },
      "message": "ipv6: Optmize translation between IPV6_PREFER_SRC_xxx and RT6_LOOKUP_F_xxx.\n\nIPV6_PREFER_SRC_xxx definitions:\n| #define IPV6_PREFER_SRC_TMP             0x0001\n| #define IPV6_PREFER_SRC_PUBLIC          0x0002\n| #define IPV6_PREFER_SRC_COA             0x0004\n\nRT6_LOOKUP_F_xxx definitions:\n| #define RT6_LOOKUP_F_SRCPREF_TMP        0x00000008\n| #define RT6_LOOKUP_F_SRCPREF_PUBLIC     0x00000010\n| #define RT6_LOOKUP_F_SRCPREF_COA        0x00000020\n\nSo, we can translate between these two groups by shift operation\ninstead of multiple \u0027if\u0027s.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a3a858ff18a72a8d388e31ab0d98f7e944841a62",
      "tree": "e51a59ce280f0aa818ac5e1d989bc8a137b7cd47",
      "parents": [
        "2499849ee8f513e795b9f2c19a42d6356e4943a4"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Mar 04 18:01:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 05 13:34:03 2010 -0800"
      },
      "message": "net: backlog functions rename\n\nsk_add_backlog -\u003e __sk_add_backlog\nsk_add_backlog_limited -\u003e sk_add_backlog\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eae939f1400326b06d0c9afe53d2a484a326871",
      "tree": "0896163cf1a00205fab76cc1c35855157a05cbbc",
      "parents": [
        "12c3400a84742f8bb0e4edc822e9ccba58781e0c"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu Mar 04 18:01:40 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 05 13:33:59 2010 -0800"
      },
      "message": "net: add limit for socket backlog\n\nWe got system OOM while running some UDP netperf testing on the loopback\ndevice. The case is multiple senders sent stream UDP packets to a single\nreceiver via loopback on local host. Of course, the receiver is not able\nto handle all the packets in time. But we surprisingly found that these\npackets were not discarded due to the receiver\u0027s sk-\u003esk_rcvbuf limit.\nInstead, they are kept queuing to sk-\u003esk_backlog and finally ate up all\nthe memory. We believe this is a secure hole that a none privileged user\ncan crash the system.\n\nThe root cause for this problem is, when the receiver is doing\n__release_sock() (i.e. after userspace recv, kernel udp_recvmsg -\u003e\nskb_free_datagram_locked -\u003e release_sock), it moves skbs from backlog to\nsk_receive_queue with the softirq enabled. In the above case, multiple\nbusy senders will almost make it an endless loop. The skbs in the\nbacklog end up eat all the system memory.\n\nThe issue is not only for UDP. Any protocols using socket backlog is\npotentially affected. The patch adds limit for socket backlog so that\nthe backlog size cannot be expanded endlessly.\n\nReported-by: Alex Shi \u003calex.shi@intel.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\nCc: \"Pekka Savola (ipv6)\" \u003cpekkas@netcore.fi\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nCc: Jon Maloy \u003cjon.maloy@ericsson.com\u003e\nCc: Allan Stephens \u003callan.stephens@windriver.com\u003e\nCc: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "342fee1d5c7dfa05f4e14ec1e583df4553b09776",
      "tree": "87931dea926f16b44374db8a849ef131cd6ff3de",
      "parents": [
        "0fb80abd911a7cb1e6548b5279568dc1e8949702"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Mar 05 18:50:14 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:42 2010 -0600"
      },
      "message": "9P2010.L handshake: Remove \"dotu\" variable\n\nRemoves \u0027dotu\u0027 variable and make everything dependent\non \u0027proto_version\u0027 field.\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "0fb80abd911a7cb1e6548b5279568dc1e8949702",
      "tree": "0c179f49f2f0d0bf2c979ee1b1f1cfd864122029",
      "parents": [
        "dd6102fbd917889384d89bc427e98e85e8fda000"
      ],
      "author": {
        "name": "Sripathi Kodi",
        "email": "sripathik@in.ibm.com",
        "time": "Fri Mar 05 18:49:11 2010 +0000"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@gmail.com",
        "time": "Fri Mar 05 15:04:42 2010 -0600"
      },
      "message": "9P2010.L handshake: Add mount option\n\nAdd new mount V9FS mount option to specify protocol version\n\nThis patch adds a new mount option to specify protocol version.\nWith this option it is possible to use \"-o version\u003d\" switch to\nspecify 9P protocol version to use. Valid options for version\nare:\n9p2000\n9p2000.u\n9p2010.L\n\nSigned-off-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "c839d30a41dd92eb32d7fcfa2b4e99042fc64bf2",
      "tree": "f439f53a8e7a77590d249b5bb0c584db171366da",
      "parents": [
        "8f37ada5b5f6bfb4d251a7f510f249cb855b77b3"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Wed Mar 03 04:46:50 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:53:51 2010 -0800"
      },
      "message": "net: add scheduler sync hint to tcp_prequeue().\n\nDecreases the odds wakee will suffer from frequent cache misses.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5c1a0aa00ce94ab0cd669bb290c3ae4657242a3",
      "tree": "5ed22d681be9cc6a3677d61b0a19fcea5702d98c",
      "parents": [
        "1cd4efddc4512ccbd9fe317f688f361605ca0c88",
        "31f66be44a657a14e0ab3536e4877c66c9ce031e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 03 22:42:54 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 03 22:42:54 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "4fa004373133ece3d9b1c0a7e243b0e53760b165",
      "tree": "e70b44c3d6a5afef0238caff3c7eefbcc74b0bc0",
      "parents": [
        "b08dfd0435333818a03b38867c556ebcbb3abc02"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Mon Mar 01 14:42:57 2010 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 03 15:39:21 2010 -0500"
      },
      "message": "mac80211: Fix HT rate control configuration\n\nHandling HT configuration changes involved setting the channel\nwith the new HT parameters and then issuing a rate_update()\nnotification to the driver.\n\nThis behavior changed after the off-channel changes. Now, the channel\nis not updated with the new HT params in enable_ht() - instead, it\nis now done when the scan work terminates. This results in the driver\ndepending on stale information, defaulting to non-HT mode always.\n\nFix this by passing the new channel type to the driver.\n\nCc: stable@kernel.org\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "87c1e12b5eeb7b30b4b41291bef8e0b41fc3dde9",
      "tree": "4e30c4d60c21ab5e0346648ed852258a96265288",
      "parents": [
        "3a5b27bf6f29574d667230c7e76e4b83fe3014e0"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Mar 02 02:51:56 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 03 01:04:37 2010 -0800"
      },
      "message": "ipsec: Fix bogus bundle flowi\n\nWhen I merged the bundle creation code, I introduced a bogus\nflowi value in the bundle.  Instead of getting from the caller,\nit was instead set to the flow in the route object, which is\ntotally different.\n\nThe end result is that the bundles we created never match, and\nwe instead end up with an ever growing bundle list.\n\nThanks to Jamal for find this problem.\n\nReported-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "47871889c601d8199c51a4086f77eebd77c29b0b",
      "tree": "40cdcac3bff0ee40cc33dcca61d0577cdf965f77",
      "parents": [
        "c16cc0b464b8876cfd57ce1c1dbcb6f9a6a0bce3",
        "30ff056c42c665b9ea535d8515890857ae382540"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 28 19:23:06 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 28 19:23:06 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n\nConflicts:\n\tdrivers/firmware/iscsi_ibft.c\n"
    },
    {
      "commit": "46976c042ba1ff59253f2f7a513099175c24794e",
      "tree": "a7af3f1c3ef2a2d430c49fb774ab744c296a2285",
      "parents": [
        "024c378f0b719d43b01b875caefa19f2612e103a",
        "f6e623a65cb301088bd04794043e82bfc996c512"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 28 00:57:28 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 28 00:57:28 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6\n"
    },
    {
      "commit": "943da25d95c7e8fd8c39dbf09e030f5da46f5d85",
      "tree": "afa710bb2455ec43db38e205157fd6943ac6b63b",
      "parents": [
        "b914a250e7b390c713b36a9405a39c4c11abad80"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Feb 13 02:28:41 2010 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Feb 27 14:05:38 2010 +0100"
      },
      "message": "Bluetooth: Add controller types for BR/EDR and 802.11 AMP\n\nWith the Bluetooth 3.0 specification and the introduction of alternate\nMAC/PHY (AMP) support, it is required to differentiate between primary\nBR/EDR controllers and 802.11 AMP controllers. So introduce a special\ntype inside HCI device for differentiation.\n\nFor now all AMP controllers will be treated as raw devices until an\nAMP manager has been implemented.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "ca325f698996c1a0770a67f41e7dc97a007d8bc2",
      "tree": "8232f4c0cf8a2bef09b883280d3742735776c842",
      "parents": [
        "c13854cef4751000b968d4e8ac95796562d5b96f"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 08 16:22:31 2010 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Feb 27 14:05:38 2010 +0100"
      },
      "message": "Bluetooth: Convert inquiry cache to use debugfs instead of sysfs\n\nThe output of the inquiry cache is only useful for debugging purposes\nand so move it into debugfs.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "c13854cef4751000b968d4e8ac95796562d5b96f",
      "tree": "0955205615783cfdf112c9bbf264ef1fe57409ed",
      "parents": [
        "10f7891f998e84acfa31ac9c5a0fea052c39ecb8"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 08 15:27:07 2010 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Feb 27 14:05:38 2010 +0100"
      },
      "message": "Bluetooth: Convert controller hdev-\u003etype to hdev-\u003ebus\n\nThe hdev-\u003etype is misnamed and should be actually hdev-\u003ebus instead. So\nconvert it now.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "3729d5021257b283f7fce33d957893162ccb2c9d",
      "tree": "d44d5333dfb0cf11cfec8b05a8c7697b5c8d4c07",
      "parents": [
        "bd38081160bb3d036db98472e537b6a7dd4da51a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Feb 26 06:34:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 27 02:43:40 2010 -0800"
      },
      "message": "rtnetlink: support specifying device flags on device creation\n\ncommit e8469ed959c373c2ff9e6f488aa5a14971aebe1f\nAuthor: Patrick McHardy \u003ckaber@trash.net\u003e\nDate:   Tue Feb 23 20:41:30 2010 +0100\n\nSupport specifying the initial device flags when creating a device though\nrtnl_link. Devices allocated by rtnl_create_link() are marked as INITIALIZING\nin order to surpress netlink registration notifications. To complete setup,\nrtnl_configure_link() must be called, which performs the device flag changes\nand invokes the deferred notifiers if everything went well.\n\nTwo examples:\n\n# add macvlan to eth0\n#\n$ ip link add link eth0 up allmulticast on type macvlan\n\n[LINK]11: macvlan0@eth0: \u003cBROADCAST,MULTICAST,ALLMULTI,UP,LOWER_UP\u003e mtu 1500 qdisc noqueue state UNKNOWN\n    link/ether 26:f8:84:02:f9:2a brd ff:ff:ff:ff:ff:ff\n[ROUTE]ff00::/8 dev macvlan0  table local  metric 256  mtu 1500 advmss 1440 hoplimit 0\n[ROUTE]fe80::/64 dev macvlan0  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 0\n[LINK]11: macvlan0@eth0: \u003cBROADCAST,MULTICAST,ALLMULTI,UP,LOWER_UP\u003e mtu 1500\n    link/ether 26:f8:84:02:f9:2a\n[ADDR]11: macvlan0    inet6 fe80::24f8:84ff:fe02:f92a/64 scope link\n       valid_lft forever preferred_lft forever\n[ROUTE]local fe80::24f8:84ff:fe02:f92a via :: dev lo  table local  proto none  metric 0  mtu 16436 advmss 16376 hoplimit 0\n[ROUTE]default via fe80::215:e9ff:fef0:10f8 dev macvlan0  proto kernel  metric 1024  mtu 1500 advmss 1440 hoplimit 0\n[NEIGH]fe80::215:e9ff:fef0:10f8 dev macvlan0 lladdr 00:15:e9:f0:10:f8 router STALE\n[ROUTE]2001:6f8:974::/64 dev macvlan0  proto kernel  metric 256  expires 0sec mtu 1500 advmss 1440 hoplimit 0\n[PREFIX]prefix 2001:6f8:974::/64 dev macvlan0 onlink autoconf valid 14400 preferred 131084\n[ADDR]11: macvlan0    inet6 2001:6f8:974:0:24f8:84ff:fe02:f92a/64 scope global dynamic\n       valid_lft 86399sec preferred_lft 14399sec\n\n# add VLAN to eth1, eth1 is down\n#\n$ ip link add link eth1 up type vlan id 1000\nRTNETLINK answers: Network is down\n\n\u003cno events\u003e\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45bb00609022ecf1d97e083666c68c74d237b799",
      "tree": "9d8d632a9c2671ab9487ed1d73b8dc45de48b90b",
      "parents": [
        "1d9cfc4e354cd619d92bb938657dec3c533e6929"
      ],
      "author": {
        "name": "Ulrich Weber",
        "email": "uweber@astaro.com",
        "time": "Thu Feb 25 23:28:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 26 03:59:07 2010 -0800"
      },
      "message": "ipv6: Remove IPV6_ADDR_RESERVED\n\nRFC 4291 section 2.4 states that all uncategorized addresses\nshould be considered as Global Unicast.\n\nThis will remove IPV6_ADDR_RESERVED completely\nand return IPV6_ADDR_UNICAST in ipv6_addr_type() instead.\n\nSigned-off-by: Ulrich Weber \u003cuweber@astaro.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19bc291c99f018bd4f2c38bbf69144086dca903f",
      "tree": "9d3cf9bc0c5a78e363dc0547da8bcd1e7c394265",
      "parents": [
        "04488734806948624dabc4514f96f14cd75b9a50",
        "4a6967b88af02eebeedfbb91bc09160750225bb5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:26:21 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:26:21 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/net/wireless/rt2x00/rt2800pci.c\n"
    },
    {
      "commit": "a898def29e4119bc01ebe7ca97423181f4c0ea2d",
      "tree": "e6f89d4f4a91fd24507ad600ebb9ad620ec9d9a8",
      "parents": [
        "3120438ad68601f341e61e7cb1323b0e1a6ca367"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Feb 22 17:04:49 2010 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 25 09:41:03 2010 +0100"
      },
      "message": "net: Add checking to rcu_dereference() primitives\n\nUpdate rcu_dereference() primitives to use new lockdep-based\nchecking. The rcu_dereference() in __in6_dev_get() may be\nprotected either by rcu_read_lock() or RTNL, per Eric Dumazet.\nThe rcu_dereference() in __sk_free() is protected by the fact\nthat it is never reached if an update could change it.  Check\nfor this by using rcu_dereference_check() to verify that the\nstruct sock\u0027s -\u003esk_wmem_alloc counter is zero.\n\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nLKML-Reference: \u003c1266887105-1528-5-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8ca2e93b557f2a0b35f7769038abf600177e1122",
      "tree": "2b25012de07a48c33db0a191924d6e5fcc99c22a",
      "parents": [
        "3d6acfa7641fd0a35f608b142f61e79f7ed8db43"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "hadi@cyberus.ca",
        "time": "Mon Feb 22 11:32:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 22 16:21:12 2010 -0800"
      },
      "message": "xfrm: SP lookups signature with mark\n\npass mark to all SP lookups to prepare them for when we add code\nto have them search.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd55775c8dd656fc69b3a42a1c4ab32abb7e8af9",
      "tree": "766b30d5fc29d5d4849a10a290db51fe0f7c3ad7",
      "parents": [
        "bf825f81b454fae2ffe1b675f3a549656726440e"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "hadi@cyberus.ca",
        "time": "Mon Feb 22 16:20:22 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 22 16:20:22 2010 -0800"
      },
      "message": "xfrm: SA lookups signature with mark\n\npass mark to all SA lookups to prepare them for when we add code\nto have them search.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf825f81b454fae2ffe1b675f3a549656726440e",
      "tree": "8096391060484f831c0f2e4a7cef3448b4ff4845",
      "parents": [
        "7f6b9dbd5afbd966a82dcbafc5ed62305eb9d479"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "hadi@cyberus.ca",
        "time": "Mon Feb 22 11:32:54 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 22 16:19:45 2010 -0800"
      },
      "message": "xfrm: introduce basic mark infrastructure\n\nAdd basic structuring and accessors for xfrm mark\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "808f5114a9206fee855117d416440e1071ab375c",
      "tree": "cec3f04220909b77c0880029b63862553ad5161c",
      "parents": [
        "1cc523271ef0b6305c565a143e3d48f6fff826dd"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Feb 22 07:57:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 22 15:45:56 2010 -0800"
      },
      "message": "packet: convert socket list to RCU (v3)\n\nConvert AF_PACKET to use RCU, eliminating one more reader/writer lock.\n\nThere is no need for a real sk_del_node_init_rcu(), because sk_del_node_init\nis doing the equivalent thing to hlst_del_init_rcu already; but added\nsome comments to try and make that obvious.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffb9eb3d8b450c22bbbc688c6b630141ac476fd9",
      "tree": "0e9677ea9df5b86fedf814236bf049a0f0435f6a",
      "parents": [
        "088ea189c4c75cdf211146faa4b341a0f7476be6"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Wed Feb 17 17:58:10 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 19 15:52:40 2010 -0500"
      },
      "message": "nl80211: add power save commands\n\nThe most needed command from nl80211, which Wireless Extensions had,\nis support for power save mode. Add a simple command to make it possible\nto enable and disable power save via nl80211.\n\nI was also planning about extending the interface, for example adding the\ntimeout value, but after thinking more about this I decided not to do it.\nBasically there were three reasons:\n\nFirstly, the parameters for power save are very much hardware dependent.\nTrying to find a unified interface which would work with all hardware, and\nstill make sense to users, will be very difficult.\n\nSecondly, IEEE 802.11 power save implementation in Linux is still in state\nof flux. We have a long way to still to go and there is no way to predict\nwhat kind of implementation we will have after few years. And because we\nneed to support nl80211 interface a long time, practically forever, adding\nnow parameters to nl80211 might create maintenance problems later on.\n\nThird issue are the users. Power save parameters are mostly used for\ndebugging, so debugfs is better, more flexible, interface for this.\nFor example, wpa_supplicant currently doesn\u0027t configure anything related\nto power save mode. It\u0027s better to strive that kernel can automatically\noptimise the power save parameters, like with help of pm qos network\nand other traffic parameters.\n\nLater on, when we have better understanding of power save, we can extend\nthis command with more features, if there\u0027s a need for that.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7e38017557bc0b87434d184f8804cadb102bb903",
      "tree": "30c4a0793bd28f6731ade58786c06f9cf33115df",
      "parents": [
        "36e31b0af58728071e8023cf8e20c5166b700717"
      ],
      "author": {
        "name": "Andreas Petlund",
        "email": "apetlund@simula.no",
        "time": "Thu Feb 18 04:48:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 15:43:09 2010 -0800"
      },
      "message": "net: TCP thin dupack\n\nThis patch enables fast retransmissions after one dupACK for\nTCP if the stream is identified as thin. This will reduce\nlatencies for thin streams that are not able to trigger fast\nretransmissions due to high packet interarrival time. This\nmechanism is only active if enabled by iocontrol or syscontrol\nand the stream is identified as thin.\n\nSigned-off-by: Andreas Petlund \u003capetlund@simula.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36e31b0af58728071e8023cf8e20c5166b700717",
      "tree": "8b4d251bf78965ac7501bea9011786b8255a3312",
      "parents": [
        "5aa4b32fc86408705337e941ed716880c63d1590"
      ],
      "author": {
        "name": "Andreas Petlund",
        "email": "apetlund@simula.no",
        "time": "Thu Feb 18 02:47:01 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 15:43:08 2010 -0800"
      },
      "message": "net: TCP thin linear timeouts\n\nThis patch will make TCP use only linear timeouts if the\nstream is thin. This will help to avoid the very high latencies\nthat thin stream suffer because of exponential backoff. This\nmechanism is only active if enabled by iocontrol or syscontrol\nand the stream is identified as thin. A maximum of 6 linear\ntimeouts is tried before exponential backoff is resumed.\n\nSigned-off-by: Andreas Petlund \u003capetlund@simula.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5aa4b32fc86408705337e941ed716880c63d1590",
      "tree": "7385d30e16f2c7203a74a3723728b7e8c6ecfa7b",
      "parents": [
        "16cad981863344ef779ab703545bb6f261a0f0ce"
      ],
      "author": {
        "name": "Andreas Petlund",
        "email": "apetlund@simula.no",
        "time": "Thu Feb 18 02:45:45 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 15:43:07 2010 -0800"
      },
      "message": "net: TCP thin-stream detection\n\nInline function to dynamically detect thin streams based on\nthe number of packets in flight. Used to dynamically trigger\nthin-stream mechanisms if enabled by ioctl or sysctl.\n\nSigned-off-by: Andreas Petlund \u003capetlund@simula.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b54452b07a7b1b8cc1385edba3ef2ef6d4679d5a",
      "tree": "c8a7271b14c4cd9e0dc22a5d0a3bed9e79c88e36",
      "parents": [
        "3ffe533c87281b68d469b279ff3a5056f9c75862"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Feb 18 08:14:31 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 14:30:18 2010 -0800"
      },
      "message": "const: struct nla_policy\n\nMake remaining netlink policies as const.\nFixup coding style where needed.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bbef49daca35d4fd21bf606a10b6980f17d9df5d",
      "tree": "44b7df91941c3266286b8046890ddc7c0dfa26ec",
      "parents": [
        "bc417d99bf279f034474bc2d7dedd390838a5480"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Feb 18 08:13:30 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 14:30:17 2010 -0800"
      },
      "message": "ipv6: use standard lists for FIB walks\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "37ee3d5b3e979a168536e7e2f15bd1e769cb4122",
      "tree": "aa6abf4c6976e9f5f1904f42d0745578560f871d",
      "parents": [
        "2906f66a5682e5670a5eefe991843689b8d8563f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Feb 18 19:04:44 2010 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Feb 18 19:04:44 2010 +0100"
      },
      "message": "netfilter: nf_defrag_ipv4: fix compilation error with NF_CONNTRACK\u003dn\n\nAs reported by Randy Dunlap \u003crandy.dunlap@oracle.com\u003e, compilation\nof nf_defrag_ipv4 fails with:\n\ninclude/net/netfilter/nf_conntrack.h:94: error: field \u0027ct_general\u0027 has incomplete type\ninclude/net/netfilter/nf_conntrack.h:178: error: \u0027const struct sk_buff\u0027 has no member named \u0027nfct\u0027\ninclude/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function \u0027nf_conntrack_put\u0027\ninclude/net/netfilter/nf_conntrack.h:294: error: \u0027const struct sk_buff\u0027 has no member named \u0027nfct\u0027\nnet/ipv4/netfilter/nf_defrag_ipv4.c:45: error: \u0027struct sk_buff\u0027 has no member named \u0027nfct\u0027\nnet/ipv4/netfilter/nf_defrag_ipv4.c:46: error: \u0027struct sk_buff\u0027 has no member named \u0027nfct\u0027\n\nnet/nf_conntrack.h must not be included with NF_CONNTRACK\u003dn, add a\nfew #ifdefs. Long term the header file should be fixed to be usable\neven with NF_CONNTRACK\u003dn.\n\nTested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    }
  ],
  "next": "2906f66a5682e5670a5eefe991843689b8d8563f"
}
