Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1687291 - Cannot stream rhel 8.0 guest desktop using Nice Dcv 2017.3-6698
Summary: Cannot stream rhel 8.0 guest desktop using Nice Dcv 2017.3-6698
Keywords:
Status: ASSIGNED
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: gdm
Version: 8.0
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: rc
: 8.0
Assignee: Ray Strode [halfline]
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-03-11 08:37 UTC by Guo, Zhiyi
Modified: 2019-04-01 18:25 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-03-14 09:05:56 UTC
Type: Bug
Target Upstream Version:


Attachments (Terms of Use)

Description Guo, Zhiyi 2019-03-11 08:37:50 UTC
Description of problem:
Cannot stream rhel 8.0 guest desktop using Nice Dcv 2017.3-6698

Version-Release number of selected component (if applicable):
4.18.0-75.el8.x86_64
qemu-kvm-3.1.0-18.module+el8+2834+fa8bb6e2.x86_64
gdm-3.28.3-20.el8.x86_64
xorg-x11-xinit-session-1.3.4-18.el8.x86_64
xorg-x11-xinit-1.3.4-18.el8.x86_64
xorg-x11-server-Xorg-1.20.3-5.el8.x86_64
xorg-x11-xauth-1.0.9-12.el8.x86_64

Nice dcv version:
2017.3-6698

How reproducible:
100%

Steps to Reproduce:
1.Boot a rhel 8 with passthrough gpu or vgpu. gpu/vgpu I used:
Quadro P2000 and M60-8Q
2.Install Nice dcv server inside guest and try to connect to this server via Nice dcv client
3.

Actual results:
Client can connect to server, but no desktop content output

Expected results:
Can stream desktop correctly correctly.

Additional info:
For Nice dcv, following the steps of user guide, I cannot stream guest desktop using rhel 8.0 guest but rhel 7.6 guest can stream guest desktop without any problems.

Try to check the difference between rhel 8.0 guest and rhel 7.6 guest, seems the failure on rhel 8.0 is caused by nice dcv cannot access X server on rhel 8.0 guest.

Nice dcv claim that dcv must can access the X server for function correctly and the command to check it is:
$ sudo DISPLAY=:0 XAUTHORITY=$(ps aux | grep "X.*\-auth" | grep -v grep | awk -F"-auth " '{print $2}' | awk '{print $1}') xhost | grep "SI:localuser:dcv$"

If it can output SI:localuser:dcv, it means dcv can access X server. If nothing output, dcv won't function.

On rhel 7.6 guest, it really outputs SI:localuser:dcv, but nothing output on rhel 8.0 guest.

The logs of nice dcv server seems also prove this:
logs of rhel 7.6:
2019-03-08 07:40:10,875288 [  3345:3345  ] INFO  agentlauncher - Starting agent launcher of session 'session1' (mode: 'system')
2019-03-08 07:40:10,875294 [  3345:3345  ] INFO  agentlauncher - Launching agent of session 'session1' (mode: 'system', display: ':0')
2019-03-08 07:40:10,877449 [  3345:3345  ] INFO  agentlauncher - Agent of session 'session1' launched (mode: 'system', user: 'dcv', pid: 15437)
2019-03-08 07:40:10,877470 [  3345:3345  ] INFO  agentlauncher - Starting agent launcher of session 'session1' (mode: 'user')
2019-03-08 07:40:10,877477 [  3345:3345  ] INFO  agentlauncher - Launching agent of session 'session1' (mode: 'user', user: 'root', display: ':0')

logs of rhel 8.0:
2019-03-08 07:51:02,182475 [   882:882   ] INFO  agentlauncher - Starting agent launcher of session 'session1' (mode: 'system')
2019-03-08 07:51:02,182481 [   882:882   ] INFO  agentlauncher - Launching agent of session 'session1' aborted (mode: 'system', user: 'dcv'): no active display detected

Sync with Karol about this problem, Karol said inject the content like "SI:localuser:dcv" into XAUTHORITY doesn't work with rootless X anymore. But re-enable root rights in /etc/X11/Xwrapper.config still doesn't work. But this issue shouldn't relate with virt or nvidia.

Comment 1 Ademar Reis 2019-03-13 18:12:40 UTC
It seems to me that Nice Dcv needs to support wayland. I don't think this is related to virt at all.

Gerd: any hint or advice? We'll probably close this BZ as NOTABUG.

Comment 2 Gerd Hoffmann 2019-03-14 09:05:56 UTC
(In reply to Ademar Reis from comment #1)
> It seems to me that Nice Dcv needs to support wayland. I don't think this is
> related to virt at all.

Yes.

> Gerd: any hint or advice? We'll probably close this BZ as NOTABUG.

On the gdm login screen there is a settings menu (the gear next to the "sign in" button).
Pick Xorg instead of Wayland there, until Nice Dcv got support for the wayland display server.

Comment 3 Karol Herbst 2019-03-14 13:56:09 UTC
sure this is wayland related? With the nvidia driver loaded gdm should fallback to Xorg anyway. And when I was helping to debug this, I was sure that an Xorg server was actually running.

Comment 4 Gerd Hoffmann 2019-03-15 10:58:16 UTC
(In reply to Karol Herbst from comment #3)
> sure this is wayland related? With the nvidia driver loaded gdm should
> fallback to Xorg anyway. And when I was helping to debug this, I was sure
> that an Xorg server was actually running.

Ok, checked again, not wayland indeed, it's X authorization.

Not sure what this is supposed to do.
If they need display access for root they probably should use something
along the lines of "/usr/bin/sudo --preserve-env=DISPLAY,XAUTHORITY ...".

I'd say it is a bug in "Nice dcv".  Surely not in qemu-kvm.
So, feel free to reopen and assign to ...  Hmm, no idea.

Comment 5 Karol Herbst 2019-03-15 14:55:30 UTC
(In reply to Gerd Hoffmann from comment #4)
> I'd say it is a bug in "Nice dcv".  Surely not in qemu-kvm.
> So, feel free to reopen and assign to ...  Hmm, no idea.
>

I'd say that's of course a bug inside "Nice dcv", because it does this:

(In reply to Guo, Zhiyi from comment #0)
> $ sudo DISPLAY=:0 XAUTHORITY=$(ps aux | grep "X.*\-auth" | grep -v grep |
> awk -F"-auth " '{print $2}' | awk '{print $1}') xhost | grep
> "SI:localuser:dcv$"
>

which is already very hacky to start with. But, it seems that some change in 8.0 is now causing whatever hacks "Nice dcv" does to fail. Question is rather if we try to figure something out to make it work again or just tell the developers of "Nice dcv" to use less hacky ways to achieve what they want to achieve.

Comment 6 Gerd Hoffmann 2019-03-18 08:28:56 UTC
> which is already very hacky to start with. But, it seems that some change in
> 8.0 is now causing whatever hacks "Nice dcv" does to fail. Question is
> rather if we try to figure something out to make it work again or just tell
> the developers of "Nice dcv" to use less hacky ways to achieve what they
> want to achieve.

I'd vote for 'just tell the developers of "Nice dcv" to use less hacky ways'.

But whatever we do, it certainly wouldn't be in qemu-kvm, so it's not my call.
Reassigning to xorg server.


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