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 14, 2013
  6. Oct 13, 2013
  7. Oct 10, 2013
  8. Oct 03, 2013
  9. Sep 26, 2013
  10. Sep 16, 2013
  11. Sep 15, 2013
    • Glauber Costa's avatar
      trivial: small fixes to blkfront · 21285383
      Glauber Costa authored
      * %lu => %u when reading flush. The barrier flag had the same bug, but I
      ended up recreating it for flush.
      * Move check of xb_flags to after we check sc->flags != NULL, as spotted by
      Dima
      21285383
  12. Sep 14, 2013
    • Glauber Costa's avatar
      xenfront: guest-side implementation of flush · 6842d8ce
      Glauber Costa authored
      Not all Xen versions implement the barrier feature in their pv disks. Such is
      the case in Amazon EC2. For those, we should interpret the flush request and
      wait for the requests until they are all handled. Also, we can still try to use
      one of either barriers or flush-disk operations before we resort to guest-side
      software implementation. Our driver currently only tests for one of them, so
      this patch also implements flush requests.
      
      Luckily, the implementation of xb_dump (which we don't currently use) needs to
      do that as well, and this is also quite well isolated in xb_quiesce(). All we need
      to do is call xb_quiesce() if flushing is not available in our backend
      6842d8ce
  13. Sep 12, 2013
    • Dmitry Fleytman's avatar
      Support for Xen w/o vector callbacks · 1d3e336c
      Dmitry Fleytman authored
      This patch implements GSI interrupt support for Xen bus.
      Needed in Xen environments w/o vector callbacks for HVM.
      One example of such an environment is Amazon EC2.
      1d3e336c
  14. Sep 05, 2013
    • Glauber Costa's avatar
      blkfront: mark device ready earlier · 7b0354b9
      Glauber Costa authored
      We cannot read the partition table from the device if the device is not marked
      as ready, since all IO will stall. I believe it should be fine to just mark the
      device ready before we mark our state as connected. With that change, it all
      proceed normally.
      7b0354b9
Loading