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>