Bug 605587 - RFE: Support AMQP-over-virtio
Summary: RFE: Support AMQP-over-virtio
Status: NEW
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp   
(Show other bugs)
Version: Development
Hardware: All Linux
Target Milestone: ---
: ---
Assignee: Chuck Rolke
QA Contact: MRG Quality Engineering
Keywords: FutureFeature
Depends On:
TreeView+ depends on / blocked
Reported: 2010-06-18 10:35 UTC by Andrew Beekhof
Modified: 2013-09-20 12:48 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description Andrew Beekhof 2010-06-18 10:35:09 UTC
Description of problem:

The Matahari project has a need/desire to use QMF in situations without a host-guest network connectivity.
This would require an AMQP transport be written for virtio (similar to the one written for serial links).

Additional info:

The guest side sees a socket, whereas the host side sees a file descriptor.
Eventual list of desired target platforms is:

  Red Hat Enterprise Linux:
     Version 6.x (x86/x86_64)
     Version 5.x (x86/x86_64)

     Version 14 (x86/x86_64)

     2003 (32/64)
     2008 (32/64)
     2008R2 (32/64)
  XP (32)
  Vista (32/64)
  Windows 7 (32/64)

Comment 1 Daniel Berrange 2010-06-18 11:34:21 UTC
FYI, virtio-serial is only available to KVM guests running on RHEL6 currently, and soon for Fedora 14. Currently there are guest drivers for RHEL6 guests. Further guests support, including windows, is being worked on

To configure a virtio-serial port in a KVM guest running on a RHEL6 host, use 'virsh edit $GUESTNAME' to change the XML <devices> config and add an element like

    <channel type='pty'>
      <target type='virtio' name='org.linux-kvm.port.wizz'/>

This says that on the host side allocate a psuedo-PTY for the virtio serial port. The actual path of the PTY will be shown in the XML when the guest is running. There are many more options for configuring the host side:


On the guest side, a character device will appear in the filesystem at


You can add many <channel> elements, each with a unique name and they will appear as you would epect

VirtIO serial ports are not really like physical serial ports - this was a bad choice of naming. The provide a reliable datastream, with no need for flow control, data rate negotiation, etc that a physical serial port would need. They should be thought of as more like UNIX domain sockets in their behaviour.

If the guest is migrated, the socket will be closed and a guest should see poll() return SIGHUP on the /dev/virtio-serial/ device. This is a sign that they should re-open the device to connect to the new host running the guest.

There is further information here:


Note You need to log in before you can comment on or make changes to this bug.