Skip to content
Snippets Groups Projects
  1. Oct 23, 2013
  2. Oct 22, 2013
    • Tomasz Grabiec's avatar
      Fix make mode=debug build · b440bfe6
      Tomasz Grabiec authored
      
      When building with -O0 we get:
      
       bsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.o: In
       function `zfs_ioc_destroy_snaps_nvl':
       (...)/bsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c:3265:
       undefined reference to `zvol_remove_minor'
      
      Looks like the problem is that the missing symbol,
      `zvol_remove_minor', referenced from zfs_ioctl.o is not in the zvol.o
      because it's not defined, because it is inside '#ifdef NOTYET' block
      (which is off). It works in the normal build because when compiled
      with -O2 (and even with -O1), the reference to zvol_remove_minor in
      zfs_ioctl.c is optimized away.
      
      This patch puts the block using zvol_remove_minor also inside '#ifdef
      NOTYET' to be consistent.
      
      Signed-off-by: default avatarTomasz Grabiec <tgrabiec@cloudius-systems.com>
      b440bfe6
  3. 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
  4. Oct 16, 2013
  5. Oct 15, 2013
    • Tomasz Grabiec's avatar
      Fix build with GNU Make < 3.82 · 0601452f
      Tomasz Grabiec authored
      
      The 'define' form with '=' was introduced in GNU Make 3.82
      and has the same meaning as without.
      
      The default 'make' in Ubuntu 13.04 is stil on 3.81. Let's
      drop '=' for better compatibility.
      
      Symptoms:
       make[1]: Entering directory `~/src/osv/build/release'
            CC bsd/cddl/contrib/opensolaris/cmd/zpool/zpool_iter.o
          ../../bsd/cddl/contrib/opensolaris/cmd/zpool/zpool_iter.c:28:21:\
       fatal error: solaris.h: No such file or     directory
           #include <solaris.h>
                               ^
          compilation terminated.
      
      Signed-off-by: default avatarTomasz Grabiec <tgrabiec@cloudius-systems.com>
      0601452f
  6. Oct 14, 2013
  7. Oct 13, 2013
Loading