Re: Using VMChannel to communicate with the host.

Cam Macdonell
2007-09-11T22:57:54Z

Dor Laor wrote:
>>> You need to open the unix socket you passed to the vmchannel
>>> parameter.
>>> An easier alternative is to use -vmchannel di:2258,tcp://
>>> 0:4444,server.
>>> Before the guest loads you'll need to telnet the 4444 port and then
>>> you should receive the
>>> hello world output once the driver is up.
>>> -Dor
>> I tried having a program listening on the unix domain socket.
>> Actually, the VM won't even start until a program connects to the
>> socket. I didn't get the message with my listening program, but I'll
>> try the telnet method as I haven't programmed a socket in a while so
>> I may have missed a step.
>
> Go for it, its 1 minute effort.

Hi Dor,

It didn't work. I used the following option: -vmchannel
di:2258,tcp:0:4444,server (the // confused kvm) and when the VM booted,
I connected with "telnet localhost 4444" which allowed the boot to
proceed. But, I didn't get the hello host message when I loaded the
hypercall module. dmesg did show that the module loaded successfully.
I'll dig around with it and see what else I can figure out

>
>> While getting this working is novel to me, it seems from your email
>> that not much can be done with the hypercall interface in terms of
>> host-VM or VM-to-VM communication, correct? If reading and writing
>> don't work, how can one exchange info between VMs? I'll look forward
>> to the virtIO implementation.
>>
>
> The vmchannel was not intended to VM-to-VM networking, although it can
> work.
> Next version will be better. Anyway, it should have similar performance
> to pv network driver.

Cool.

Thanks,
Cam