1. 14 Mar, 2013 22 commits
  2. 13 Mar, 2013 10 commits
  3. 12 Mar, 2013 8 commits
    • David J. Choi's avatar
      ks8851_mll: basic ethernet statistics · c1ad32af
      David J. Choi authored
      Implement to collect ethernet statistical information on ks8851_mll device.
      Signed-off-by: default avatarDavid J. Choi <david.choi@micrel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c1ad32af
    • Zhang Yanfei's avatar
      driver: isdn: hisax: remove cast for kmalloc/kzalloc return value · f754e913
      Zhang Yanfei authored
      remove cast for kmalloc/kzalloc return value.
      Signed-off-by: default avatarZhang Yanfei <zhangyanfei@cn.fujitsu.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Karsten Keil <isdn@linux-pingi.de>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f754e913
    • Zhang Yanfei's avatar
      driver: isdn: capi: remove cast for kmalloc return value · c3f14cf9
      Zhang Yanfei authored
      remove cast for kmalloc return value.
      Signed-off-by: default avatarZhang Yanfei <zhangyanfei@cn.fujitsu.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Karsten Keil <isdn@linux-pingi.de>
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c3f14cf9
    • Michael Stapelberg's avatar
      mv643xx_eth with 88E1318S: support Wake on LAN · 3871c387
      Michael Stapelberg authored
      This has been tested on a qnap TS-119P II. Note that enabling WOL with
      "ethtool -s eth0 wol g" is not enough; you also need to tell the PIC
      microcontroller inside the qnap that WOL should be enabled by sending
      0xF2 with qcontrol(1) and you have to disable EUP ("Energy-using
      Products", a European power-saving thing) by sending 0xF4.
      Signed-off-by: default avatarMichael Stapelberg <michael@stapelberg.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3871c387
    • Michael Stapelberg's avatar
      phy: add set_wol/get_wol functions · 42e836eb
      Michael Stapelberg authored
      This allows ethernet drivers (such as the mv643xx_eth) to support
      Wake on LAN on platforms where PHY registers have to be configured
      for Wake on LAN (e.g. the Marvell Kirkwood based qnap TS-119P II).
      Signed-off-by: default avatarMichael Stapelberg <michael@stapelberg.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      42e836eb
    • Nandita Dukkipati's avatar
      tcp: TLP loss detection. · 9b717a8d
      Nandita Dukkipati authored
      This is the second of the TLP patch series; it augments the basic TLP
      algorithm with a loss detection scheme.
      
      This patch implements a mechanism for loss detection when a Tail
      loss probe retransmission plugs a hole thereby masking packet loss
      from the sender. The loss detection algorithm relies on counting
      TLP dupacks as outlined in Sec. 3 of:
      http://tools.ietf.org/html/draft-dukkipati-tcpm-tcp-loss-probe-01
      
      The basic idea is: Sender keeps track of TLP "episode" upon
      retransmission of a TLP packet. An episode ends when the sender receives
      an ACK above the SND.NXT (tracked by tlp_high_seq) at the time of the
      episode. We want to make sure that before the episode ends the sender
      receives a "TLP dupack", indicating that the TLP retransmission was
      unnecessary, so there was no loss/hole that needed plugging. If the
      sender gets no TLP dupack before the end of the episode, then it reduces
      ssthresh and the congestion window, because the TLP packet arriving at
      the receiver probably plugged a hole.
      Signed-off-by: default avatarNandita Dukkipati <nanditad@google.com>
      Acked-by: default avatarNeal Cardwell <ncardwell@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9b717a8d
    • Nandita Dukkipati's avatar
      tcp: Tail loss probe (TLP) · 6ba8a3b1
      Nandita Dukkipati authored
      This patch series implement the Tail loss probe (TLP) algorithm described
      in http://tools.ietf.org/html/draft-dukkipati-tcpm-tcp-loss-probe-01. The
      first patch implements the basic algorithm.
      
      TLP's goal is to reduce tail latency of short transactions. It achieves
      this by converting retransmission timeouts (RTOs) occuring due
      to tail losses (losses at end of transactions) into fast recovery.
      TLP transmits one packet in two round-trips when a connection is in
      Open state and isn't receiving any ACKs. The transmitted packet, aka
      loss probe, can be either new or a retransmission. When there is tail
      loss, the ACK from a loss probe triggers FACK/early-retransmit based
      fast recovery, thus avoiding a costly RTO. In the absence of loss,
      there is no change in the connection state.
      
      PTO stands for probe timeout. It is a timer event indicating
      that an ACK is overdue and triggers a loss probe packet. The PTO value
      is set to max(2*SRTT, 10ms) and is adjusted to account for delayed
      ACK timer when there is only one oustanding packet.
      
      TLP Algorithm
      
      On transmission of new data in Open state:
        -> packets_out > 1: schedule PTO in max(2*SRTT, 10ms).
        -> packets_out == 1: schedule PTO in max(2*RTT, 1.5*RTT + 200ms)
        -> PTO = min(PTO, RTO)
      
      Conditions for scheduling PTO:
        -> Connection is in Open state.
        -> Connection is either cwnd limited or no new data to send.
        -> Number of probes per tail loss episode is limited to one.
        -> Connection is SACK enabled.
      
      When PTO fires:
        new_segment_exists:
          -> transmit new segment.
          -> packets_out++. cwnd remains same.
      
        no_new_packet:
          -> retransmit the last segment.
             Its ACK triggers FACK or early retransmit based recovery.
      
      ACK path:
        -> rearm RTO at start of ACK processing.
        -> reschedule PTO if need be.
      
      In addition, the patch includes a small variation to the Early Retransmit
      (ER) algorithm, such that ER and TLP together can in principle recover any
      N-degree of tail loss through fast recovery. TLP is controlled by the same
      sysctl as ER, tcp_early_retrans sysctl.
      tcp_early_retrans==0; disables TLP and ER.
      		 ==1; enables RFC5827 ER.
      		 ==2; delayed ER.
      		 ==3; TLP and delayed ER. [DEFAULT]
      		 ==4; TLP only.
      
      The TLP patch series have been extensively tested on Google Web servers.
      It is most effective for short Web trasactions, where it reduced RTOs by 15%
      and improved HTTP response time (average by 6%, 99th percentile by 10%).
      The transmitted probes account for <0.5% of the overall transmissions.
      Signed-off-by: default avatarNandita Dukkipati <nanditad@google.com>
      Acked-by: default avatarNeal Cardwell <ncardwell@google.com>
      Acked-by: default avatarYuchung Cheng <ycheng@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6ba8a3b1
    • Fabio Estevam's avatar
      fec: Use devm_request_and_ioremap() · 83e519b6
      Fabio Estevam authored
      Using devm_request_and_ioremap() can make the code cleaner and simpler.
      Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      83e519b6