Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Jun 2011 20:36:29 +0000 (UTC)
From:      "Justin T. Gibbs" <gibbs@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/dev/xen/blkback blkback.c
Message-ID:  <201106132036.p5DKajno019294@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
gibbs       2011-06-13 20:36:29 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/xen/blkback  blkback.c 
  Log:
  SVN rev 223059 on 2011-06-13 20:36:29Z by gibbs
  
  Several enhancements to the Xen block back driver.
  
  sys/dev/xen/blkback/blkback.c:
          o Implement front-end request coalescing.  This greatly improves the
            performance of front-end clients that are unaware of the dynamic
            request-size/number of requests negotiation available in the
            FreeBSD backend driver.  This required a large restructuring
            in how this driver records in-flight transactions and how those
            transactions are mapped into kernel KVA.  For example, the driver
            now includes a mini "KVA manager" that allocates ranges of
            contiguous KVA to patches of requests that are physically
            contiguous in the backing store so that a single bio or UIO
            segment can be used to represent the I/O.
  
          o Refuse to open any backend files or devices if the system
            has yet to mount root.  This avoids a panic.
  
          o Properly handle "onlined" devices.  An "onlined" backend
            device stays attached to its backing store across front-end
            disconnections.  This feature is intended to reduce latency
            when a front-end does a hand-off to another driver (e.g.
            PV aware bootloader to OS kernel) or during a VM reboot.
  
          o Harden the driver against a pathological/buggy front-end
            by carefully vetting front-end XenStore data such as the
            front-end state.
  
          o Add sysctls that report the negotiated number of
            segments per-request and the number of requests that
            can be concurrently in flight.
  
  Submitted by:   kdm
  Reviewed by:    gibbs
  Sponsored by:   Spectra Logic Corporation
  MFC after:      1 week
  
  Revision  Changes     Path
  1.9       +1452 -530  src/sys/dev/xen/blkback/blkback.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106132036.p5DKajno019294>