1. 02 Jul, 2011 3 commits
    • David S. Miller's avatar
      ipv6: Don't put artificial limit on routing table size. · 957c665f
      David S. Miller authored
      IPV6, unlike IPV4, doesn't have a routing cache.
      
      Routing table entries, as well as clones made in response
      to route lookup requests, all live in the same table.  And
      all of these things are together collected in the destination
      cache table for ipv6.
      
      This means that routing table entries count against the garbage
      collection limits, even though such entries cannot ever be reclaimed
      and are added explicitly by the administrator (rather than being
      created in response to lookups).
      
      Therefore it makes no sense to count ipv6 routing table entries
      against the GC limits.
      
      Add a DST_NOCOUNT destination cache entry flag, and skip the counting
      if it is set.  Use this flag bit in ipv6 when adding routing table
      entries.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      957c665f
    • David S. Miller's avatar
      ipv6: Don't change dst->flags using assignments. · 11d53b49
      David S. Miller authored
      This blows away any flags already set in the entry.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      11d53b49
    • Arnd Bergmann's avatar
      6pack,mkiss: fix lock inconsistency · 6e4e2f81
      Arnd Bergmann authored
      Lockdep found a locking inconsistency in the mkiss_close function:
      
      > kernel: [ INFO: inconsistent lock state ]
      > kernel: 2.6.39.1 #3
      > kernel: ---------------------------------
      > kernel: inconsistent {IN-SOFTIRQ-R} -> {SOFTIRQ-ON-W} usage.
      > kernel: ax25ipd/2813 [HC0[0]:SC0[0]:HE1:SE1] takes:
      > kernel: (disc_data_lock){+++?.-}, at: [<ffffffffa018552b>] mkiss_close+0x1b/0x90 [mkiss]
      > kernel: {IN-SOFTIRQ-R} state was registered at:
      
      The message hints that disc_data_lock is aquired with softirqs disabled,
      but does not itself disable softirqs, which can in rare circumstances
      lead to a deadlock. 
      The same problem is present in the 6pack driver, this patch fixes both
      by using write_lock_bh instead of write_lock.
      Reported-by: default avatarBernard F6BVP <f6bvp@free.fr>
      Tested-by: default avatarBernard F6BVP <f6bvp@free.fr>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: Ralf Baechle<ralf@linux-mips.org>
      Cc: stable@kernel.org
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6e4e2f81
  2. 01 Jul, 2011 1 commit
  3. 30 Jun, 2011 13 commits
  4. 29 Jun, 2011 20 commits
  5. 28 Jun, 2011 3 commits