1. 25 Mar, 2006 5 commits
    • Ilia Sotnikov's avatar
      [IPV4]: Aggregate route entries with different TOS values · cef2685e
      Ilia Sotnikov authored
      When we get an ICMP need-to-frag message, the original TOS value in the
      ICMP payload cannot be used as a key to look up the routes to update.
      This is because the TOS field may have been modified by routers on the
      way.  Similarly, ip_rt_redirect should also ignore the TOS as the router
      that gave us the message may have modified the TOS value.
      
      The patch achieves this objective by aggregating entries with different
      TOS values (but are otherwise identical) into the same bucket.  This
      makes it easy to update them at the same time when an ICMP message is
      received.
      
      In future we should use a twin-hashing scheme where teh aggregation
      occurs at the entry level.  That is, the TOS goes back into the hash
      for normal lookups while ICMP lookups will end up with a node that
      gives us a list that contains all other route entries that differ
      only by TOS.
      Signed-off-by: default avatarIlia Sotnikov <hostcc@gmail.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cef2685e
    • David S. Miller's avatar
      [TCP]: Mark tcp_*mem[] __read_mostly. · b8059ead
      David S. Miller authored
      Suggested by Stephen Hemminger.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b8059ead
    • John Heffner's avatar
      [TCP]: Set default max buffers from memory pool size · 7b4f4b5e
      John Heffner authored
      This patch sets the maximum TCP buffer sizes (available to automatic
      buffer tuning, not to setsockopt) based on the TCP memory pool size.
      The maximum sndbuf and rcvbuf each will be up to 4 MB, but no more
      than 1/128 of the memory pressure threshold.
      Signed-off-by: default avatarJohn Heffner <jheffner@psc.edu>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7b4f4b5e
    • Herbert Xu's avatar
      [SCTP]: Fix up sctp_rcv return value · 2babf9da
      Herbert Xu authored
      I was working on the ipip/xfrm problem and as usual I get side-tracked by
      other problems.
      
      As part of an attempt to change the IPv4 protocol handler calling
      convention I found that SCTP violated the existing convention.
      
      It's returning non-zero values after freeing the skb.  This is doubly bad
      as 1) the skb gets resubmitted; 2) the return value is interpreted as a
      protocol number.
      
      This patch changes those return values to zero.
      
      IPv6 doesn't suffer from this problem because it uses a positive return
      value as an indication for resubmission.  So the only effect of this patch
      there is to increment the IPSTATS_MIB_INDELIVERS counter which IMHO is
      the right thing to do.
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2babf9da
    • Herbert Xu's avatar
      [NET]: Take RTNL when unregistering notifier · 9f514950
      Herbert Xu authored
      The netdev notifier call chain is currently unregistered without taking
      any locks outside the notifier system.  Because the notifier system itself
      does not synchronise unregistration with respect to the calling of the
      chain, we as its user need to do our own locking.
      
      We are supposed to take the RTNL for all calls to netdev notifiers, so
      taking the RTNL should be sufficient to protect it.
      
      The registration path in dev.c already takes the RTNL so it's OK.
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9f514950
  2. 24 Mar, 2006 35 commits