1. 08 Sep, 2006 6 commits
    • Stephen Hemminger's avatar
      Allow per-route window scale limiting · 31e8b3a3
      Stephen Hemminger authored
      There are black box devices out there, routers and firewalls and
      whatnot, that simply cannot grok the TCP window scaling option
      correctly.
      
      People should and do bark at the site running the device causing
      the problems, but in the mean time folks do want a way to deal
      with the problem.  We don't want them to turn off window scaling
      completely as that hurts performance of connections that would run
      just fine with window scaling enabled.
      
      So give a way to do this on a per-route basis by limiting the
      window scaling by the per-connection window clamp.  Stephen's
      changelog message explains how to do this using a route metric.
      
      [TCP]: Limit window scaling if window is clamped.
      
      This small change allows for easy per-route workarounds for broken hosts or
      middleboxes that are not compliant with TCP standards for window scaling.
      Rather than having to turn off window scaling globally. This patch allows
      reducing or disabling window scaling if window clamp is present.
      
      Example: Mark Lord reported a problem with 2.6.17 kernel being unable to
      access http://www.everymac.com
      
      # ip route add 216.145.246.23/32 via 10.8.0.1 window 65535
      Signed-off-by: default avatarStephen Hemminger <shemminger@osdl.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      31e8b3a3
    • Stephen Hemminger's avatar
      bridge-netfilter: don't overwrite memory outside of skb · 9d3925d7
      Stephen Hemminger authored
      The bridge netfilter code needs to check for space at the
      front of the skb before overwriting; otherwise if skb from
      device doesn't have headroom, then it will cause random
      memory corruption.
      Signed-off-by: default avatarStephen Hemminger <shemminger@osdl.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      9d3925d7
    • Fernando Vazquez's avatar
      fix compilation error on IA64 · 7cadd43d
      Fernando Vazquez authored
      The commit 8833ebaa introduced a change that broke 
      IA64 compilation as shown below:
      
        gcc -Wp,-MD,arch/ia64/kernel/.entry.o.d  -nostdinc -isystem /usr/lib/gcc/ia64-linux-gnu/4.1.2/include -D__KERNEL__ -Iinclude  -include include/linux/autoconf.h -DHAVE_WORKING_TEXT_ALIGN -DHAVE_MODEL_SMALL_ATTRIBUTE -DHAVE_SERIALIZE_DIRECTIVE -D__ASSEMBLY__   -mconstant-gp -c -o arch/ia64/kernel/entry.o arch/ia64/kernel/entry.S
      include/asm/mman.h: Assembler messages:
      include/asm/mman.h:13: Error: Unknown opcode `int ia64_map_check_rgn(unsigned long addr,unsigned long len,'
      include/asm/mman.h:14: Error: Unknown opcode `unsigned long flags)'
      make[1]: *** [arch/ia64/kernel/entry.o] Error 1
      make: *** [arch/ia64/kernel] Error 2
      
      The reason is that "asm/mman.h" is being included from entry.S indirectly through
      "asm/pgtable.h" (see code snips below).
      
      * arch/ia64/kernel/entry.S:
      ...
      #include <asm/pgtable.h>
      ...
      
      * include/asm-ia64/pgtable.h:
      ...
      #include <asm/mman.h>
      ...
      
      * include/asm-ia64/mman.h
      ...
      #ifdef __KERNEL__
      #define arch_mmap_check ia64_map_check_rgn
      int ia64_map_check_rgn(unsigned long addr, unsigned long len,
                      unsigned long flags);
      #endif
      ...
      Signed-off-by: default avatarFernando Vazquez <fernando@intellilink.co.jp>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      7cadd43d
    • Herbert Xu's avatar
      Fix output framentation of paged-skbs · ea624f5a
      Herbert Xu authored
      [INET]: Use pskb_trim_unique when trimming paged unique skbs
      
      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: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      ea624f5a
    • Richard Purdie's avatar
      spectrum_cs: Fix firmware uploading errors · 35d2f110
      Richard Purdie authored
      This fixes firmware upload failures which prevent the driver from working.
      Signed-off-by: default avatarRichard Purdie <rpurdie@rpsys.net>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      35d2f110
    • Michael Rash's avatar
      TEXTSEARCH: Fix Boyer Moore initialization bug · 940d7bce
      Michael Rash authored
      [TEXTSEARCH]: Fix Boyer Moore initialization bug
      
      The pattern is set after trying to compute the prefix table, which tries
      to use it. Initialize it before calling compute_prefix_tbl, make
      compute_prefix_tbl consistently use only the data from struct ts_bm
      and remove the now unnecessary arguments.
      Signed-off-by: default avatarMichael Rash <mbr@cipherdyne.org>
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Acked-by: default avatarDavid Miller <davem@davemloft.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      940d7bce
  2. 23 Aug, 2006 21 commits
  3. 22 Aug, 2006 4 commits
  4. 18 Aug, 2006 2 commits
  5. 07 Aug, 2006 7 commits