Did a lot of work this weekend and added more to the volume and datapath.
in native mode, everything is rbd native including CBT! still working on SXM
in tapdisk mode, everything is working with optimized rbd calls except SXM
in qemu mode everything works by using qemu-dp and also SXM in MSAPIv3
Huge improvements made, but qemu is the slowest mode due to extra nbt hop.
I only provided tapdisk and qemu modes to get more information on how CBT works and how SXM works. Right now I'm using that knowledge to provide SXM over native rbt. I have some good ideas but need to figure out how to make them work.
I've also made a backport to ceph v15.2 which runs on dom0 to also include the newer cephx authentication protocol. This is because the ceph dashboard cannot provide a diff between snaps (which is needed for CBT) but a pull request is pending to have this working in the future without the need for rbd userspace.
I'll update my git and packages later this week.