receive path with fragmented skbs

From: Kallol Biswas (kallol.biswas_at_s2io.com)
Date: 01/31/04

  • Next message: Tim Hockin: "Re: 2.6.2-rc2-mm2"
    To: linux-kernel@vger.kernel.org
    Date:	30 Jan 2004 15:12:24 -0800
    
    

    Hello,
          We have been developing drivers and networking software on
    a 10 gigabit ethernet adapter from S2io Inc (www.s2io.com). There is a
    requirement that the ethernet header, IP+TCP headers have to be cache
    aligned and the payload and the IP+TCP headers have to be in different
    fragments. So we have created receive path skbs with data size big
    enough to hold the ethernet header and two fragments, one fragment for
    the IP+TCP header and the other for payload. The card can directly dma
    into the three receive scatter buffers when a frame arrives.

    We could not get ping working with this design of receive skbs,
    but if a skb is linearized with skb_linearize() before calling
    netif_rx(), ping works.

    /proc/net/snmp was printed, no frame had any error. Probably no one has
    ever tested the receive path of the stack with fragmented skbs, am I
    right? One of the ways this problem can be debugged is to find out where
    exactly the packets get dropped. Any comment?

    Kallol

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/


  • Next message: Tim Hockin: "Re: 2.6.2-rc2-mm2"

    Relevant Pages

    • Fwd: receive path with fragmented skbs
      ... > requirement that the ethernet header, IP+TCP headers have to be cache ... So we have created receive path skbs with data size big ... > enough to hold the ethernet header and two fragments, ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • RE: Ping works but 2c_CheckConnections fail on wireless lan setup.
      ... Looks like the first buffer is the 14-byte 802.3 Ethernet header, ... frame type being 0x0700. ...
      (microsoft.public.development.device.drivers)
    • Re: Manually controlling ARP requests
      ... The MAC address is in the ethernet header. ... When a router forwards the packet, ...
      (comp.os.linux.development.system)
    • SOCK_RAW and fragmentation
      ... everything except the ethernet header, i.e., the application must ... generate the IP header, the UDP or TCP/IP header, and of course the ... Prev by Date: ...
      (microsoft.public.win32.programmer.networks)
    • Re: using text from a cell in the header
      ... fragments your answers, and potentially wastes the time of those ... replying to questions that have already been answered. ... header. ...
      (microsoft.public.excel.misc)