30 Dec, 2008

1 commit


26 Nov, 2008

1 commit

  • Pass netns to xfrm_lookup()/__xfrm_lookup(). For that pass netns
    to flow_cache_lookup() and resolver callback.

    Take it from socket or netdevice. Stub DECnet to init_net.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     

12 Nov, 2008

1 commit


04 Nov, 2008

1 commit

  • I want to compile out proc_* and sysctl_* handlers totally and
    stub them to NULL depending on config options, however usage of &
    will prevent this, since taking adress of NULL pointer will break
    compilation.

    So, drop & in front of every ->proc_handler and every ->strategy
    handler, it was never needed in fact.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     

31 Oct, 2008

1 commit


29 Oct, 2008

2 commits

  • call_rcu() will unconditionally rewrite RCU head anyway.
    Applies to
    struct neigh_parms
    struct neigh_table
    struct net
    struct cipso_v4_doi
    struct in_ifaddr
    struct in_device
    rt->u.dst

    Signed-off-by: Alexey Dobriyan
    Acked-by: Paul E. McKenney
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     
  • ifdef out
    * struct sk_buff::sp (pointer)
    * struct dst_entry::xfrm (pointer)
    * struct sock::sk_policy (2 pointers)

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     

28 Oct, 2008

1 commit

  • This is a patch to provide on demand route cache rebuilding. Currently, our
    route cache is rebulid periodically regardless of need. This introduced
    unneeded periodic latency. This patch offers a better approach. Using code
    provided by Eric Dumazet, we compute the standard deviation of the average hash
    bucket chain length while running rt_check_expire. Should any given chain
    length grow to larger that average plus 4 standard deviations, we trigger an
    emergency hash table rebuild for that net namespace. This allows for the common
    case in which chains are well behaved and do not grow unevenly to not incur any
    latency at all, while those systems (which may be being maliciously attacked),
    only rebuild when the attack is detected. This patch take 2 other factors into
    account:
    1) chains with multiple entries that differ by attributes that do not affect the
    hash value are only counted once, so as not to unduly bias system to rebuilding
    if features like QOS are heavily used
    2) if rebuilding crosses a certain threshold (which is adjustable via the added
    sysctl in this patch), route caching is disabled entirely for that net
    namespace, since constant rebuilding is less efficient that no caching at all

    Tested successfully by me.

    Signed-off-by: Neil Horman
    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Neil Horman
     

17 Oct, 2008

3 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely)
    ipv4: Add a missing rcu_assign_pointer() in routing cache.
    [netdrvr] ibmtr: PCMCIA IBMTR is ok on 64bit
    xen-netfront: Avoid unaligned accesses to IP header
    lmc: copy_*_user under spinlock
    [netdrvr] myri10ge, ixgbe: remove broken select INTEL_IOATDMA

    Linus Torvalds
     
  • rt_intern_hash() is doing an update of a RCU guarded hash chain
    without using rcu_assign_pointer() or equivalent barrier.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • name and nlen parameters passed to ->strategy hook are unused, remove
    them. In general ->strategy hook should know what it's doing, and don't
    do something tricky for which, say, pointer to original userspace array
    may be needed (name).

    Signed-off-by: Alexey Dobriyan
    Acked-by: David S. Miller [ networking bits ]
    Cc: Ralf Baechle
    Cc: David Howells
    Cc: Matt Mackall
    Cc: "Eric W. Biederman"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

01 Oct, 2008

1 commit

  • ip_route_output() contains a check to make sure that no flows with
    non-local source IP addresses are routed. This obviously makes using
    such addresses impossible.

    This patch introduces a flowi flag which makes omitting this check
    possible. The new flag provides a way of handling transparent and
    non-transparent connections differently.

    Signed-off-by: Julian Anastasov
    Signed-off-by: KOVACS Krisztian
    Signed-off-by: David S. Miller

    Julian Anastasov
     

30 Aug, 2008

1 commit


28 Aug, 2008

1 commit


27 Aug, 2008

