1. 29 Mar, 2006 11 commits
    • Herbert Xu's avatar
      [INET]: Introduce tunnel4/tunnel6 · d2acc347
      Herbert Xu authored
      Basically this patch moves the generic tunnel protocol stuff out of
      xfrm4_tunnel/xfrm6_tunnel and moves it into the new files of tunnel4.c
      and tunnel6 respectively.
      
      The reason for this is that the problem that Hugo uncovered is only
      the tip of the iceberg.  The real problem is that when we removed the
      dependency of ipip on xfrm4_tunnel we didn't really consider the module
      case at all.
      
      For instance, as it is it's possible to build both ipip and xfrm4_tunnel
      as modules and if the latter is loaded then ipip simply won't load.
      
      After considering the alternatives I've decided that the best way out of
      this is to restore the dependency of ipip on the non-xfrm-specific part
      of xfrm4_tunnel.  This is acceptable IMHO because the intention of the
      removal was really to be able to use ipip without the xfrm subsystem.
      This is still preserved by this patch.
      
      So now both ipip/xfrm4_tunnel depend on the new tunnel4.c which handles
      the arbitration between the two.  The order of processing is determined
      by a simple integer which ensures that ipip gets processed before
      xfrm4_tunnel.
      
      The situation for ICMP handling is a little bit more complicated since
      we may not have enough information to determine who it's for.  It's not
      a big deal at the moment since the xfrm ICMP handlers are basically
      no-ops.  In future we can deal with this when we look at ICMP caching
      in general.
      
      The user-visible change to this is the removal of the TUNNEL Kconfig
      prompts.  This makes sense because it can only be used through IPCOMP
      as it stands.
      
      The addition of the new modules shouldn't introduce any problems since
      module dependency will cause them to be loaded.
      
      Oh and I also turned some unnecessary pskb's in IPv6 related to this
      patch to skb's.
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d2acc347
    • Denis Vlasenko's avatar
      [NET]: deinline 200+ byte inlines in sock.h · f0088a50
      Denis Vlasenko authored
      Sizes in bytes (allyesconfig, i386) and files where those inlines
      are used:
      
      238 sock_queue_rcv_skb 2.6.16/net/x25/x25_in.o
      238 sock_queue_rcv_skb 2.6.16/net/rose/rose_in.o
      238 sock_queue_rcv_skb 2.6.16/net/packet/af_packet.o
      238 sock_queue_rcv_skb 2.6.16/net/netrom/nr_in.o
      238 sock_queue_rcv_skb 2.6.16/net/llc/llc_sap.o
      238 sock_queue_rcv_skb 2.6.16/net/llc/llc_conn.o
      238 sock_queue_rcv_skb 2.6.16/net/irda/af_irda.o
      238 sock_queue_rcv_skb 2.6.16/net/ipx/af_ipx.o
      238 sock_queue_rcv_skb 2.6.16/net/ipv6/udp.o
      238 sock_queue_rcv_skb 2.6.16/net/ipv6/raw.o
      238 sock_queue_rcv_skb 2.6.16/net/ipv4/udp.o
      238 sock_queue_rcv_skb 2.6.16/net/ipv4/raw.o
      238 sock_queue_rcv_skb 2.6.16/net/ipv4/ipmr.o
      238 sock_queue_rcv_skb 2.6.16/net/econet/econet.o
      238 sock_queue_rcv_skb 2.6.16/net/econet/af_econet.o
      238 sock_queue_rcv_skb 2.6.16/net/bluetooth/sco.o
      238 sock_queue_rcv_skb 2.6.16/net/bluetooth/l2cap.o
      238 sock_queue_rcv_skb 2.6.16/net/bluetooth/hci_sock.o
      238 sock_queue_rcv_skb 2.6.16/net/ax25/ax25_in.o
      238 sock_queue_rcv_skb 2.6.16/net/ax25/af_ax25.o
      238 sock_queue_rcv_skb 2.6.16/net/appletalk/ddp.o
      238 sock_queue_rcv_skb 2.6.16/drivers/net/pppoe.o
      
      276 sk_receive_skb 2.6.16/net/decnet/dn_nsp_in.o
      276 sk_receive_skb 2.6.16/net/dccp/ipv6.o
      276 sk_receive_skb 2.6.16/net/dccp/ipv4.o
      276 sk_receive_skb 2.6.16/net/dccp/dccp_ipv6.o
      276 sk_receive_skb 2.6.16/drivers/net/pppoe.o
      
      209 sk_dst_check 2.6.16/net/ipv6/ip6_output.o
      209 sk_dst_check 2.6.16/net/ipv4/udp.o
      209 sk_dst_check 2.6.16/net/decnet/dn_nsp_out.o
      
      Large inlines with multiple callers:
      Size  Uses Wasted Name and definition
      ===== ==== ====== ================================================
        238   21   4360 sock_queue_rcv_skb    include/net/sock.h
        109   10    801 sock_recv_timestamp   include/net/sock.h
        276    4    768 sk_receive_skb        include/net/sock.h
         94    8    518 __sk_dst_check        include/net/sock.h
        209    3    378 sk_dst_check  include/net/sock.h
        131    4    333 sk_setup_caps include/net/sock.h
        152    2    132 sk_stream_alloc_pskb  include/net/sock.h
        125    2    105 sk_stream_writequeue_purge    include/net/sock.h
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f0088a50
    • David S. Miller's avatar
      [ECONET]: Convert away from SOCKOPS_WRAPPED · 1d181831
      David S. Miller authored
      Just use a local econet_mutex instead.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1d181831
    • Petr Vandrovec's avatar
      [NET]: Fix ipx/econet/appletalk/irda ioctl crashes · f6c90b71
      Petr Vandrovec authored
      Fix kernel oopses whenever somebody issues compatible ioctl on AppleTalk,
      Econet, IPX or IRDA socket.  For AppleTalk/Econet/IRDA it restores state
      in which these sockets were before compat_ioctl was introduced to the socket
      ops, for IPX it implements support for 4 ioctls which were not implemented
      before - as these ioctls use structures which match between 32bit and 64bit
      userspace, no special code is needed, just call 64bit ioctl handler.
      Signed-off-by: default avatarPetr Vandrovec <petr@vandrovec.name>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f6c90b71
    • David S. Miller's avatar
      [NET]: Kill Documentation/networking/TODO · f1465f7e
      David S. Miller authored
      Sorely out of date.  Add the linux-net wiki web site to
      the NETWORKING maintainers entry, on which we maintain
      the current networking TODO list.
      
      Noticed by Randy Dunlap.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f1465f7e
    • Michael Chan's avatar
      [TG3]: Update version and reldate · e3a05978
      Michael Chan authored
      Update version to 3.55.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e3a05978
    • Michael Chan's avatar
      [TG3]: Skip timer code during full lock · f475f163
      Michael Chan authored
      Skip the main timer code if interrupts are disabled in the full lock
      state.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f475f163
    • Michael Chan's avatar
      [TG3]: Speed up SRAM access · 100c4673
      Michael Chan authored
      Speed up SRAM read and write functions if possible by using MMIO
      instead of config. cycles. With this change, the post reset signature
      done at the end of D3 power change must now be moved before the D3
      power change.
      
      IBM reported a problem on powerpc blades during ethtool self test
      that was caused by the memory test taking excessively long. Config.
      cycles are very slow on powerpc and the memory test can take more
      than 10 seconds to complete using config. cycles. As a result, NETDEV
      WATCHDOG can be triggered during self test and the chip can end up in
      a funny state.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      100c4673
    • Michael Chan's avatar
      [TG3]: Fix PHY loopback on 5700 · ff18ff02
      Michael Chan authored
      Fix PHY loopback failure on some 5700 devices.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ff18ff02
    • Michael Chan's avatar
      [TG3]: Fix bug in 40-bit DMA workaround code · 6728a8e2
      Michael Chan authored
      Need to check the TG3_FLAG_40BIT_DMA_BUG flag in the workaround code
      path instead of device flags.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6728a8e2
    • Michael Chan's avatar
      [TG3]: Fix probe failure due to invalid MAC address · 008652b3
      Michael Chan authored
      Some older bootcode in some devices may report 0 MAC address in
      SRAM when booting up from low power state. This patch fixes the
      problem by checking for a valid MAC address in SRAM and falling back
      to NVRAM if necessary.
      
      Thanks to walt <wa1ter@myrealbox.com> for reporting the problem
      and helping to debug it.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      008652b3
  2. 28 Mar, 2006 29 commits