Bug 1460595 - [virtio-vga]Display 2 should be dropped when guest reboot
[virtio-vga]Display 2 should be dropped when guest reboot
Status: VERIFIED
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev (Show other bugs)
7.4
x86_64 Linux
medium Severity low
: rc
: ---
Assigned To: Gerd Hoffmann
Guo, Zhiyi
:
Depends On: 1505696
Blocks: 1473046
  Show dependency treegraph
 
Reported: 2017-06-12 02:49 EDT by Guo, Zhiyi
Modified: 2018-02-13 09:17 EST (History)
8 users (show)

See Also:
Fixed In Version: qemu-kvm-rhev-2.10.0-3.el7
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)
Screen shot of Display 1 &2 (345.13 KB, image/png)
2017-06-12 02:54 EDT, Guo, Zhiyi
no flags Details
Evidence video (632.26 KB, application/octet-stream)
2018-02-12 01:38 EST, Guo, Zhiyi
no flags Details

  None (edit)
Description Guo, Zhiyi 2017-06-12 02:49:20 EDT
Description of problem:
Display 2 should be dropped when guest reboot

Version-Release number of selected component (if applicable):
qemu-kvm-rhev-2.9.0-9.el7.x86_64 
kernel 3.10.0-679.el7.x86_64(host & guest)

How reproducible:
100%

Steps to Reproduce:
1.Boot rhel7.4 guest with cli:
/usr/libexec/qemu-kvm -name rhel-sp4 -m 4G -machine pc,accel=kvm\
        -S \
        -cpu Skylake-Client,check,enforce \
        -smp 2 \
        -monitor stdio \
        -qmp tcp:0:4444,server,nowait \
        -device virtio-vga,max_outputs=2 \
        -serial unix:/tmp/console,server,nowait \
        -drive file=rhelsp4.qcow2,if=none,id=drive-scsi-disk0,format=qcow2,cache=none,werror=stop,rerror=stop -device virtio-scsi-pci,id=scsi0,addr=04 -device scs
i-hd,drive=drive-scsi-disk0,bus=scsi0.0,scsi-id=0,lun=0,id=scsi-disk0,bootindex=1 \
        -netdev tap,id=idinWyYp,vhost=on -device virtio-net-pci,mac=42:ce:a9:d2:4d:d7,id=idlbq7eA,netdev=idinWyYp \
        -spice port=3003,disable-ticketing,agent-mouse=on \
        -device virtio-serial-pci -chardev spicevmc,id=vdagent,debug=0,name=vdagent \
        -device virtserialport,chardev=vdagent,name=com.redhat.spice.0 \
2.Enable Display 2 from remote viewer: View -> Displays, and enable Secondary display for Display 2 from geust display settings.
3.Reboot guest

Actual results:
Display 2 won't be dropped. After guest reboot finish and login to Desktop, Display 2 show "Waiting for display 2..." and won't get guest desktop graphic automatically. Need to uncheck and check Display 2 again to make it works normally

Expected results:
Display 2 should be dropped when guest reboot. Test against qxl-vga, Display 2 will be dropped and I think it is reasonable to drop display 2 if it cannot get guest desktop graphic automatically

Additional info:
Comment 2 Guo, Zhiyi 2017-06-12 02:54 EDT
Created attachment 1286948 [details]
Screen shot of Display 1 &2

A screenshot show Display 2 won't get guest desktop graphic automatically after guest reboot and login to Desktop
Comment 4 Gerd Hoffmann 2017-09-26 04:04:13 EDT
upstream commit 79d16c21a565927943486b26789caa62413ff371 (will land in 2.11)
Comment 5 Gerd Hoffmann 2017-10-05 04:40:11 EDT
patch posted.
Comment 6 Miroslav Rezanina 2017-10-20 05:32:14 EDT
Fix included in qemu-kvm-rhev-2.10.0-3.el7
Comment 8 Guo, Zhiyi 2017-12-21 11:22:17 EST
Enable 2nd display will cause qemu core dump, the core dump is tracked by Bug 1505696 - Qemu crashed when open the second display of virtio video. Will verify this bug after 1505696 fix
Comment 9 Guo, Zhiyi 2018-02-12 01:36:16 EST
Hi Gerd,
   After testing this bug and reading the patch, I think the solution is keeping all of the Displays opened and output the guest desktop graphic to all of them after guest reboot, right? Although the expect behavior is different from my bug report, but I think this is also a good idea.

   But another thing I found during multi displays test is: When you enable the second display, disable the second display won't make it vanish. Further more, the second display will reconnect automatically with no graphic output, this is a regression caused by this fix?

BR/
Zhiyi, Guo
Comment 10 Guo, Zhiyi 2018-02-12 01:38 EST
Created attachment 1394793 [details]
Evidence video

Video show this buggy behavior
Comment 11 Gerd Hoffmann 2018-02-12 11:01:00 EST
(In reply to Guo, Zhiyi from comment #9)
> Hi Gerd,
>    After testing this bug and reading the patch, I think the solution is
> keeping all of the Displays opened and output the guest desktop graphic to
> all of them after guest reboot, right? Although the expect behavior is
> different from my bug report, but I think this is also a good idea.

Yes, the second display will stay, and during reboot will show the "waiting for display ..." message.  But given that this is only temporary (the guest gui will pick up the screen after) I think this is fine.

>    But another thing I found during multi displays test is: When you enable
> the second display, disable the second display won't make it vanish.

Hmm, yes.  It works when you reboot, then disable the second display while the grub menu is displayed.  So it seems qemu updates the window layout hints correctly, but the guest driver doesn't pick it up.  Could also be a bug on the guest side.  Need to look into this.  Can you open a new bug for this one?

> Further
> more, the second display will reconnect automatically with no graphic
> output, this is a regression caused by this fix?

Probably related to the issue above.
Comment 12 Guo, Zhiyi 2018-02-13 09:04:53 EST
(In reply to Gerd Hoffmann from comment #11)
> (In reply to Guo, Zhiyi from comment #9)
> > Hi Gerd,
> >    After testing this bug and reading the patch, I think the solution is
> > keeping all of the Displays opened and output the guest desktop graphic to
> > all of them after guest reboot, right? Although the expect behavior is
> > different from my bug report, but I think this is also a good idea.
> 
> Yes, the second display will stay, and during reboot will show the "waiting
> for display ..." message.  But given that this is only temporary (the guest
> gui will pick up the screen after) I think this is fine.
> 
> >    But another thing I found during multi displays test is: When you enable
> > the second display, disable the second display won't make it vanish.
> 
> Hmm, yes.  It works when you reboot, then disable the second display while
> the grub menu is displayed.  So it seems qemu updates the window layout
> hints correctly, but the guest driver doesn't pick it up.  Could also be a
> bug on the guest side.  Need to look into this.  Can you open a new bug for
> this one?
> 
> > Further
> > more, the second display will reconnect automatically with no graphic
> > output, this is a regression caused by this fix?
> 
> Probably related to the issue above.

Please see Bug 1544790 - Second display will reconnect without desktop output after enable and disable second display

Now I will close this bug as verified.
Comment 13 Guo, Zhiyi 2018-02-13 09:17:57 EST
Verified per comment 11 & 12

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