Difference between revisions of "Blktap3"

From Xen
(Created page with "(page under construction) blktap3 is an improved version of blktap2. The main difference between blktap2 and blktap3 is that the tapdisk process running in dom0 is directly conn…")
 
m
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
  +
== Overview ==
(page under construction)
 
  +
blktap3 is an improved version of blktap2. The main difference between blktap2 and blktap3 is that the tapdisk process running in dom0 is directly connected to blkfront, which means that blkback is no longer on the datapath longer in this configuration. The primary goal of blktap3 is to remove the burden of maintaining the blkback/blktap kernel modules in dom0.
   
  +
Apart from simplified maintenance, blktap3 should (in theory) be faster than blktap2 since the datapath is shorter. However, some preliminary evaluation indicates that blktap3 is marginally slower than blktap2; evidence suggests that this is because of some inefficiencies that are rather easily addressable.
blktap3 is an improved version of blktap2. The main difference between blktap2 and blktap3 is that the tapdisk process running in dom0 is directly connected to blkfront, rendering blkback useless. The advantage of this approach is improved performance since requests do not have to pass through the dom0 kernel.
 
   
  +
== Using blktap3==
blktap3 in under heavy development; it will soon be sent as a patch in xen-devel. blktap3 seems to work on PV VMs without pygrub.
 
  +
blktap3 is not yet in upstream Xen (patches are sent from time to time).
   
  +
To use blktap3 (you don't have to reinstall Xen or reboot, and blktap3 nicely coexists with blktap2):
Need to implement support for HVM VMs, PV pugrub VMs.
 
  +
# Apply all blktap3 patches (they live in https://bitbucket.org/tmakatos/blktap3-patches)
  +
# <code>cd</code> into <code>tools/blktap3</code> and run <code>make install</code>
  +
# <code>cd</code> into <code>tools/libxl</code> and run <code>make install</code>
  +
# Run the <code>tapback</code> daemon (run <code>tapback -D</code> for easier debugging)
  +
# Modify your guest domain configuration to use the <code>tap3</code> device instead of the <code>tap</code> one
  +
  +
[[Category:Xen]]
  +
[[Category:Developers]]

Latest revision as of 14:43, 15 July 2013

Overview

blktap3 is an improved version of blktap2. The main difference between blktap2 and blktap3 is that the tapdisk process running in dom0 is directly connected to blkfront, which means that blkback is no longer on the datapath longer in this configuration. The primary goal of blktap3 is to remove the burden of maintaining the blkback/blktap kernel modules in dom0.

Apart from simplified maintenance, blktap3 should (in theory) be faster than blktap2 since the datapath is shorter. However, some preliminary evaluation indicates that blktap3 is marginally slower than blktap2; evidence suggests that this is because of some inefficiencies that are rather easily addressable.

Using blktap3

blktap3 is not yet in upstream Xen (patches are sent from time to time).

To use blktap3 (you don't have to reinstall Xen or reboot, and blktap3 nicely coexists with blktap2):

  1. Apply all blktap3 patches (they live in https://bitbucket.org/tmakatos/blktap3-patches)
  2. cd into tools/blktap3 and run make install
  3. cd into tools/libxl and run make install
  4. Run the tapback daemon (run tapback -D for easier debugging)
  5. Modify your guest domain configuration to use the tap3 device instead of the tap one