Skip to content
Snippets Groups Projects
  1. Oct 23, 2013
  2. Oct 22, 2013
  3. Oct 21, 2013
  4. Oct 20, 2013
    • Dmitry Fleytman's avatar
      net: maximum IP datagram size decreased by ETH header length · a69d39a6
      Dmitry Fleytman authored
      
      FreeBSD networking code limits IP datagram size by IP_MAXPACKET
      which is exactly 64K. This calculation doesn't take into account
      Ethernet header length and may generate Ethernet packet longer than 64K.
      
      Such a packet cannot be processed properly by some devices (Xen netback)
      and being dropped.
      
      This patch fixes this corner case for all supported IP protocols.
      
      Signed-off-by: default avatarDmitry Fleytman <dmitry@daynix.com>
      a69d39a6
    • Dmitry Fleytman's avatar
      net: Use Jubmo packets zone for m_defrag() allocations · f6a8880b
      Dmitry Fleytman authored
      
      This patch fixes part of TCP instability/low throughput problems on Xen.
      
      On transmit networking stack passes to Xen netfront driver a list of mbufs
      of up to PAGE_SIZE (4096) bytes each.
      In case the list consists of more than MAX_TX_REQ_FRAGS (18) fragments
      driver tries to defragment it with m_defrag().
      
      m_defrag() in turn tries to build list of buffers of up to MCLBYTES
      (2048) bytes each. This leads to even longer chain and packet being dropped.
      As a result around 1% of TCP segments are lost and intensive TCP
      retransmissions and slowdowns occur.
      
      This patch makes m_defrag() use Jumbo packets zone for allocation, i.e.
      PAGE_SIZE per mbuf.
      
      This patch is pretty similar to what Glauber done on RX path before.
      
      Signed-off-by: default avatarDmitry Fleytman <dmitry@daynix.com>
      f6a8880b
  5. Oct 18, 2013
  6. Oct 17, 2013
  7. Oct 16, 2013
Loading