Bug #2360
openWishlist: virtio driver import
0%
Description
Tim Bisson ported the FreeBSD virtio-bhyve drivers to DragonFly (https://github.com/bissont/virtio_bhyve). It'd be nice if we could import them into DragonFly.
Status ===
I have started working on integration in the 'virtual' branch of my DragonFly tree:
https://github.com/vsrinivas/DragonFlyBSD/commits/virtual
Todo:
x 1. Move drivers into appropriate location in source tree + rewrite makefiles
Updated by vsrinivas over 12 years ago
TODO:
virtio and pci ===
- why is virtqueue_poll() spin-waiting on dequeueing something from a queue? Is this okay?
vballoon ===
- vtballoon_alloc_page is not correct; we need to hold the kernel object, not the vm_token, around page allocation
- the entire balloon device would benefit from conversion to the vm_balloon framework; that is the approach I am using in my tree.
vtblock ===
- get the real FreeBSD CVSID we this was imported from
- why is the disk id # in disk_ops '200'?
- are spinlocks truly the most appropriate lock for the virtio-blk device?
vtnet ===
Updated by vsrinivas over 12 years ago
virtio and pci ====
- subr_sglist is a FreeBSD interface we're pulling it; thesjg has pointed out that XIO fills a similar space. We should look at implementing sglist on top of XIO, so as not to have two different ways of managing ranges of physical addresses.
virtio's vq_ring_enqueue_segments appears to be the main routine depending on the structure of an sglist; virtio-blk just primarily appends pages to a queue. Conversion there would be straightforward (to xio)
Updated by tuxillo over 2 years ago
- Description updated (diff)
- Category set to Feature request
None of the links in the description are available anymore.