Welcome to the Linux Foundation Forum!

CentOS-6.2 KVM connecting to serial ports

We wish to implement a fax server as a virtual guest. Do accomplsih this we are trying to configure serial ports on a virtual guest running CentOS-6.2. The host system is also running CentOS-6.2. The multi-port serial pci card is identified as:

# setserial -g /dev/ttyS*
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16950/954, Port: 0xd040, IRQ: 17
/dev/ttyS2, UART: 16950/954, Port: 0xd048, IRQ: 17
/dev/ttyS3, UART: 16950/954, Port: 0xd050, IRQ: 17

# virsh nodedev-dumpxml pci_0000_00_03_0
<device>
<name>pci_0000_00_03_0</name>
<parent>computer</parent>
<capability type='pci'>
<domain>0</domain>
<bus>0</bus>
<slot>3</slot>
<function>0</function>
<product id='0x2e24'>4 Series Chipset HECI Controller</product>
<vendor id='0x8086'>Intel Corporation</vendor>
<capability type='virt_functions'>
</capability>
</capability>
</device>


How does one configure a CentOS-6.2 guest to use the four ports provided by this card? We cannot seem to locate a clear description of the procedure.

I tried initially to assign one of the host character devs (/dev/ttyS1) to an additional serial port defined through virt-manager (Serial 2). However, this results in the following error when we try to start the guest:

Error starting domain: internal error process exited while connecting to monitor: char device redirected to /dev/pts/5

isa irq 4 already assigned.

Contents of the relevant qemu log file.

2012-02-06 14:19:33.430: starting up
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.2.0 -enable-kvm -m 4096 -smp 1,sockets=1,cores=1,threads=1 -name inet08.harte-lyne.ca -uuid 6409d721-cfcf-2169-f65e-8f583b685f58 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/inet08.harte-lyne.ca.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -drive file=/dev/vg_vhost01/lv_vm_inet08.harte-lyne.ca_00,if=none,id=drive-virtio-disk0,format=raw,cache=none,aio=native -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=22,id=hostnet0,vhost=on,vhostfd=24 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:bf:e9:ac,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -chardev tty,id=charserial1,path=/dev/ttyS1 -device isa-serial,chardev=charserial1,id=serial1 -chardev tty,id=charserial2,path=/dev/ttyS2 -device isa-serial,chardev=charserial2,id=serial2 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:4 -vga cirrus -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6
char device redirected to /dev/pts/5
isa irq 4 already assigned


How does one access additional serial devices from a virtual guest?

Comments

  • Posts: 501
    I don't know about KVM, but VirtualBox has the capability for a virtual machine to access serial ports as well as USB devices. Myself, I am still using VirtualBox, and have been without problems for over 4 years. I run Windows virtual machines on Linux, and Linux virtual machines on Windows...

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training