Bug 1460636 - Get wrong properties from guest's /sys/kernel/debug/virtio-ports/vport*p* of virtio console
Get wrong properties from guest's /sys/kernel/debug/virtio-ports/vport*p* of ...
Status: NEW
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev (Show other bugs)
7.4
x86_64 Linux
medium Severity medium
: rc
: ---
Assigned To: pagupta
Sitong Liu
:
Depends On:
Blocks: 1473046
  Show dependency treegraph
 
Reported: 2017-06-12 05:46 EDT by Sitong Liu
Modified: 2018-01-08 21:40 EST (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
debug log (96.60 KB, text/plain)
2017-06-12 05:46 EDT, Sitong Liu
no flags Details

  None (edit)
Description Sitong Liu 2017-06-12 05:46:56 EDT
Created attachment 1287005 [details]
debug log

Description of problem:
There is a occasional problem that influences the result of virtio console tests in automation. Based on the log file (pls. see attached), the code get wrong properties "is_console" and "console_vtermno" from guest. This scenario could also be got in manually test sometimes. 


Version-Release number of selected component (if applicable):
kernel-3.10.0-668.el7.x86_64 (failed)
kernel-3.10.0-514.el7.x86_64 (failed)
qemu-kvm-rhev-2.9.0-5.el7.x86_64


How reproducible:
8/10 in auto test,
1/4 in manual test.


Steps to Reproduce:
1. run cli, 4 virtio serial ports and 4 virtio consoles.
/usr/libexec/qemu-kvm \
    -S  \
    -name 'avocado-vt-vm1'  \
    -sandbox off  \
    -machine pc  \
    -nodefaults  \
    -vga cirrus  \
    -chardev socket,id=hmp_id_humanmonitor1,path=/var/tmp/avocado_AsaCYO/monitor-humanmonitor1-20170612-162606-imf4AGKe,server,nowait \
    -mon chardev=hmp_id_humanmonitor1,mode=readline  \
    -chardev socket,id=hmp_id_catch_monitor,path=/var/tmp/avocado_AsaCYO/monitor-catch_monitor-20170612-162606-imf4AGKe,server,nowait \
    -mon chardev=hmp_id_catch_monitor,mode=readline \
    -device pvpanic,ioport=0x505,id=idWW9XrQ  \
    -chardev socket,id=serial_id_serial0,path=/var/tmp/avocado_AsaCYO/serial-serial0-20170612-162606-imf4AGKe,server,nowait \
    -device isa-serial,chardev=serial_id_serial0 \
    -device virtio-serial-pci,id=virtio_serial_pci0,bus=pci.0,addr=0x3 \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vc1-20170612-162606-imf4AGKe,nowait,id=id30P66H,server \
    -device virtconsole,id=id7sWe1D,name=vc1,chardev=id30P66H \
    -device virtio-serial-pci,id=virtio_serial_pci1,bus=pci.0,addr=0x4 \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vc2-20170612-162606-imf4AGKe,nowait,id=idvRg7MF,server \
    -device virtconsole,id=idEeSXxi,name=vc2,chardev=idvRg7MF \
    -device virtio-serial-pci,id=virtio_serial_pci2,bus=pci.0,addr=0x5 \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vc3-20170612-162606-imf4AGKe,nowait,id=idCjEffe,server \
    -device virtconsole,id=idix2fOx,name=vc3,chardev=idCjEffe \
    -device virtio-serial-pci,id=virtio_serial_pci3,bus=pci.0,addr=0x6 \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vc4-20170612-162606-imf4AGKe,nowait,id=iduvlkgC,server \
    -device virtconsole,id=idUhHBl1,name=vc4,chardev=iduvlkgC \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vs1-20170612-162606-imf4AGKe,nowait,id=idC4bpL8,server \
    -device virtserialport,id=idMqMAJ7,name=vs1,chardev=idC4bpL8 \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vs2-20170612-162606-imf4AGKe,nowait,id=idXPXL7F,server \
    -device virtserialport,id=idllss0I,name=vs2,chardev=idXPXL7F \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vs3-20170612-162606-imf4AGKe,nowait,id=idkdbZlC,server \
    -device virtserialport,id=idv032RM,name=vs3,chardev=idkdbZlC \
    -chardev socket,path=/var/tmp/avocado_AsaCYO/virtio_port-vs4-20170612-162606-imf4AGKe,nowait,id=idD5JGGZ,server \
    -device virtserialport,id=idY1OSon,name=vs4,chardev=idD5JGGZ  \
    -chardev socket,id=seabioslog_id_20170612-162606-imf4AGKe,path=/var/tmp/avocado_AsaCYO/seabios-20170612-162606-imf4AGKe,server,nowait \
    -device isa-debugcon,chardev=seabioslog_id_20170612-162606-imf4AGKe,iobase=0x402 \
    -device ich9-usb-ehci1,id=usb1,addr=0x1d.7,multifunction=on,bus=pci.0 \
    -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=0x1d.0,firstport=0,bus=pci.0 \
    -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=0x1d.2,firstport=2,bus=pci.0 \
    -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=0x1d.4,firstport=4,bus=pci.0 \
    -drive id=drive_image1,if=none,snapshot=off,aio=native,cache=none,format=qcow2,file=/home/kvm_autotest_root/images/rhel73-64-virtio.qcow2 \
    -device virtio-blk-pci,id=image1,drive=drive_image1,bootindex=0,bus=pci.0,addr=0x7 \
    -device virtio-net-pci,mac=9a:36:37:38:39:3a,id=idD2lvzA,vectors=4,netdev=idx7FZGx,bus=pci.0,addr=0x8  \
    -netdev tap,id=idx7FZGx,vhost=on \
    -m 2048  \
    -smp 4,maxcpus=4,cores=2,threads=1,sockets=2  \
    -cpu 'SandyBridge',+kvm_pv_unhalt \
    -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1  \
    -vnc :0  \
    -rtc base=utc,clock=host,driftfix=slew  \
    -boot order=cdn,once=c,menu=off,strict=off \
    -enable-kvm

or

python ConfigTest.py --testcase=virtio_console.spread_linear.specifiable.virtconsole.virtio_console_smoke.rw_blocking_mode --guestname=RHEL.7.4 --platform=x86_64 --driveformat=virtio_blk 

2. check debugfs in guest (manually)
vim /sys/kernel/debug/virtio-ports/vport*p*

3. 

Actual results:
At least one of virtio console's "is_console" is "no",
and "console_vtermno" is a big number.

Expected results:
"is_console" of virtio console should be "yes"
"console_vtermno" should be in [1,4]

Additional info:

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