1. 25 1月, 2012 14 次提交
  2. 18 1月, 2012 5 次提交
  3. 17 1月, 2012 13 次提交
  4. 16 1月, 2012 2 次提交
  5. 14 1月, 2012 2 次提交
  6. 13 1月, 2012 4 次提交
    • R
      RDS: Remove some unused iWARP code · 5b7bf42e
      Roland Dreier 提交于
      rds_iw_flush_goal() just returns a count, but it is only called in one
      place and its return value is ignored there.  So delete all the dead code.
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5b7bf42e
    • E
      net_sched: sfq: add optional RED on top of SFQ · ddecf0f4
      Eric Dumazet 提交于
      Adds an optional Random Early Detection on each SFQ flow queue.
      
      Traditional SFQ limits count of packets, while RED permits to also
      control number of bytes per flow, and adds ECN capability as well.
      
      1) We dont handle the idle time management in this RED implementation,
      since each 'new flow' begins with a null qavg. We really want to address
      backlogged flows.
      
      2) if headdrop is selected, we try to ecn mark first packet instead of
      currently enqueued packet. This gives faster feedback for tcp flows
      compared to traditional RED [ marking the last packet in queue ]
      
      Example of use :
      
      tc qdisc add dev $DEV parent 1:1 handle 10: est 1sec 4sec sfq \
      	limit 3000 headdrop flows 512 divisor 16384 \
      	redflowlimit 100000 min 8000 max 60000 probability 0.20 ecn
      
      qdisc sfq 10: parent 1:1 limit 3000p quantum 1514b depth 127 headdrop
      flows 512/16384 divisor 16384
       ewma 6 min 8000b max 60000b probability 0.2 ecn
       prob_mark 0 prob_mark_head 4876 prob_drop 6131
       forced_mark 0 forced_mark_head 0 forced_drop 0
       Sent 1175211782 bytes 777537 pkt (dropped 6131, overlimits 11007
      requeues 0)
       rate 99483Kbit 8219pps backlog 689392b 456p requeues 0
      
      In this test, with 64 netperf TCP_STREAM sessions, 50% using ECN enabled
      flows, we can see number of packets CE marked is smaller than number of
      drops (for non ECN flows)
      
      If same test is run, without RED, we can check backlog is much bigger.
      
      qdisc sfq 10: parent 1:1 limit 3000p quantum 1514b depth 127 headdrop
      flows 512/16384 divisor 16384
       Sent 1148683617 bytes 795006 pkt (dropped 0, overlimits 0 requeues 0)
       rate 98429Kbit 8521pps backlog 1221290b 841p requeues 0
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      CC: Stephen Hemminger <shemminger@vyatta.com>
      CC: Dave Taht <dave.taht@gmail.com>
      Tested-by: NDave Taht <dave.taht@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ddecf0f4
    • G
      net: decrement memcg jump label when limit, not usage, is changed · 1398eee0
      Glauber Costa 提交于
      The logic of the current code is that whenever we destroy
      a cgroup that had its limit set (set meaning different than
      maximum), we should decrement the jump_label counter.
      Otherwise we assume it was never incremented.
      
      But what the code actually does is test for RES_USAGE
      instead of RES_LIMIT. Usage being different than maximum
      is likely to be true most of the time.
      
      The effect of this is that the key must become negative,
      and since the jump_label test says:
      
              !!atomic_read(&key->enabled);
      
      we'll have jump_labels still on when no one else is
      using this functionality.
      Signed-off-by: NGlauber Costa <glommer@parallels.com>
      CC: David S. Miller <davem@davemloft.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1398eee0
    • E
      net: reintroduce missing rcu_assign_pointer() calls · cf778b00
      Eric Dumazet 提交于
      commit a9b3cd7f (rcu: convert uses of rcu_assign_pointer(x, NULL) to
      RCU_INIT_POINTER) did a lot of incorrect changes, since it did a
      complete conversion of rcu_assign_pointer(x, y) to RCU_INIT_POINTER(x,
      y).
      
      We miss needed barriers, even on x86, when y is not NULL.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      CC: Stephen Hemminger <shemminger@vyatta.com>
      CC: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cf778b00