04 Oct, 2005

2 commits

  • The following patch renames __in_dev_get() to __in_dev_get_rtnl() and
    introduces __in_dev_get_rcu() to cover the second case.

    1) RCU with refcnt should use in_dev_get().
    2) RCU without refcnt should use __in_dev_get_rcu().
    3) All others must hold RTNL and use __in_dev_get_rtnl().

    There is one exception in net/ipv4/route.c which is in fact a pre-existing
    race condition. I've marked it as such so that we remember to fix it.

    This patch is based on suggestions and prior work by Suzanne Wood and
    Paul McKenney.

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

    Herbert Xu
     
  • Meelis Roos wrote:
    > RK> My firewall setup relies on proxyarp working. However, with 2.6.14-rc3,
    > RK> it appears to be completely broken. The firewall is 212.18.232.186,
    >
    > Same here with some kernel between 14-rc2 and 14-rc3 - no reposnse to
    > ARP on a proxyarp gateway. Sorry, no exact revison and no more debugging
    > yet since it'a a production gateway.

    The breakage is caused by the change to use the CB area for flagging
    whether a packet has been queued due to proxy_delay. This area gets
    cleared every time arp_rcv gets called. Unfortunately packets delayed
    due to proxy_delay also go through arp_rcv when they are reprocessed.

    In fact, I can't think of a reason why delayed proxy packets should go
    through netfilter again at all. So the easiest solution is to bypass
    that and go straight to arp_process.

    This is essentially what would've happened before netfilter support
    was added to ARP.

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

    Herbert Xu
     

30 Aug, 2005

2 commits


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds