1. 17 12月, 2007 5 次提交
    • V
      [SCTP]: Flush fragment queue when exiting partial delivery. · ef5d4cf2
      Vlad Yasevich 提交于
      At the end of partial delivery, we may have complete messages
      sitting on the fragment queue.  These messages are stuck there
      until a new fragment arrives.  This can comletely stall a
      given association.  When clearing partial delivery state, flush
      any complete messages from the fragment queue and send them on
      their way up.
      Signed-off-by: NVlad Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ef5d4cf2
    • J
      [AX25]: Locking dependencies fix in ax25_disconnect(). · 215f7b08
      Jarek Poplawski 提交于
      Bernard Pidoux reported these lockdep warnings:
      
      [ INFO: possible irq lock inversion dependency detected ]
      2.6.23.1 #1
      ---------------------------------------------------------
      fpac/4933 just changed the state of lock:
       (slock-AF_AX25){--..}, at: [<d8be3312>] ax25_disconnect+0x46/0xaf
       [ax25]
       but this lock was taken by another, soft-irq-safe lock in the past:
        (ax25_list_lock){-+..}
      
        and interrupts could create inverse lock ordering between them.
        [...]
      
      [ INFO: inconsistent lock state ]
      2.6.23.1 #1
      ---------------------------------
      inconsistent {in-softirq-W} -> {softirq-on-W} usage.
      ax25_call/4005 [HC0[0]:SC0[0]:HE1:SE1] takes:
       (slock-AF_AX25){-+..}, at: [<d8b79312>] ax25_disconnect+0x46/0xaf [ax25]
       [...]
      
      This means slock-AF_AX25 could be taken both from softirq and process
      context with softirqs enabled, so it's endangered itself, but also makes
      ax25_list_lock vulnerable. It was not 100% verified if the real lockup
      can happen, but this fix isn't very costly and looks safe anyway.
      (It was tested by Bernard with 2.6.23.9 and 2.6.24-rc5 kernels.)
      
      
      Reported_by: Bernard Pidoux <pidoux@ccr.jussieu.fr>
      Tested_by: Bernard Pidoux <pidoux@ccr.jussieu.fr>
      Signed-off-by: NJarek Poplawski <jarkao2@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      215f7b08
    • S
      [IPV4]: Make tcp_input_metrics() get minimum RTO via tcp_rto_min() · 488faa2a
      Satoru SATOH 提交于
      tcp_input_metrics() refers to the built-time constant TCP_RTO_MIN
      regardless of configured minimum RTO with iproute2.
      Signed-off-by: NSatoru SATOH <satoru.satoh@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      488faa2a
    • W
      [IPV6]: Fix the return value of ipv6_getsockopt · cf6fc4a9
      Wei Yongjun 提交于
      If CONFIG_NETFILTER if not selected when compile the kernel source code, 
      ipv6_getsockopt will returen an EINVAL error if optname is not supported by
      the kernel. But if CONFIG_NETFILTER is selected, ENOPROTOOPT error will 
      be return.
      
      This patch fix to always return ENOPROTOOPT error if optname argument of 
      ipv6_getsockopt is not supported by the kernel.
      Signed-off-by: NWei Yongjun <yjwei@cn.fujitsu.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cf6fc4a9
    • S
      [BRIDGE]: Assign random address. · 3ae41254
      Stephen Hemminger 提交于
      Assigning a valid random address to bridge device solves problems
      when bridge device is brought up before adding real device to bridge.
      When the first real device is added to the bridge, it's address
      will overide the bridges random address.
      
      Note: any device added to a bridge must already have a valid
      ethernet address.
       br_add_if -> br_fdb_insert -> fdb_insert -> is_valid_ether_addr
      Signed-off-by: NStephen Hemminger <shemminger@linux-foundation.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3ae41254
  2. 15 12月, 2007 9 次提交
  3. 13 12月, 2007 2 次提交
  4. 12 12月, 2007 24 次提交