1. 18 8月, 2006 15 次提交
  2. 17 8月, 2006 2 次提交
  3. 16 8月, 2006 7 次提交
  4. 15 8月, 2006 14 次提交
  5. 14 8月, 2006 2 次提交
    • H
      [INET]: Use pskb_trim_unique when trimming paged unique skbs · e9fa4f7b
      Herbert Xu 提交于
      The IPv4/IPv6 datagram output path was using skb_trim to trim paged
      packets because they know that the packet has not been cloned yet
      (since the packet hasn't been given to anything else in the system).
      
      This broke because skb_trim no longer allows paged packets to be
      trimmed.  Paged packets must be given to one of the pskb_trim functions
      instead.
      
      This patch adds a new pskb_trim_unique function to cover the IPv4/IPv6
      datagram output path scenario and replaces the corresponding skb_trim
      calls with it.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e9fa4f7b
    • M
      [NETFILTER]: ulog: fix panic on SMP kernels · dcb7cd97
      Mark Huang 提交于
      Fix kernel panic on various SMP machines. The culprit is a null
      ub->skb in ulog_send(). If ulog_timer() has already been scheduled on
      one CPU and is spinning on the lock, and ipt_ulog_packet() flushes the
      queue on another CPU by calling ulog_send() right before it exits,
      there will be no skbuff when ulog_timer() acquires the lock and calls
      ulog_send(). Cancelling the timer in ulog_send() doesn't help because
      it has already been scheduled and is running on the first CPU.
      
      Similar problem exists in ebt_ulog.c and nfnetlink_log.c.
      Signed-off-by: NMark Huang <mlhuang@cs.princeton.edu>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      dcb7cd97