1 commit

  • vpnc on today's kernel says Cannot open "/proc/sys/net/ipv4/route/flush":
    d--------- 0 root root 0 2008-08-26 11:32 /proc/sys/net/ipv4/route
    d--------- 0 root root 0 2008-08-26 19:16 /proc/sys/net/ipv4/neigh

    Signed-off-by: Hugh Dickins
    Acked-by: Al Viro
    Signed-off-by: David S. Miller

    Hugh Dickins
     

26 Aug, 2008

1 commit


16 Aug, 2008

1 commit

  • Let me first state that disabling the route cache hash rebuild
    should not be done without extensive analysis on the risk profile
    and careful deliberation.

    However, there are times when this can be done safely or for
    testing. For example, when you have mechanisms for ensuring
    that offending parties do not exist in your network.

    This patch lets the user disable the rebuild if the interval is
    set to zero. This also incidentally fixes a divide-by-zero error
    with name-spaces.

    In addition, this patch makes the effect of an interval change
    immediate rather than it taking effect at the next rebuild as
    is currently the case.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

07 Aug, 2008

1 commit


06 Aug, 2008

1 commit


02 Aug, 2008

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (46 commits)
    tcp: MD5: Fix IPv6 signatures
    skbuff: add missing kernel-doc for do_not_encrypt
    net/ipv4/route.c: fix build error
    tcp: MD5: Fix MD5 signatures on certain ACK packets
    ipv6: Fix ip6_xmit to send fragments if ipfragok is true
    ipvs: Move userspace definitions to include/linux/ip_vs.h
    netdev: Fix lockdep warnings in multiqueue configurations.
    netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc
    netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations
    netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged
    irda: replace __FUNCTION__ with __func__
    nsc-ircc: default to dongle type 9 on IBM hardware
    bluetooth: add quirks for a few hci_usb devices
    hysdn: remove the packed attribute from PofTimStamp_tag
    isdn: use the common ascii hex helpers
    tg3: adapt tg3 to use reworked PCI PM code
    atm: fix direct casts of pointers to u32 in the InterPhase driver
    atm: fix const assignment/discard warnings in the ATM networking driver
    net: use the common ascii hex helpers
    random32: seeding improvement
    ...

    Linus Torvalds
     

01 Aug, 2008

2 commits


28 Jul, 2008

1 commit

  • Piss-poor sysctl registration API strikes again, film at 11...

    What we really need is _pathname_ required to be present in already
    registered table, so that kernel could warn about bad order. That's the
    next target for sysctl stuff (and generally saner and more explicit
    order of initialization of ipv[46] internals wouldn't hurt either).

    For the time being, here are full fixups required by ..._rotable()
    stuff; we make per-net sysctl sets descendents of "ro" one and make sure
    that sufficient skeleton is there before we start registering per-net
    sysctls.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     

27 Jul, 2008

1 commit

  • Running recent kernels, and using a particular vpn gateway, I've been
    having to edit my mails down to get them accepted by the smtp server.

    Git bisect led to commit e84f84f276473dcc673f360e8ff3203148bdf0e2 -
    netns: place rt_genid into struct net. The conversion from a != test
    to rt_is_expired() put one negative too many: and now my mail works.

    Signed-off-by: Hugh Dickins
    Acked-by: Denis V. Lunev
    Signed-off-by: David S. Miller

    Hugh Dickins
     

17 Jul, 2008

1 commit


08 Jul, 2008

1 commit


06 Jul, 2008

8 commits


12 Jun, 2008

1 commit


04 Jun, 2008

1 commit


21 May, 2008

1 commit

  • Because the IPsec output function xfrm_output_resume does its
    own dst_output call it should always call __ip_local_output
    instead of ip_local_output as the latter may invoke dst_output
    directly. Otherwise the return values from nf_hook and dst_output
    may clash as they both use the value 1 but for different purposes.

    When that clash occurs this can cause a packet to be used after
    it has been freed which usually leads to a crash. Because the
    offending value is only returned from dst_output with qdiscs
    such as HTB, this bug is normally not visible.

    Thanks to Marco Berizzi for his perseverance in tracking this
    down.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

05 May, 2008

2 commits


29 Apr, 2008

1 commit