)]}'
{
  "log": [
    {
      "commit": "16bda13d90c8d5da243e2cfa1677e62ecce26860",
      "tree": "d10c9e0f9b043170c5bba4599ab1dc006d2a76eb",
      "parents": [
        "9cc00b51a3cbb3b933065a55eaa9bfc306411b7a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 06 15:14:37 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 09 13:50:34 2012 -0500"
      },
      "message": "net: Make qdisc_skb_cb upper size bound explicit.\n\nJust like skb-\u003ecb[], so that qdisc_skb_cb can be encapsulated inside\nof other data structures.\n\nThis is intended to be used by IPoIB so that it can remember\naddressing information stored at hard_header_ops-\u003ecreate() time that\nit can fetch when the packet gets to the transmit routine.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a42b4799c683723e8c464de4026af085b2ebd5fa",
      "tree": "303ebae69ea9f9db0a5bdf7020dc26c01af14afd",
      "parents": [
        "803143fbda719106017309d551d082e4b4e7c8c3"
      ],
      "author": {
        "name": "Vijay Subramanian",
        "email": "subramanian.vijay@gmail.com",
        "time": "Thu Jan 19 10:20:59 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 22 15:08:44 2012 -0500"
      },
      "message": "netem: Fix off-by-one bug in reordering\n\nWith netem reordering, a gap of N is supposed to reorder every Nth packet with\ngiven reorder probability.  However, the code currently skips N packets and\nreorders every (N+1)th packet.\n\nSigned-off-by: Vijay Subramanian \u003csubramanian.vijay@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddecf0f4db44ef94847a62d6ecf74456b4dcc66f",
      "tree": "48c49b70f83d713c7e3f594e067ee726bb70777e",
      "parents": [
        "72092cc45378176ba700034c91b7af2db524df26"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jan 06 06:31:44 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 12 20:05:28 2012 -0800"
      },
      "message": "net_sched: sfq: add optional RED on top of SFQ\n\nAdds an optional Random Early Detection on each SFQ flow queue.\n\nTraditional SFQ limits count of packets, while RED permits to also\ncontrol number of bytes per flow, and adds ECN capability as well.\n\n1) We dont handle the idle time management in this RED implementation,\nsince each \u0027new flow\u0027 begins with a null qavg. We really want to address\nbacklogged flows.\n\n2) if headdrop is selected, we try to ecn mark first packet instead of\ncurrently enqueued packet. This gives faster feedback for tcp flows\ncompared to traditional RED [ marking the last packet in queue ]\n\nExample of use :\n\ntc qdisc add dev $DEV parent 1:1 handle 10: est 1sec 4sec sfq \\\n\tlimit 3000 headdrop flows 512 divisor 16384 \\\n\tredflowlimit 100000 min 8000 max 60000 probability 0.20 ecn\n\nqdisc sfq 10: parent 1:1 limit 3000p quantum 1514b depth 127 headdrop\nflows 512/16384 divisor 16384\n ewma 6 min 8000b max 60000b probability 0.2 ecn\n prob_mark 0 prob_mark_head 4876 prob_drop 6131\n forced_mark 0 forced_mark_head 0 forced_drop 0\n Sent 1175211782 bytes 777537 pkt (dropped 6131, overlimits 11007\nrequeues 0)\n rate 99483Kbit 8219pps backlog 689392b 456p requeues 0\n\nIn this test, with 64 netperf TCP_STREAM sessions, 50% using ECN enabled\nflows, we can see number of packets CE marked is smaller than number of\ndrops (for non ECN flows)\n\nIf same test is run, without RED, we can check backlog is much bigger.\n\nqdisc sfq 10: parent 1:1 limit 3000p quantum 1514b depth 127 headdrop\nflows 512/16384 divisor 16384\n Sent 1148683617 bytes 795006 pkt (dropped 0, overlimits 0 requeues 0)\n rate 98429Kbit 8521pps backlog 1221290b 841p requeues 0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCC: Dave Taht \u003cdave.taht@gmail.com\u003e\nTested-by: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eeca6688d6599c28bc449a45facb67d7f203be74",
      "tree": "5cabbf24a3c1ee2d7757c873ba6449296a8ef7b7",
      "parents": [
        "18cb809850fb499ad9bf288696a95f4071f73931"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jan 05 02:25:16 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 05 14:01:21 2012 -0500"
      },
      "message": "net_sched: red: split red_parms into parms and vars\n\nThis patch splits the red_parms structure into two components.\n\nOne holding the RED \u0027constant\u0027 parameters, and one containing the\nvariables.\n\nThis permits a size reduction of GRED qdisc, and is a preliminary step\nto add an optional RED unit to SFQ.\n\nSFQRED will have a single red_parms structure shared by all flows, and a\nprivate red_vars per flow.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Dave Taht \u003cdave.taht@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18cb809850fb499ad9bf288696a95f4071f73931",
      "tree": "6f6c7c836176385baf0f185b6f5b4092e9ac1fdf",
      "parents": [
        "23021c21055f88a428b6deb6f803fa0d659e023f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jan 04 14:18:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 05 14:01:21 2012 -0500"
      },
      "message": "net_sched: sfq: extend limits\n\nSFQ as implemented in Linux is very limited, with at most 127 flows\nand limit of 127 packets. [ So if 127 flows are active, we have one\npacket per flow ]\n\nThis patch brings to SFQ following features to cope with modern needs.\n\n- Ability to specify a smaller per flow limit of inflight packets.\n    (default value being at 127 packets)\n\n- Ability to have up to 65408 active flows (instead of 127)\n\n- Ability to have head drops instead of tail drops\n  (to drop old packets from a flow)\n\nExample of use : No more than 20 packets per flow, max 8000 flows, max\n20000 packets in SFQ qdisc, hash table of 65536 slots.\n\ntc qdisc add ... sfq \\\n        flows 8000 \\\n        depth 20 \\\n        headdrop \\\n        limit 20000 \\\n\tdivisor 65536\n\nRam usage :\n\n2 bytes per hash table entry (instead of previous 1 byte/entry)\n32 bytes per flow on 64bit arches, instead of 384 for QFQ, so much\nbetter cache hit ratio.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb10192447370f19a215a8c2749332afa1199d46",
      "tree": "3c29d462ed3bc3b6c7af1492ca66395d2f0c5d42",
      "parents": [
        "e1e0918fcaea7b8100ed9f96f3ecd9eb9b867102"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Wed Jan 04 17:35:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 05 13:27:39 2012 -0500"
      },
      "message": "net_sched: Bug in netem reordering\n\nNot now, but it looks you are correct. q-\u003eqdisc is NULL until another\nadditional qdisc is attached (beside tfifo). See 50612537e9ab2969312.\nThe following patch should work.\n\nFrom: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\n\nnetem: catch NULL pointer by updating the real qdisc statistic\n\nReported-by: Vijay Subramanian \u003csubramanian.vijay@gmail.com\u003e\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "117ff42fd43e92d24c6aa6f3e4f0f1e1edada140",
      "tree": "c08e1c0357fde481a16489b77feb8f6073faf538",
      "parents": [
        "1d5783030a14d1b6ee763f63c8136e581f48b365",
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 21:35:43 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 21:35:43 2012 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "02a9098ede0dc7e28c16a03fa7fba86a05219478",
      "tree": "689df90e53168b72b8f2f418853830747bba8e90",
      "parents": [
        "bd16a6cce2a7f169b559abc5672fd2c66e91fb36"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jan 04 06:23:01 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 14:12:48 2012 -0500"
      },
      "message": "net_sched: sfq: always randomize hash perturbation\n\nSFQ q-\u003eperturbation is used in sfq_hash() as an input to Jenkins hash.\n\nWe currently randomize this 32bit value only if a perturbation timer is\nsetup.\n\nIts much better to always initialize it to defeat attackers, or else\nthey can predict very well what kind of packets they have to forge to\nhit a particular flow.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd16a6cce2a7f169b559abc5672fd2c66e91fb36",
      "tree": "a4407fbec170a8ed06bf52a6667d26c4fdd2a124",
      "parents": [
        "6cfb5e759d47f037cbd0953ec2c3ceb220ed9e96"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jan 04 06:22:24 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 14:12:48 2012 -0500"
      },
      "message": "net_sched: sfq: fix mem alloc error recovery\n\nSince commit 817fb15dfd98 (net_sched: sfq: allow divisor to be a\nparameter), we can leave perturbation timer armed if a memory allocation\nerror aborts sfq_init().\n\nMemory containing active struct timer_list is freed and kernel can\ncrash.\n\nCall sfq_destroy() from sfq_init() to properly dismantle qdisc.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa0f5aa74316c636427ac92dad0bc5714c34ca17",
      "tree": "64fcb6a7f4043cdaea4a13b730a1ca651190e314",
      "parents": [
        "d32ae76f2b776347051cf821ebe690602e38dfc7"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jan 03 00:00:11 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 13:03:20 2012 -0500"
      },
      "message": "net_sched: qdisc_alloc_handle() can be too slow\n\nWhen trying to allocate ~32768 qdiscs using autohandle mechanism, we can\nfill the space managed by kernel (handles in [8000-FFFF]:0000 range)\n\nBut O(N^2) qdisc_alloc_handle() loops 0x10000 times instead of 0x8000\n\ntime tc add qdisc add dev eth0 parent 10:7fff pfifo limit 10\nRTNETLINK answers: Cannot allocate memory\nreal    1m54.826s\nuser    0m0.000s\nsys     0m0.004s\n\nINFO: rcu_sched_state detected stall on CPU 0 (t\u003d60000 jiffies)\n\nHalf number of loops, and add a cond_resched() call.\nWe hold rtnl at this point.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d32ae76f2b776347051cf821ebe690602e38dfc7",
      "tree": "3f17a0c00e2ac7cc982c47e442661517ae010d5c",
      "parents": [
        "d47a0ac7b66883987275598d6039f902f4410ca9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jan 02 11:47:50 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 13:02:19 2012 -0500"
      },
      "message": "sch_qfq: accurate wsum handling\n\nWe can underestimate q-\u003ewsum in case of \"tc class replace ... qfq\"\nand/or qdisc_create_dflt() error.\n\nwsum is not really used in fast path, only at qfq qdisc/class setup,\nto catch user error.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6bafcac3238758203703bdd4abe9c1f38d259584",
      "tree": "b5413ecd31f0fa3229b04bd415c870041fe30d95",
      "parents": [
        "115e8e705e4be071b9e06ff72578e3b603f2ba65"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Jan 02 05:47:57 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 12:58:23 2012 -0500"
      },
      "message": "sch_qfq: fix overflow in qfq_update_start()\n\ngrp-\u003eslot_shift is between 22 and 41, so using 32bit wide variables is\nprobably a typo.\n\nThis could explain QFQ hangs Dave reported to me, after 2^23 packets ?\n\n(23 \u003d 64 - 41)\n\nReported-by: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCC: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d47a0ac7b66883987275598d6039f902f4410ca9",
      "tree": "d70709d26a3833e2747126d221bbb2aa3f28ebd7",
      "parents": [
        "1c015b3b82c92fad375ce7dfff54799cfdfb7a15"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Jan 01 18:33:31 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 03 12:52:09 2012 -0500"
      },
      "message": "sch_sfq: dont put new flow at the end of flows\n\nSFQ enqueue algo puts a new flow _behind_ all pre-existing flows in the\ncircular list. In fact this is probably an old SFQ implementation bug.\n\n100 Mbits \u003d ~8333 full frames per second, or ~8 frames per ms.\n\nWith 50 flows, it means your \"new flow\" will have to wait 50 packets\nbeing sent before its own packet. Thats the ~6ms.\n\nWe certainly can change SFQ to give a priority advantage to new flows,\nso that next dequeued packet is taken from a new flow, not an old one.\n\nReported-by: Dave Taht \u003cdave.taht@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50612537e9ab29693122fab20fc1eed235054ffe",
      "tree": "389279a18e07ce046ef694b37f44ccbc7fe796a1",
      "parents": [
        "32b293a53deeb220769f9a29357cb151cfb8ee26"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Dec 28 23:12:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 17:12:23 2011 -0500"
      },
      "message": "netem: fix classful handling\n\nCommit 10f6dfcfde (Revert \"sch_netem: Remove classful functionality\")\nreintroduced classful functionality to netem, but broke basic netem\nbehavior :\n\nnetem uses an t(ime)fifo queue, and store timestamps in skb-\u003ecb[]\n\nIf qdisc is changed, time constraints are not respected and other qdisc\ncan destroy skb-\u003ecb[] and block netem at dequeue time.\n\nFix this by always using internal tfifo, and optionally attach a child\nqdisc to netem (or a tree of qdiscs)\n\nExample of use :\n\nDEV\u003deth3\ntc qdisc del dev $DEV root\ntc qdisc add dev $DEV root handle 30: est 1sec 8sec netem delay 20ms 10ms\ntc qdisc add dev $DEV handle 40:0 parent 30:0 tbf \\\n\tburst 20480 limit 20480 mtu 1514 rate 32000bps\n\nqdisc netem 30: root refcnt 18 limit 1000 delay 20.0ms  10.0ms\n Sent 190792 bytes 413 pkt (dropped 0, overlimits 0 requeues 0)\n rate 18416bit 3pps backlog 0b 0p requeues 0\nqdisc tbf 40: parent 30: rate 256000bit burst 20Kb/8 mpu 0b lat 0us\n Sent 190792 bytes 413 pkt (dropped 6, overlimits 10 requeues 0)\n backlog 0b 5p requeues 0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f8e3234c5f7fbdb06be050c8a1907e9c36d7c61",
      "tree": "d6e9edb2087fa4a97b2cc3d585a0189672a14cf4",
      "parents": [
        "8ade06c616b34b4237c0ed77d1ff0ce04ad7d056",
        "89307babf966165171547f105e2253dec261cfa5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:04:14 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 30 13:04:14 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "b0460e4484f9e990caa817230204f9e3800cf955",
      "tree": "3c8d3bf4448a4b99ffa6445a949abe1bee85c34c",
      "parents": [
        "bc94b52167596e4f9c0a020c10e2f49b04a2e48b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Dec 28 23:27:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 29 15:07:21 2011 -0500"
      },
      "message": "sch_tbf: report backlog information\n\nProvide child qdisc backlog (byte count) information so that \"tc -s\nqdisc\" can report it to user.\n\nqdisc netem 30: root refcnt 18 limit 1000 delay 20.0ms  10.0ms\n Sent 948517 bytes 898 pkt (dropped 0, overlimits 0 requeues 1)\n rate 175056bit 16pps backlog 114b 1p requeues 1\nqdisc tbf 40: parent 30: rate 256000bit burst 20Kb/8 mpu 0b lat 0us\n Sent 948517 bytes 898 pkt (dropped 15, overlimits 611 requeues 0)\n backlog 18168b 12p requeues 0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb52c7acf871537a468433775151339f783d2e8c",
      "tree": "d31943c70571f28ff241234a2bffa765a1d4ef92",
      "parents": [
        "5f0a6e2d503896062f641639dacfe5055c2f593b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Dec 23 19:28:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 24 16:08:50 2011 -0500"
      },
      "message": "netem: dont call vfree() under spinlock and BH disabled\n\ncommit 6373a9a286 (netem: use vmalloc for distribution table) added a\nregression, since vfree() is called while holding a spinlock and BH\nbeing disabled.\n\nFix this by doing the pointers swap in critical section, and freeing\nafter spinlock release.\n\nAlso add __GFP_NOWARN to the kmalloc() try, since we fallback to\nvmalloc().\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abb434cb0539fb355c1c921f8fd761efbbac3462",
      "tree": "24a7d99ec161f8fd4dc9ff03c9c4cc93be883ce6",
      "parents": [
        "2494654d4890316e7340fb8b3458daad0474a1b9",
        "6350323ad8def2ac00d77cdee3b79c9b9fba75c4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 17:13:56 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 17:13:56 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tnet/bluetooth/l2cap_core.c\n\nJust two overlapping changes, one added an initialization of\na local variable, and another change added a new local variable.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2494654d4890316e7340fb8b3458daad0474a1b9",
      "tree": "dcd0fcc707457b56b14b37053c288488872dd8f2",
      "parents": [
        "f5a59b73321d9c6e6a9f0be4c8b563668f12c625"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Dec 23 09:16:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 16:51:18 2011 -0500"
      },
      "message": "netem: loss model API sizes\n\nThe new netem loss model is configured with nested netlink messages.\nThis code is being overly strict about sizes, and is easily confused\nby padding (or possible future expansion). Also message\nfor gemodel is incorrect.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f5a59b73321d9c6e6a9f0be4c8b563668f12c625",
      "tree": "908fe184cc39e76bd37940d5de0c5fecc472c4a1",
      "parents": [
        "681f16232c49de06fb3683a8b128a95dbda9413c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Dec 23 05:19:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 23 16:51:18 2011 -0500"
      },
      "message": "sch_hfsc: report backlog information\n\nAdd backlog (byte count) information in hfsc classes and qdisc, so that\n\"tc -s\" can report it to user, instead of 0 values :\n\nqdisc hfsc 1: root refcnt 6 default 20\n Sent 45141660 bytes 30545 pkt (dropped 0, overlimits 91751 requeues 0)\n rate 1492Kbit 126pps backlog 103226b 74p requeues 0\n...\nclass hfsc 1:20 parent 1:1 leaf 1201: rt m1 0bit d 0us m2 400000bit ls m1 0bit d 0us m2 200000bit\n Sent 49534912 bytes 33519 pkt (dropped 0, overlimits 0 requeues 0)\n backlog 81822b 56p requeues 0\n period 23 work 49451576 bytes rtwork 13277552 bytes level 0\n...\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: John A. Sullivan III \u003cjsullivan@opensourcedevel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7838f2ce36b6ab5c13ef20b1857e3bbd567f1759",
      "tree": "4a84e53445817547adb299b25c54e613f76a8980",
      "parents": [
        "a13861a28b90541aa207532d237e7a940f1b1c7b"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@redhat.com",
        "time": "Thu Dec 22 02:05:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 22 22:34:56 2011 -0500"
      },
      "message": "mqprio: Avoid panic if no options are provided\n\nUserspace may not provide TCA_OPTIONS, in fact tc currently does\nso not do so if no arguments are specified on the command line.\nReturn EINVAL instead of panicing.\n\nSigned-off-by: Thomas Graf \u003ctgraf@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "225d9b89c937633dfeec502741a174fe0bab5b9f",
      "tree": "d9a25ffaa6b4f14c0f3d624d3c654e9b0f7ec3bd",
      "parents": [
        "4e68ea26e76273cc62a981a414a8319a7f4c1077"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Dec 21 03:30:11 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 21 15:44:34 2011 -0500"
      },
      "message": "sch_sfq: rehash queues in perturb timer\n\nA known Out Of Order (OOO) problem hurts SFQ when timer changes\nperturbation value, since all new packets delivered to SFQ enqueue might\nend on different slots than previous in-flight packets.\n\nWith round robin delivery, we can thus deliver packets in a different\norder.\n\nSince SFQ is limited to small amount of in-flight packets, we can rehash\npackets so that this OOO problem is fixed.\n\nThis rehashing is performed only if internal flow classifier is in use.\n\nWe now store in skb-\u003ecb[] the \"struct flow_keys\" so that we dont call\nskb_flow_dissect() again while rehashing.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "869aa41044b04964e27822124b88f799e46f01b9",
      "tree": "740c289a40c1ffc9ec23d9369cdb9389b1edb8ca",
      "parents": [
        "c607b2ed84929e143d9fb5653c4b5d0109147cde"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Dec 15 22:09:45 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 16 15:40:33 2011 -0500"
      },
      "message": "sch_gred: prefer GFP_KERNEL allocations\n\nIn control path, its better to use GFP_KERNEL allocations where\npossible.\n\nBefore taking qdisc spinlock, we preallocate memory just in case we\u0027ll\nneed it in gred_change_vq()\n\nThis is a followup to commit 3f1e6d3fd37b (sch_gred: should not use\nGFP_KERNEL while holding a spinlock)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b26e478f8fd5b575684f021b05a5c6236ebb911a",
      "tree": "27d3b3eaf3fe10d05319ad3395b2569ad5f8f6d0",
      "parents": [
        "bcebcc468a6bcd3820fe9ad36b34220563efc93a",
        "bb3c36863e8001fc21a88bebfdead4da4c23e848"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 16 02:11:14 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 16 02:11:14 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/freescale/fsl_pq_mdio.c\n\tnet/batman-adv/translation-table.c\n\tnet/ipv6/route.c\n"
    },
    {
      "commit": "3a53943b5ae8b61913e2d61e98cbeedf67861c92",
      "tree": "a3edab0ac31a74f722e066529df76b03ef8b96f7",
      "parents": [
        "fcdf95cb293603acdff910715c8aa2b19ed29df4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Dec 14 02:30:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 14 13:34:55 2011 -0500"
      },
      "message": "cls_flow: remove one dynamic array\n\nIts better to use a predefined size for this small automatic variable.\n\nRemoves a sparse error as well :\n\nnet/sched/cls_flow.c:288:13: error: bad constant expression\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90b41a1cd44cc4e507b554ae5a36562a1ba9a4e8",
      "tree": "4206cd6caab2dcec1d3937d5c0eed04085a153a4",
      "parents": [
        "c7c6575f254e5621a8408c29bdab0d704c3fab6e"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Mon Dec 12 14:30:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 19:44:48 2011 -0500"
      },
      "message": "netem: add cell concept to simulate special MAC behavior\n\nThis extension can be used to simulate special link layer\ncharacteristics. Simulate because packet data is not modified, only the\ncalculation base is changed to delay a packet based on the original\npacket size and artificial cell information.\n\npacket_overhead can be used to simulate a link layer header compression\nscheme (e.g. set packet_overhead to -20) or with a positive\npacket_overhead value an additional MAC header can be simulated. It is\nalso possible to \"replace\" the 14 byte Ethernet header with something\nelse.\n\ncell_size and cell_overhead can be used to simulate link layer schemes,\nbased on cells, like some TDMA schemes. Another application area are MAC\nschemes using a link layer fragmentation with a (small) header each.\nCell size is the maximum amount of data bytes within one cell. Cell\noverhead is an additional variable to change the per-cell-overhead\n(e.g.  5 byte header per fragment).\n\nExample (5 kbit/s, 20 byte per packet overhead, cell-size 100 byte, per\ncell overhead 5 byte):\n\n  tc qdisc add dev eth0 root netem rate 5kbit 20 100 5\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3f1e6d3fd37bd4f25e5b19f1c7ca21850426c33f",
      "tree": "4a4c3e784973d34e3689e3fc6789ae3503db576c",
      "parents": [
        "72b36015ba43a3cca5303f5534d2c3e1899eae29"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Dec 11 23:42:53 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 12 19:08:54 2011 -0500"
      },
      "message": "sch_gred: should not use GFP_KERNEL while holding a spinlock\n\ngred_change_vq() is called under sch_tree_lock(sch).\n\nThis means a spinlock is held, and we are not allowed to sleep in this\ncontext.\n\nWe might pre-allocate memory using GFP_KERNEL before taking spinlock,\nbut this is not suitable for stable material.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a73ed26bbae7327370c5bd298f07de78df9e3466",
      "tree": "3c7a04e638261cdd16c324ecd07e303e72fac3b9",
      "parents": [
        "0221cd51543972782af558c527e4ac58b32049fa"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Dec 09 02:46:45 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 09 13:46:15 2011 -0500"
      },
      "message": "sch_red: generalize accurate MAX_P support to RED/GRED/CHOKE\n\nNow RED uses a Q0.32 number to store max_p (max probability), allow\nRED/GRED/CHOKE to use/report full resolution at config/dump time.\n\nOld tc binaries are non aware of new attributes, and still set/get Plog.\n\nNew tc binary set/get both Plog and max_p for backward compatibility,\nthey display \"probability value\" if they get max_p from new kernels.\n\n# tc -d  qdisc show dev ...\n...\nqdisc red 10: parent 1:1 limit 360Kb min 30Kb max 90Kb ecn ewma 5\nprobability 0.09 Scell_log 15\n\nMake sure we avoid potential divides by 0 in reciprocal_value(), if\n(max_th - min_th) is big.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8af2a218de38f51ea4b4fa48cac1273319ae260c",
      "tree": "07a4557322b79878096172355fb02ab2bae3f432",
      "parents": [
        "57459185a19b0246866479522b77cbb9732201d1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Dec 08 06:06:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 08 19:52:43 2011 -0500"
      },
      "message": "sch_red: Adaptative RED AQM\n\nAdaptative RED AQM for linux, based on paper from Sally FLoyd,\nRamakrishna Gummadi, and Scott Shenker, August 2001 :\n\nhttp://icir.org/floyd/papers/adaptiveRed.pdf\n\nGoal of Adaptative RED is to make max_p a dynamic value between 1% and\n50% to reach the target average queue : (max_th - min_th) / 2\n\nEvery 500 ms:\n if (avg \u003e target and max_p \u003c\u003d 0.5)\n  increase max_p : max_p +\u003d alpha;\n else if (avg \u003c target and max_p \u003e\u003d 0.01)\n  decrease max_p : max_p *\u003d beta;\n\ntarget :[min_th + 0.4*(min_th - max_th),\n          min_th + 0.6*(min_th - max_th)].\nalpha : min(0.01, max_p / 4)\nbeta : 0.9\nmax_P is a Q0.32 fixed point number (unsigned, with 32 bits mantissa)\n\nChanges against our RED implementation are :\n\nmax_p is no longer a negative power of two (1/(2^Plog)), but a Q0.32\nfixed point number, to allow full range described in Adatative paper.\n\nTo deliver a random number, we now use a reciprocal divide (thats really\na multiply), but this operation is done once per marked/droped packet\nwhen in RED_BETWEEN_TRESH window, so added cost (compared to previous\nAND operation) is near zero.\n\ndump operation gives current max_p value in a new TCA_RED_MAX_P\nattribute.\n\nExample on a 10Mbit link :\n\ntc qdisc add dev $DEV parent 1:1 handle 10: est 1sec 8sec red \\\n   limit 400000 min 30000 max 90000 avpkt 1000 \\\n   burst 55 ecn adaptative bandwidth 10Mbit\n\n# tc -s -d qdisc show dev eth3\n...\nqdisc red 10: parent 1:1 limit 400000b min 30000b max 90000b ecn\nadaptative ewma 5 max_p\u003d0.113335 Scell_log 15\n Sent 50414282 bytes 34504 pkt (dropped 35, overlimits 1392 requeues 0)\n rate 9749Kbit 831pps backlog 72056b 16p requeues 0\n  marked 1357 early 35 pdrop 0 other 0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2721745501a26d0dc3b88c0d2f3aa11471891388",
      "tree": "e9c09622b11ad7d9317b4b01824374a852867c28",
      "parents": [
        "761965eab38d2cbc59c36e355c59609e3a04705a"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 16:52:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 05 15:20:19 2011 -0500"
      },
      "message": "net: Rename dst_get_neighbour{, _raw} to dst_get_neighbour_noref{, _raw}.\n\nTo reflect the fact that a refrence is not obtained to the\nresulting neighbour entry.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "b3613118eb30a589d971e4eccbbb2a1314f5dfd4",
      "tree": "868c1ee59e1b5c19a4f2e43716400d0001a994e5",
      "parents": [
        "7505afe28c16a8d386624930a018d0052c75d687",
        "5983fe2b29df5885880d7fa3b91aca306c7564ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 13:49:21 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "1ee5fa1e9970a16036e37c7b9d5ce81c778252fc",
      "tree": "8f8b414130339eb15d398ace18c7e061d477329d",
      "parents": [
        "59c2cdae2791c0b2ee13d148edc6b771e7e7953f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Dec 01 11:06:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 01 19:24:38 2011 -0500"
      },
      "message": "sch_red: fix red_change\n\nLe mercredi 30 novembre 2011 à 14:36 -0800, Stephen Hemminger a écrit :\n\n\u003e (Almost) nobody uses RED because they can\u0027t figure it out.\n\u003e According to Wikipedia, VJ says that:\n\u003e  \"there are not one, but two bugs in classic RED.\"\n\nRED is useful for high throughput routers, I doubt many linux machines\nact as such devices.\n\nI was considering adding Adaptative RED (Sally Floyd, Ramakrishna\nGummadi, Scott Shender), August 2001\n\nIn this version, maxp is dynamic (from 1% to 50%), and user only have to\nsetup min_th (target average queue size)\n(max_th and wq (burst in linux RED) are automatically setup)\n\nBy the way it seems we have a small bug in red_change()\n\nif (skb_queue_empty(\u0026sch-\u003eq))\n\tred_end_of_idle_period(\u0026q-\u003eparms);\n\nFirst, if queue is empty, we should call\nred_start_of_idle_period(\u0026q-\u003eparms);\n\nSecond, since we dont use anymore sch-\u003eq, but q-\u003eqdisc, the test is\nmeaningless.\n\nOh well...\n\n[PATCH] sch_red: fix red_change()\n\nNow RED is classful, we must check q-\u003eqdisc-\u003eq.qlen, and if queue is empty,\nwe start an idle period, not end it.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc33cc72423ed3474cd51bc8bd7c1cdc22a78e1a",
      "tree": "55aa0076a9716d848ce3eefcea1c7375f526cd71",
      "parents": [
        "8aa953d03eea1190fdde03089947bba09e5399fe"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 30 23:32:14 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 01 11:40:19 2011 -0500"
      },
      "message": "netem: fix build error on 32bit arches\n\nERROR: \"__udivdi3\" [net/sched/sch_netem.ko] undefined!\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7bc0f28c7a0cd19f40e5a6e4d0a117db9a4e4cd5",
      "tree": "4cdbf530b8ed94f73907327dd21f8303085cfc09",
      "parents": [
        "99d2f47aa9d3ad40daa6ee0770e91b95b71082f0"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Wed Nov 30 12:20:26 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@drr.davemloft.net",
        "time": "Wed Nov 30 23:18:35 2011 -0500"
      },
      "message": "netem: rate extension\n\nCurrently netem is not in the ability to emulate channel bandwidth. Only static\ndelay (and optional random jitter) can be configured.\n\nTo emulate the channel rate the token bucket filter (sch_tbf) can be used.  But\nTBF has some major emulation flaws. The buffer (token bucket depth/rate) cannot\nbe 0. Also the idea behind TBF is that the credit (token in buckets) fills if\nno packet is transmitted. So that there is always a \"positive\" credit for new\npackets. In real life this behavior contradicts the law of nature where\nnothing can travel faster as speed of light. E.g.: on an emulated 1000 byte/s\nlink a small IPv4/TCP SYN packet with ~50 byte require ~0.05 seconds - not 0\nseconds.\n\nNetem is an excellent place to implement a rate limiting feature: static\ndelay is already implemented, tfifo already has time information and the\nuser can skip TBF configuration completely.\n\nThis patch implement rate feature which can be configured via tc. e.g:\n\n\ttc qdisc add dev eth0 root netem rate 10kbit\n\nTo emulate a link of 5000byte/s and add an additional static delay of 10ms:\n\n\ttc qdisc add dev eth0 root netem delay 10ms rate 5KBps\n\nNote: similar to TBF the rate extension is bounded to the kernel timing\nsystem. Depending on the architecture timer granularity, higher rates (e.g.\n10mbit/s and higher) tend to transmission bursts. Also note: further queues\nliving in network adaptors; see ethtool(8).\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@drr.davemloft.net\u003e\n"
    },
    {
      "commit": "f7e57044eeb1841847c24aa06766c8290c202583",
      "tree": "86167b7760363d85731d05a802aa8da1b29b7e29",
      "parents": [
        "15fc1f3617edea50fa58703d59f73e726377bc63"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 30 04:08:58 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 30 17:10:49 2011 -0500"
      },
      "message": "sch_teql: fix lockdep splat\n\nWe need rcu_read_lock() protection before using dst_get_neighbour(), and\nwe must cache its value (pass it to __teql_resolve())\n\nteql_master_xmit() is called under rcu_read_lock_bh() protection, its\nnot enough.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bcc34bb987e07abcf6bc30b7f92fbf22b59d4ef",
      "tree": "52d5f76d4821e9cf6a6fb08f8680febf6708bf43",
      "parents": [
        "11fca931d35a34d01ce209eb8d51ff667c9f5e7c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 29 04:22:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 29 13:17:03 2011 -0500"
      },
      "message": "sch_choke: use skb_flow_dissect()\n\nInstead of using a custom flow dissector, use skb_flow_dissect() and\nbenefit from tunnelling support.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11fca931d35a34d01ce209eb8d51ff667c9f5e7c",
      "tree": "540b10f69a7a6c5249674cc1c67f231443fb6c47",
      "parents": [
        "f07d960df33c5aef8f513efce0fd201f962f94a1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 29 03:40:45 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 29 13:17:03 2011 -0500"
      },
      "message": "sch_sfq: use skb_flow_dissect()\n\nInstead of using a custom flow dissector, use skb_flow_dissect() and\nbenefit from tunnelling support.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7346649826382b769cfadf4a2fe8a84d060c55e9",
      "tree": "0241cce453992881f61d3fbc4f9baf7eb0578135",
      "parents": [
        "75957ba36c05b979701e9ec64b37819adc12f830"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Mon Nov 28 16:32:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 29 12:46:19 2011 -0500"
      },
      "message": "net: Add queue state xoff flag for stack\n\nCreate separate queue state flags so that either the stack or drivers\ncan turn on XOFF.  Added a set of functions used in the stack to determine\nif a queue is really stopped (either by stack or driver)\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a00bd469b6604aa5f165dcc4d07dc07499439a6b",
      "tree": "0b77d5fc46189223b18d5519586d6d1294ad8b96",
      "parents": [
        "6bd2a9af17cc3b153de45390b54c7d64a773beee"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 28 05:25:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 28 19:09:28 2011 -0500"
      },
      "message": "sch_sfb: use skb_flow_dissect()\n\nCurrent SFB double hashing is not fulfilling SFB theory, if two flows\nshare same rxhash value.\n\nUsing skb_flow_dissect() permits to really have better hash dispersion,\nand get tunnelling support as well.\n\nDouble hashing point was mentioned by Florian Westphal\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6bd2a9af17cc3b153de45390b54c7d64a773beee",
      "tree": "08ca6fafec7181b54bfc2c50ca4706dd7400ccbb",
      "parents": [
        "4504b8613b6c65d7787a434f8dcf7901bfe3983d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 28 05:24:18 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 28 19:09:28 2011 -0500"
      },
      "message": "cls_flow: use skb_flow_dissect()\n\nInstead of using a custom flow dissector, use skb_flow_dissect() and\nbenefit from tunnelling support.\n\nThis lack of tunnelling support was mentioned by Dan Siemon.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ccf5ff69fbbd8d877377f5786369cf5aa78a15fc",
      "tree": "2c9a7ca29d9b3052fb952ac52445cfb05742a32c",
      "parents": [
        "19b05f811341aaef3e5e22d2832aa2d8e0bad5ab"
      ],
      "author": {
        "name": "david decotigny",
        "email": "david.decotigny@google.com",
        "time": "Wed Nov 16 12:15:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 16 23:14:02 2011 -0500"
      },
      "message": "net: new counter for tx_timeout errors in sysfs\n\nThis adds the /sys/class/net/DEV/queues/Q/tx_timeout attribute\ncontaining the total number of timeout events on the given queue. It\nis always available with CONFIG_SYSFS, independently of\nCONFIG_RPS/XPS.\n\nCredits to Stephen Hemminger for a preliminary version of this patch.\n\nTested:\n  without CONFIG_SYSFS (compilation only)\n  with sysfs and without CONFIG_RPS \u0026 CONFIG_XPS\n  with sysfs and without CONFIG_RPS\n  with sysfs and without CONFIG_XPS\n  with defaults\n\nSigned-off-by: David Decotigny \u003cdavid.decotigny@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ecd04bc04af7df98b3a93c571e31b6ef6a90681",
      "tree": "3850ea9ffad64f46cfa20ac7b9a2c8e0f4b56517",
      "parents": [
        "8d8bdfe8034399357df58b5f3e4da638a9e9a257"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Nov 08 10:45:04 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 16:41:31 2011 -0500"
      },
      "message": "sch_choke: use skb_header_pointer()\n\nRemove the assumption that skb_get_rxhash() makes IP header and ports\nlinear, and use skb_header_pointer() instead in choke_match_flow()\n\nThis permits __skb_get_rxhash() to use skb_header_pointer() eventually.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "3a9a231d977222eea36eae091df2c358e03ac839",
      "tree": "d2df117cf336a29fddddb000f972b5f333f40f6d",
      "parents": [
        "6e5fdeedca610df600aabc393c4b1f44b128fe49"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri May 27 09:12:25 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:28 2011 -0400"
      },
      "message": "net: Fix files explicitly needing to include module.h\n\nWith calls to modular infrastructure, these files really\nneeds the full module.h header.  Call it out so some of the\ncleanups of implicit and unrequired includes elsewhere can be\ncleaned up.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "859c20123a6f4bac3fad6506f224908834fe3f68",
      "tree": "61c166abfc00e492e94a0e877c819c8b91fdc846",
      "parents": [
        "59445b6b1f90b97c4e28062b96306bacfa4fb170"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Oct 23 17:59:41 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 24 18:40:14 2011 -0400"
      },
      "message": "net_sched: cls_flow: use skb_header_pointer()\n\nDan Siemon would like to add tunnelling support to cls_flow\n\nThis preliminary patch introduces use of skb_header_pointer() to help\nthis task, while avoiding skb head reallocation because of deep packet\ninspection.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8decf868790b48a727d7e7ca164f2bcd3c1389c0",
      "tree": "b759a5f861f842af7ea76f9011b579d06e9d5508",
      "parents": [
        "3fc72370186be2f9d4d6ef06d99e1caa5d92c564",
        "d93dc5c4478c1fd5de85a3e8aece9aad7bbae044"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:davem330/net\n\nConflicts:\n\tMAINTAINERS\n\tdrivers/net/Kconfig\n\tdrivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c\n\tdrivers/net/ethernet/broadcom/tg3.c\n\tdrivers/net/wireless/iwlwifi/iwl-pci.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c\n\tdrivers/net/wireless/rt2x00/rt2800usb.c\n\tdrivers/net/wireless/wl12xx/main.c\n"
    },
    {
      "commit": "27e95a8c670e0c587990ec5b9a87a7ea17873d28",
      "tree": "65da62db2ef37f59d6bece2922da1b5da77ec3b8",
      "parents": [
        "150966ad56291776a1f3fed86000a027e0794922"
      ],
      "author": {
        "name": "Igor Maravić",
        "email": "igorm@etf.rs",
        "time": "Tue Aug 30 03:12:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 15 14:49:43 2011 -0400"
      },
      "message": "pkt_sched: cls_rsvp.h was outdated\n\nFile cls_rsvp.h in /net/sched was outdated. I\u0027m sending you patch for this\nfile.\n\n[ tb[] array should be indexed by X not X-1 -DaveM ]\n\nSigned-off-by: Igor Maravić \u003cigorm@etf.rs\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "363437f40a23bacdead80bb80d08d8193a20cfce",
      "tree": "e5dce35d8aa3ad364dafc1274b3a4c469dbcdb88",
      "parents": [
        "18cf1248eca3f1fc38e12b314a6cadd286260e65"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Aug 25 06:21:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 26 12:55:18 2011 -0400"
      },
      "message": "net_sched: sfb: optimize enqueue on full queue\n\nIn case SFB queue is full (hard limit reached), there is no point\nspending time to compute hash and maximum qlen/p_mark.\n\nWe instead just early drop packet.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8919bc13e8d92c5b082c5c0321567383a071f5bc",
      "tree": "1558f718b5fb02cdd0fca1ac53d1cb8199463d2c",
      "parents": [
        "c2bceb3d7f145af5a0916bea700f2f9d380901ea"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "jhs@mojatatu.com",
        "time": "Mon Aug 15 05:25:40 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 20:10:20 2011 -0700"
      },
      "message": "net_sched: fix port mirror/redirect stats reporting\n\nWhen a redirected or mirrored packet is dropped by the target\ndevice we need to record statistics.\n\nSigned-off-by: Jamal Hadi Salim \u003cjhs@mojatatu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3557619f0f6f7496ed453d4825e24958ab1884e0",
      "tree": "fe66b34573509d0f4880d4f03ae5cde26ff69cb3",
      "parents": [
        "9be6dd6510fde5cfa2ab73f238754d38ee6797bc"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Tue Aug 09 02:04:43 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 09 21:52:11 2011 -0700"
      },
      "message": "net_sched: prio: use qdisc_dequeue_peeked\n\ncommit 07bd8df5df4369487812bf85a237322ff3569b77\n(sch_sfq: fix peek() implementation) changed sfq to use generic\npeek helper.\n\nThis makes HFSC complain about a non-work-conserving child qdisc, if\nprio with sfq child is used within hfsc:\n\nhfsc peeks into prio qdisc, which will then peek into sfq.\nreturned skb is stashed in sch-\u003egso_skb.\n\nNext, hfsc tries to dequeue from prio, but prio will call sfq dequeue\ndirectly, which may return NULL instead of previously peeked-at skb.\n\nHave prio call qdisc_dequeue_peeked, so sfq-\u003edequeue() is\nnot called in this case.\n\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1738bd9cecc5c867b0e2996470c1ff20f66ba79",
      "tree": "c69e0943a29ceb588c8ef8af19130436373d4f1e",
      "parents": [
        "956837f7c954443f426a82ba6f17b33488cf9a0c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jul 29 19:22:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 02:27:21 2011 -0700"
      },
      "message": "sch_sfq: fix sfq_enqueue()\n\ncommit 8efa88540635 (sch_sfq: avoid giving spurious NET_XMIT_CN signals)\nforgot to call qdisc_tree_decrease_qlen() to signal upper levels that a\npacket (from another flow) was dropped, leading to various problems.\n\nWith help from Michal Soltys and Michal Pokrywka, who did a bisection.\n\nBugzilla ref: https://bugzilla.kernel.org/show_bug.cgi?id\u003d39372\nDebian ref: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d631945\n\nReported-by: Lucas Bocchi \u003clucas.bocchi@gmail.com\u003e\nReported-and-bisected-by: Michal Pokrywka \u003cwolfmoon@o2.pl\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Michal Soltys \u003csoltys@ziu.info\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69cce1d1404968f78b177a0314f5822d5afdbbfb",
      "tree": "26223264fd69ea8078d0013fd5a76eb7aeb04c12",
      "parents": [
        "9cbb7ecbcff85077bb12301aaf4c9b5a56c5993d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:09:49 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:11:35 2011 -0700"
      },
      "message": "net: Abstract dst-\u003eneighbour accesses behind helpers.\n\ndst_{get,set}_neighbour()\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0c50c7c9a4b0e92a9189c498e4960919fe66d45",
      "tree": "a892a0628983e819a7ee787a19fa0ed2d5ac79b9",
      "parents": [
        "2af4ba85913bb1755a06193109917c3ddc130265"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Thu Jul 14 23:16:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 15 08:08:26 2011 -0700"
      },
      "message": "Remove redundant variable/code in __qdisc_run\n\nRemove redundant variable \"work\".\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e20e6940736fb7b4dd024933f7456b9da4c44118",
      "tree": "61cf6126b92dcfa3c203ecddefdbac08f73a32c2",
      "parents": [
        "974151e6119f20d2af4acb97526c780ae0f18ccb"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Thu Jul 14 14:45:59 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 14:45:59 2011 -0700"
      },
      "message": "net: remove SK_ROUTE_CAPS from meta ematch\n\nRemove it, as it indirectly exposes netdev features. It\u0027s not used in\niproute2 (2.6.38) - is anything else using its interface?\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "dc7f9f6e8838556f226c2ebd1da7bb305cb25654",
      "tree": "c346ae8a155e187f4f88ba70788dc10ef5ff4c43",
      "parents": [
        "95ec3eb417115fbb2c73b59e2825f6dd5d2f6cf6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jul 05 23:25:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 06 02:52:16 2011 -0700"
      },
      "message": "net: sched: constify tcf_proto and tc_action\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5b8aa1d246fddfe4042be6f6eb169efa5cfbb94",
      "tree": "5c0be52e7fba52ba38c8cd606b5c15e2435e343a",
      "parents": [
        "85a43a9edaf5b541381acbf4061bace1121d6ef0"
      ],
      "author": {
        "name": "jamal",
        "email": "hadi@cyberus.ca",
        "time": "Sun Jun 26 08:13:54 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 27 00:14:10 2011 -0700"
      },
      "message": "net_sched: fix dequeuer fairness\n\nResults on dummy device can be seen in my netconf 2011\nslides. These results are for a 10Gige IXGBE intel\nnic - on another i5 machine, very similar specs to\nthe one used in the netconf2011 results.\nIt turns out - this is a hell lot worse than dummy\nand so this patch is even more beneficial for 10G.\n\nTest setup:\n----------\n\nSystem under test sending packets out.\nAdditional box connected directly dropping packets.\nInstalled prio qdisc on the eth device and default\nnetdev default length of 1000 used as is.\nThe 3 prio bands each were set to 100 (didnt factor in\nthe results).\n\n5 packet runs were made and the middle 3 picked.\n\nresults\n-------\n\nThe \"cpu\" column indicates the which cpu the sample\nwas taken on,\nThe \"Pkt runx\" carries the number of packets a cpu\ndequeued when forced to be in the \"dequeuer\" role.\nThe \"avg\" for each run is the number of times each\ncpu should be a \"dequeuer\" if the system was fair.\n\n3.0-rc4      (plain)\ncpu         Pkt run1        Pkt run2        Pkt run3\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ncpu0        21853354        21598183        22199900\ncpu1          431058          473476          393159\ncpu2          481975          477529          458466\ncpu3        23261406        23412299        22894315\navg         11506948        11490372        11486460\n\n3.0-rc4 with patch and default weight 64\ncpu \t     Pkt run1        Pkt run2        Pkt run3\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ncpu0        13205312        13109359        13132333\ncpu1        10189914        10159127        10122270\ncpu2        10213871        10124367        10168722\ncpu3        13165760        13164767        13096705\navg         11693714        11639405        11630008\n\nAs you can see the system is still not perfect but\nis a lot better than what it was before...\n\nAt the moment we use the old backlog weight, weight_p\nwhich is 64 packets. It seems to be reasonably fine\nwith that value.\nThe system could be made more fair if we reduce the\nweight_p (as per my presentation), but we are going\nto affect the shared backlog weight. Unless deemed\nnecessary, I think the default value is fine. If not\nwe could add yet another knob.\n\nSigned-off-by: Jamal Hadi Salim \u003cjhs@mojatatu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56f8a75c17abb854b5907f4a815dc4c3f186ba11",
      "tree": "6ba333b7668ce7dd04cddecf4f15a0a48b335991",
      "parents": [
        "f470e5ae34d68880a38aa79ee5c102ebc2a1aef6"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Jun 21 20:33:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 20:33:34 2011 -0700"
      },
      "message": "ip: introduce ip_is_fragment helper inline function\n\nThere are enough instances of this:\n\n    iph-\u003efrag_off \u0026 htons(IP_MF | IP_OFFSET)\n\nthat a helper function is probably warranted.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7f080cfe223b3b7424872639d153695615a9255",
      "tree": "605390854789a6ba53e6813ffc69a948a0466530",
      "parents": [
        "4003b65871c101eb5ce8f37a325feac54aa5c681"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Jun 16 11:01:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 19:17:20 2011 -0700"
      },
      "message": "net: remove mm.h inclusion from netdevice.h\n\nRemove linux/mm.h inclusion from netdevice.h -- it\u0027s unused (I\u0027ve checked manually).\n\nTo prevent mm.h inclusion via other channels also extract \"enum dma_data_direction\"\ndefinition into separate header. This tiny piece is what gluing netdevice.h with mm.h\nvia \"netdevice.h \u003d\u003e dmaengine.h \u003d\u003e dma-mapping.h \u003d\u003e scatterlist.h \u003d\u003e mm.h\".\nRemoval of mm.h from scatterlist.h was tried and was found not feasible\non most archs, so the link was cutoff earlier.\n\nHope people are OK with tiny include file.\n\nNote, that mm_types.h is still dragged in, but it is a separate story.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f6ec8d697c08963d83880ccd35c13c5ace716ea",
      "tree": "ad8d93cf6fcdd09b86ade09f5fcbbc66cdb1cca2",
      "parents": [
        "4aa3a715551c93eda32d79bd52042ce500bd5383",
        "56299378726d5f2ba8d3c8cbbd13cb280ba45e4f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-agn-rxon.c\n\tdrivers/net/wireless/rtlwifi/pci.c\n\tnet/netfilter/ipvs/ip_vs_core.c\n"
    },
    {
      "commit": "c7ac8679bec9397afe8918f788cbcef88c38da54",
      "tree": "c152712de4c997ea79252ef9ac72aaedb8f88c18",
      "parents": [
        "929dd047720785f099e12113780b3d7914ce6d9f"
      ],
      "author": {
        "name": "Greg Rose",
        "email": "gregory.v.rose@intel.com",
        "time": "Fri Jun 10 01:27:09 2011 +0000"
      },
      "committer": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Thu Jun 09 20:38:07 2011 -0700"
      },
      "message": "rtnetlink: Compute and store minimum ifinfo dump size\n\nThe message size allocated for rtnl ifinfo dumps was limited to\na single page.  This is not enough for additional interface info\navailable with devices that support SR-IOV and caused a bug in\nwhich VF info would not be displayed if more than approximately\n40 VFs were created per interface.\n\nImplement a new function pointer for the rtnl_register service that will\ncalculate the amount of data required for the ifinfo dump and allocate\nenough data to satisfy the request.\n\nSigned-off-by: Greg Rose \u003cgregory.v.rose@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "a6b7a407865aab9f849dd99a71072b7cd1175116",
      "tree": "42995f2e25b777e8930b5ac180599f8d4e655df6",
      "parents": [
        "aedfebbaa7a4883dc568d8d32b7b32a0f9833f41"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Jun 06 10:43:46 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 06 22:55:11 2011 -0700"
      },
      "message": "net: remove interrupt.h inclusion from netdevice.h\n\n* remove interrupt.g inclusion from netdevice.h -- not needed\n* fixup fallout, add interrupt.h and hardirq.h back where needed.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3019de124b9f5b1526cb3668b74af14371e21795",
      "tree": "3b4fd5843b61f3a860824ec38827cf0256620eed",
      "parents": [
        "5a079c305ad4dda9708b7a29db4a8bd38e21c3a6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 06 16:41:33 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 06 16:41:33 2011 -0700"
      },
      "message": "net: Rework netdev_drivername() to avoid warning.\n\nThis interface uses a temporary buffer, but for no real reason.\nAnd now can generate warnings like:\n\nnet/sched/sch_generic.c: In function dev_watchdog\nnet/sched/sch_generic.c:254:10: warning: unused variable drivername\n\nJust return driver-\u003ename directly or \"\".\n\nReported-by: Connor Hansen \u003ccmdkhh@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07bd8df5df4369487812bf85a237322ff3569b77",
      "tree": "d610d0a326c63551f98ed50821f6603b506527b1",
      "parents": [
        "367bbf2aa1654c12ab5d6dbf4428b043b425be29"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed May 25 04:40:11 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 25 17:55:32 2011 -0400"
      },
      "message": "sch_sfq: fix peek() implementation\n\nSince commit eeaeb068f139 (sch_sfq: allow big packets and be fair),\nsfq_peek() can return a different skb that would be normally dequeued by\nsfq_dequeue() [ if current slot-\u003eallot is negative ]\n\nUse generic qdisc_peek_dequeued() instead of custom implementation, to\nget consistent result.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e\nCC: Jesper Dangaard Brouer \u003chawk@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8efa885406359af300d46910642b50ca82c0fe47",
      "tree": "1eecc0b8152d775b5c261a2a1749a2f711f81f13",
      "parents": [
        "a4910b744486254cfa61995954c118fb2283c4fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 23 11:02:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 23 17:36:00 2011 -0400"
      },
      "message": "sch_sfq: avoid giving spurious NET_XMIT_CN signals\n\nWhile chasing a possible net_sched bug, I found that IP fragments have\nlitle chance to pass a congestioned SFQ qdisc :\n\n- Say SFQ qdisc is full because one flow is non responsive.\n- ip_fragment() wants to send two fragments belonging to an idle flow.\n- sfq_enqueue() queues first packet, but see queue limit reached :\n- sfq_enqueue() drops one packet from \u0027big consumer\u0027, and returns\nNET_XMIT_CN.\n- ip_fragment() cancel remaining fragments.\n\nThis patch restores fairness, making sure we return NET_XMIT_CN only if\nwe dropped a packet from the same flow.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e\nCC: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nCC: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3137663dfb43bb3e3174e9da81db0c05f395fc1b",
      "tree": "d3a09e8eb8655215c9a730da6798e9623f7f0d03",
      "parents": [
        "6df427fe8c481d3be437cbe8bd366bdac82b73c4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu May 19 23:42:09 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 21:01:20 2011 -0400"
      },
      "message": "net: avoid synchronize_rcu() in dev_deactivate_many\n\ndev_deactivate_many() issues one synchronize_rcu() call after qdiscs set\nto noop_qdisc.\n\nThis call is here to make sure they are no outstanding qdisc-less\ndev_queue_xmit calls before returning to caller.\n\nBut in dismantle phase, we dont have to wait, because we wont activate\nagain the device, and we are going to wait one rcu grace period later in\nrollback_registered_many().\n\nAfter this patch, device dismantle uses one synchronize_net() and one\nrcu_barrier() call only, so we have a ~30% speedup and a smaller RTNL\nlatency.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e,\nCC: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06f4e926d256d902dd9a53dcb400fd74974ce087",
      "tree": "0b438b67f5f0eff6fd617bc497a9dace6164a488",
      "parents": [
        "8e7bfcbab3825d1b404d615cb1b54f44ff81f981",
        "d93515611bbc70c2fe4db232e5feb448ed8e4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)\n  macvlan: fix panic if lowerdev in a bond\n  tg3: Add braces around 5906 workaround.\n  tg3: Fix NETIF_F_LOOPBACK error\n  macvlan: remove one synchronize_rcu() call\n  networking: NET_CLS_ROUTE4 depends on INET\n  irda: Fix error propagation in ircomm_lmp_connect_response()\n  irda: Kill set but unused variable \u0027bytes\u0027 in irlan_check_command_param()\n  irda: Kill set but unused variable \u0027clen\u0027 in ircomm_connect_indication()\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_transport()\n  be2net: Kill set but unused variable \u0027req\u0027 in lancer_fw_download()\n  irda: Kill set but unused vars \u0027saddr\u0027 and \u0027daddr\u0027 in irlan_provider_connect_indication()\n  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_peer().\n  rxrpc: Kill set but unused variable \u0027local\u0027 in rxrpc_UDP_error_handler()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_process_connection()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_rotate_tx_window()\n  pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n  isdn: capi: Use pr_debug() instead of ifdefs.\n  tg3: Update version to 3.119\n  tg3: Apply rx_discards fix to 5719/5720\n  ...\n\nFix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c\nas per Davem.\n"
    },
    {
      "commit": "034cfe48d0efc248ba4b725e3a94b95e76fbc5d3",
      "tree": "e5a9079bd3b40f1ef4dd9f88d75a79b862f073a0",
      "parents": [
        "8ce6eb1a4a4bc46820f23e927377d386d3ec5404"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu May 19 19:23:28 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 19:23:28 2011 -0400"
      },
      "message": "networking: NET_CLS_ROUTE4 depends on INET\n\nIP_ROUTE_CLASSID depends on INET and NET_CLS_ROUTE4 selects\nIP_ROUTE_CLASSID, but when INET is not enabled, this kconfig warning\nis produced, so fix it by making NET_CLS_ROUTE4 depend on INET.\n\nwarning: (NET_CLS_ROUTE4) selects IP_ROUTE_CLASSID which has unmet direct dependencies (NET \u0026\u0026 INET)\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f06cd54f555a4ceca4de39160c68c7e3da657e89",
      "tree": "f05c7617954ad5c8420d4c422dda50285a6e6e36",
      "parents": [
        "8fb53b959bd9e503b646a3d68c7b1759667b6a19"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 18:32:55 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 18:32:55 2011 -0400"
      },
      "message": "pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n\nI checked the history and this has been like this since the\nbeginning of time.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75ef0368d182785c7c5c06ac11081e31257a313e",
      "tree": "4be6d4ae5c872e77f685e4b33ee1956a779dc581",
      "parents": [
        "1e547757eca3c30eeeac526716e4ae833c2a9a2f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 18:11:46 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:54 2011 -0700"
      },
      "message": "net,act_police,rcu: remove rcu_barrier()\n\nThere is no callback of this module maybe queued\nsince we use kfree_rcu(), we can safely remove the rcu_barrier().\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "5957b1ac52c5fde2afe5d80abe2a1cb82a9b4f20",
      "tree": "1b0a04a440d272fe925afd9cfe597bbc509c57bd",
      "parents": [
        "f5c8593c107500979909bd51c85e74bb2eaffbaa"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:58:00 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:48 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(tcf_police_free_rcu) to kfree_rcu()\n\n[PATCH 05/17] net,rcu: convert call_rcu(tcf_police_free_rcu) to kfree_rcu()\n\nThe rcu callback tcf_police_free_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(tcf_police_free_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "f5c8593c107500979909bd51c85e74bb2eaffbaa",
      "tree": "af8a93c758fa2de9eaa8eed7110fe835efe62d23",
      "parents": [
        "025cea99db3fb110ebc8ede5ff647833fab9574f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:57:04 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:48 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(tcf_common_free_rcu) to kfree_rcu()\n\nThe rcu callback tcf_common_free_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(tcf_common_free_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "b71d1d426d263b0b6cb5760322efebbfc89d4463",
      "tree": "226ca7390bd6187ec9139d2ccedd26fd94d8e57a",
      "parents": [
        "5f8629c526b4f7e529a6d27bbd802c0dc7fcc357"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Apr 22 04:53:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 22 11:04:14 2011 -0700"
      },
      "message": "inet: constify ip headers and in6_addr\n\nAdd const qualifiers to structs iphdr, ipv6hdr and in6_addr pointers\nwhere possible, to make code intention more obvious.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c01a80cfec6f806246f31ff2680cd3639b30e67",
      "tree": "0b554aad2ec1da71ecf6339d4ba51617bfe1dc3c",
      "parents": [
        "c44d79950b2daa1025e62eede73e4e4a274d1ef3",
        "4a9f65f6304a00f6473e83b19c1e83caa1e42530"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:44:25 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 11 13:44:25 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/smsc911x.c\n"
    },
    {
      "commit": "0545a3037773512d3448557ba048cebb73b3e4af",
      "tree": "fff0f5cf53ed953b002be1c4de0f3c2c7a88bd22",
      "parents": [
        "fc3e5941248be00996150965a469d38c92913ac2"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Apr 04 05:30:58 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 04 11:10:24 2011 -0700"
      },
      "message": "pkt_sched: QFQ - quick fair queue scheduler\n\nThis is an implementation of the Quick Fair Queue scheduler developed\nby Fabio Checconi. The same algorithm is already implemented in ipfw\nin FreeBSD. Fabio had an earlier version developed on Linux, I just\ncleaned it up.  Thanks to Eric Dumazet for testing this under load.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "5e2b61f78411be25f0b84f97d5b5d312f184dfd1",
      "tree": "6a5faa5fb7a2242bebacba4cdb5722b988d3e909",
      "parents": [
        "1018b5c01636c7c6bda31a719bda34fc631db29a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 04 21:47:09 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 04 21:55:31 2011 -0800"
      },
      "message": "ipv4: Remove flowi from struct rtable.\n\nThe only necessary parts are the src/dst addresses, the\ninterface indexes, the TOS, and the mark.\n\nThe rest is unnecessary bloat, which amounts to nearly\n50 bytes on 64-bit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a0e9ae1bd788bc19adc4d4ae08c98b233697402",
      "tree": "13825eeb5bbeae27d66e95f12168eff4b60701ab",
      "parents": [
        "01a16b21d6adf992aa863186c3c4e561a57c1714",
        "b65a0e0c84cf489bfa00d6aa6c48abc5a237100f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 21:27:42 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 21:27:42 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x/bnx2x.h\n"
    },
    {
      "commit": "d276055c4e90a7278cd5167ba9755c9b214bcff7",
      "tree": "d99d4e808f880921660dfdf73af8e97e3a6fdba9",
      "parents": [
        "c53fa1ed92cd671a1dfb1e7569e9ab672612ddc6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Mar 03 11:10:02 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 11:10:02 2011 -0800"
      },
      "message": "net_sched: reduce fifo qdisc size\n\nBecause of various alignements [SLUB / qdisc], we use 512 bytes of\nmemory for one {p|b}fifo qdisc, instead of 256 bytes on 64bit arches and\n192 bytes on 32bit ones.\n\nMove the \"u32 limit\" inside \"struct Qdisc\" (no impact on other qdiscs)\n\nChange qdisc_alloc(), first trying a regular allocation before an\noversized one.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52bc97470e22e67f11b054e51a31eee100ef6867",
      "tree": "46989e54ccf26090049482996d21af05c0db8aeb",
      "parents": [
        "ddc3731fcb712646e4a0f8e6117af6a153e9d36f"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Fri Feb 25 05:45:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 25 14:00:23 2011 -0800"
      },
      "message": "sched: protocol only needed when CONFIG_NET_CLS_ACT is enabled\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "78776d3f2b2b6d59e32cdaf3f30228a0d9d0b720",
      "tree": "4fb3ad17ca343c7137a81c54db6e22d0f2998a96",
      "parents": [
        "1b0db64fb7693c1a131b7bcc38f7bc63fb396850"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:48:13 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:48:13 2011 -0800"
      },
      "message": "sch_netem: Need to include vmalloc.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26f70e1202b3c66c4f63b8b25e0419dd0b3a91e3",
      "tree": "1f36ea8036be58a50ec72e264aee7f26afaf0558",
      "parents": [
        "250a65f78265940ac33a2dd2002924e6126efe14"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Feb 24 17:45:41 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:57 2011 -0800"
      },
      "message": "sch_choke: add choke_skb_cb\n\nBetter document choke skb-\u003ecb[] use, like we did in netem and sfb\n\nThis adds a compile time check to make sure we dont exhaust skb-\u003ecb[]\nspace.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "250a65f78265940ac33a2dd2002924e6126efe14",
      "tree": "ff3503e44602e55634bbb60f009be940f2fcc852",
      "parents": [
        "661b79725fea030803a89a16cda506bac8eeca78"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:22 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:56 2011 -0800"
      },
      "message": "netem: update version and cleanup\n\nGet rid of debug message that are not useful, and enable\nthe log messages in case of error.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "661b79725fea030803a89a16cda506bac8eeca78",
      "tree": "b13a294ecb7696c2c96db88f5b98627f5c4d4ad5",
      "parents": [
        "10f6dfcfde884441db89dc66b945d6c948e1d356"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:21 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:56 2011 -0800"
      },
      "message": "netem: revised correlated loss generator\n\nThis is a patch originated with Stefano Salsano and Fabio Ludovici.\nIt provides several alternative loss models for use with netem.\nThis patch adds two state machine based loss models.\n\nSee: http://netgroup.uniroma2.it/twiki/bin/view.cgi/Main/NetemCLG\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10f6dfcfde884441db89dc66b945d6c948e1d356",
      "tree": "e88dbc0763faca774228cf9c2d42faa0cd0c8782",
      "parents": [
        "df173bda2639ac744ccf596ec1f8f7e66fe4c343"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:55 2011 -0800"
      },
      "message": "Revert \"sch_netem: Remove classful functionality\"\n\nMany users have wanted the old functionality that was lost\nto be able to use pfifo as inner qdisc for netem. The reason that\nnetem could not be classful with the older API was because of the\nlimitations of the old dequeue/requeue interface; now that qdisc API has\na peek function, there is no longer a problem with using any\ninner qdisc\u0027s.\n\nThis reverts commit 02201464119334690fe209849843881b8e9cfa9f.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df173bda2639ac744ccf596ec1f8f7e66fe4c343",
      "tree": "bd74a3a10b0503c578eb1ba5dcd6a4bad59c47d1",
      "parents": [
        "6373a9a286bdd955a76924cee88a2f8f784988b1"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:54 2011 -0800"
      },
      "message": "netem: define NETEM_DIST_MAX\n\nRather than magic constant in code, expose the maximum size of\npacket distribution table in API. In iproute2, q_netem defines\nMAX_DIST as 16K already.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6373a9a286bdd955a76924cee88a2f8f784988b1",
      "tree": "9d49a02cbb695c1eeaa7867c649e22c901248447",
      "parents": [
        "861d7f745f37506bbd90227e97b95baf2a5fac34"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:18 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:54 2011 -0800"
      },
      "message": "netem: use vmalloc for distribution table\n\nThe netem probability table can be large (up to 64K bytes)\nwhich may be too large to allocate in one contiguous chunk.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "861d7f745f37506bbd90227e97b95baf2a5fac34",
      "tree": "023daf46baaadcf3f4ca049cb9e548e9410017ab",
      "parents": [
        "290f5e3b594af70ac8f7fab44dba79ccae1531cd"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 13:04:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 24 22:11:53 2011 -0800"
      },
      "message": "netem: cleanup dump code\n\nUse nla_put_nested to update netlink attribute value.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e0c563101a3f90ce4f4fa3df5ac803f5c50ebcc5",
      "tree": "f8c26ec822a2dbc4765ea770f6c019c8b11c8ea5",
      "parents": [
        "ea18fd950e3210ec6d616e2e669550dd86f74d94"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 09:06:52 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 23 14:11:33 2011 -0800"
      },
      "message": "em_meta: fix sparse warning\n\ngfp_t needs to be cast to integer.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea18fd950e3210ec6d616e2e669550dd86f74d94",
      "tree": "a5e348053de016d3474aefa01a04018a79607ab8",
      "parents": [
        "ada440e3b5c3c155c2a4d73c433b3462086dbb4a"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 23 09:06:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 23 14:11:32 2011 -0800"
      },
      "message": "mqprio: cleanups\n\n* make qdisc_ops local\n* add sparse annotation about expected unlock/unlock in dump_class_stats\n* fix indentation\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e13e02a3c68d899169c78d9a18689bd73491d59a",
      "tree": "6e6b40ef37261df391cd445ec0f1b3d538b23a47",
      "parents": [
        "dee9f4bceb5fd9dbfcc1567148fccdbf16d6a38a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Feb 23 10:56:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 23 14:05:11 2011 -0800"
      },
      "message": "net_sched: SFB flow scheduler\n\nThis is the Stochastic Fair Blue scheduler, based on work from :\n\nW. Feng, D. Kandlur, D. Saha, K. Shin. Blue: A New Class of Active Queue\nManagement Algorithms. U. Michigan CSE-TR-387-99, April 1999.\n\nhttp://www.thefengs.com/wuchang/blue/CSE-TR-387-99.pdf\n\nThis implementation is based on work done by Juliusz Chroboczek\n\nGeneral SFB algorithm can be found in figure 14, page 15:\n\nB[l][n] : L x N array of bins (L levels, N bins per level)\nenqueue()\nCalculate hash function values h{0}, h{1}, .. h{L-1}\nUpdate bins at each level\nfor i \u003d 0 to L - 1\n   if (B[i][h{i}].qlen \u003e bin_size)\n      B[i][h{i}].p_mark +\u003d p_increment;\n   else if (B[i][h{i}].qlen \u003d\u003d 0)\n      B[i][h{i}].p_mark -\u003d p_decrement;\np_min \u003d min(B[0][h{0}].p_mark ... B[L-1][h{L-1}].p_mark);\nif (p_min \u003d\u003d 1.0)\n    ratelimit();\nelse\n    mark/drop with probabilty p_min;\n\nI did the adaptation of Juliusz code to meet current kernel standards,\nand various changes to address previous comments :\n\nhttp://thread.gmane.org/gmane.linux.network/90225\nhttp://thread.gmane.org/gmane.linux.network/90375\n\nDefault flow classifier is the rxhash introduced by RPS in 2.6.35, but\nwe can use an external flow classifier if wanted.\n\ntc qdisc add dev $DEV parent 1:11 handle 11:  \\\n        est 0.5sec 2sec sfb limit 128\n\ntc filter add dev $DEV protocol ip parent 11: handle 3 \\\n        flow hash keys dst divisor 1024\n\nNotes:\n\n1) SFB default child qdisc is pfifo_fast. It can be changed by another\nqdisc but a child qdisc MUST not drop a packet previously queued. This\nis because SFB needs to handle a dequeued packet in order to maintain\nits virtual queue states. pfifo_head_drop or CHOKe should not be used.\n\n2) ECN is enabled by default, unlike RED/CHOKe/GRED\n\nWith help from Patrick McHardy \u0026 Andi Kleen\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Juliusz Chroboczek \u003cJuliusz.Chroboczek@pps.jussieu.fr\u003e\nCC: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCC: Patrick McHardy \u003ckaber@trash.net\u003e\nCC: Andi Kleen \u003candi@firstfloor.org\u003e\nCC: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86fce3ba1e731cf6d97a4157a192ffa60dc7ec0b",
      "tree": "fceed07dcb1b16fdeed6d21543d6eff83d8741e0",
      "parents": [
        "db62983a1e4b2af9e79c97af768f0c8b80bd93f0"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sun Feb 20 16:14:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 22 11:22:33 2011 -0800"
      },
      "message": "cls_u32: fix sparse warnings\n\nThe variable _data is used in asm-generic to define sections\nwhich causes sparse warnings, so just rename the variable.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f04d5068a90602b93a7953e9a47c496705c6976",
      "tree": "272ea087a13648cb3dd34e0feed08cfc4b1e5e2c",
      "parents": [
        "2205a6ea93fea76f88b43727fea53f3ce3790d6f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Feb 20 11:49:45 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 20 11:49:45 2011 -0800"
      },
      "message": "net: Fix more stale on-stack list_head objects.\n\nFrom: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n\nIn the beginning with batching unreg_list was a list that was used only\nonce in the lifetime of a network device (I think).  Now we have calls\nusing the unreg_list that can happen multiple times in the life of a\nnetwork device like dev_deactivate and dev_close that are also using the\nunreg_list.  In addition in unregister_netdevice_queue we also do a\nlist_move because for devices like veth pairs it is possible that\nunregister_netdevice_queue will be called multiple times.\n\nSo I think the change below to fix dev_deactivate which Eric D. missed\nwill fix this problem.  Now to go test that.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ac7100ba93428a26cde8e47dfcfcfbfbfcce66de",
      "tree": "1750fd2e7dc4b48748fe59d7737f460185ad5990",
      "parents": [
        "263fb5b1bf9265d0e4ce59ff6ea92f478b5b61ea"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Feb 14 19:02:23 2011 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Feb 14 19:07:58 2011 +0000"
      },
      "message": "sch_mqprio: Always set num_tc to 0 in mqprio_destroy()\n\nAll the cleanup code in mqprio_destroy() is currently conditional on\npriv-\u003eqdiscs being non-null, but that condition should only apply to\nthe per-queue qdisc cleanup.  We should always set the number of\ntraffic classes back to 0 here.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\n"
    },
    {
      "commit": "cdfb74d4c2e3bcc9383121af2591d0ae15007ba7",
      "tree": "585beab2e9f1b0b45bcfabae263e0018baacf2b7",
      "parents": [
        "45e144339ac59971eb44be32e1282760aaabe861"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 02 23:06:31 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 02 23:06:31 2011 -0800"
      },
      "message": "sch_choke: Need linux/vmalloc.h\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45e144339ac59971eb44be32e1282760aaabe861",
      "tree": "b9d93acb2c1bb505d3b6facc426d307c59dc63a4",
      "parents": [
        "119b3d386985fcd477b3131190c041516a73f83a"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 02 15:21:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 02 20:52:42 2011 -0800"
      },
      "message": "sched: CHOKe flow scheduler\n\nCHOKe (\"CHOose and Kill\" or \"CHOose and Keep\") is an alternative\npacket scheduler based on the Random Exponential Drop (RED) algorithm.\n\nThe core idea is:\n  For every packet arrival:\n  \tCalculate Qave\n\tif (Qave \u003c minth)\n\t     Queue the new packet\n\telse\n\t     Select randomly a packet from the queue\n\t     if (both packets from same flow)\n\t     then Drop both the packets\n\t     else if (Qave \u003e maxth)\n\t          Drop packet\n\t     else\n\t       \t  Admit packet with proability p (same as RED)\n\nSee also:\n  Rong Pan, Balaji Prabhakar, Konstantinos Psounis, \"CHOKe: a stateless active\n   queue management scheme for approximating fair bandwidth allocation\",\n  Proceeding of INFOCOM\u00272000, March 2000.\n\nHelp from:\n     Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n     Patrick McHardy \u003ckaber@trash.net\u003e\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "119b3d386985fcd477b3131190c041516a73f83a",
      "tree": "5a21a8c6d46efbbc604d5a1d53aa67c19076d4ab",
      "parents": [
        "b299e4f001cfa16205f9121f4630970049652268"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Feb 02 15:19:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 02 20:51:20 2011 -0800"
      },
      "message": "sfq: deadlock in error path\n\nThe change to allow divisor to be a parameter (in 2.6.38-rc1)\n commit 817fb15dfd988d8dda916ee04fa506f0c466b9d6\nintroduced a possible deadlock caught by sparse.\n\nThe scheduler tree lock was left locked in the case of an incorrect\ndivisor value. Simplest fix is to move test outside of lock\nwhich also solves problem of partial update.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "144ce879b057c760194d808c90826cd96308f423",
      "tree": "cb98182f790baedda1e17c37e43b677b1912cac2",
      "parents": [
        "682a1694115ec1c8fcd794c35b80354166978207"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jan 26 07:21:57 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 26 13:15:29 2011 -0800"
      },
      "message": "net_sched: sch_mqprio: dont leak kernel memory\n\nmqprio_dump() should make sure all fields of struct tc_mqprio_qopt are\ninitialized.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5bdc22a56549e7983c6b443298672641952ea035",
      "tree": "fbfd4e7453e4fd23dfef826d4610ed2aae47b36c",
      "parents": [
        "b6f4098897f30b7ea90a1c1edf35e9b20a9d828a",
        "e92427b289d252cfbd4cb5282d92f4ce1a5bb1fb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 14:09:35 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 14:09:35 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/sched/sch_hfsc.c\n\tnet/sched/sch_htb.c\n\tnet/sched/sch_tbf.c\n"
    },
    {
      "commit": "e92427b289d252cfbd4cb5282d92f4ce1a5bb1fb",
      "tree": "6d30e5e7b7f8e9aaa51d43b7128ac56860fa03bb",
      "parents": [
        "c506653d35249bb4738bb139c24362e1ae724bc1",
        "ec30f343d61391ab23705e50a525da1d55395780"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 13:17:06 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 24 13:17:06 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "23624935e0c4b04730ed8d7d21f0cd25b2c2cda1",
      "tree": "3fedc885d6bcd72c94fc239ae2ef98937f77c722",
      "parents": [
        "bb134d2298b49f50cf6d9388410fba96272905dc"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jan 21 16:26:09 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 21 16:26:09 2011 -0800"
      },
      "message": "net_sched: TCQ_F_CAN_BYPASS generalization\n\nNow qdisc stab is handled before TCQ_F_CAN_BYPASS test in\n__dev_xmit_skb(), we can generalize TCQ_F_CAN_BYPASS to other qdiscs\nthan pfifo_fast : pfifo, bfifo, pfifo_head_drop and sfq\n\nSFQ is special because it can have external classifiers, and in these\ncases, we cannot bypass queue discipline (packet could be dropped by\nclassifier) without admin asking it, or further changes.\n\nIts worth doing this, especially for SFQ, avoiding dirtying memory in\ncase no packets are already waiting in queue.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "9190b3b3208d052d98cb601fcc192f3f71a5658b"
}
