Blktap3
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):
- Apply all blktap3 patches (they live in https://bitbucket.org/tmakatos/blktap3-patches)
cd
intotools/blktap3
and runmake install
cd
intotools/libxl
and runmake install
- Run the
tapback
daemon (runtapback -D
for easier debugging) - Modify your guest domain configuration to use the
tap3
device instead of thetap
one