ron minnich wrote:
> Let me ask what may seem to be a naive question to the linux world. I
> see you are doing a lot off solid work on adding block and network
> devices. The code for block and network devices
> is implemented in different ways. I've also seen this difference of
> inerface/implementation on Xen.
Actually, the difference derives from the fact that block and network 
are indeed different:
- block submits requests that ask the host to transfer from/to 
preallocated guest data buffers via dma (request driven)
- net transmits packets that should end up in an skb on the remote 
side (two way, push driven)
- net is sensitive to round-trip times, block is not due to the device 
plug for request merging

We tried different access methods for both block and network. We have 
selected the current communication mechanics after doing performance 
measurements.
I believe for a portable solution we need to develop a set of 
primitives for sending signals (read: interrupts) back and forth, for 
copying data to guest memory, and for establishing shared memory 
between guests and between guest+host. These primitives need to be 
implemented for each platform, and paravirtual drivers should build on 
top of that.
At this point in time, we are aware that these device drivers don't do 
what we'd want for a portable solution. We'll focus on getting the 
kernel interfaces to sie/vt/svm proper and portable first.

so long,
Carsten

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to