Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After update to v0.2.12 GNOME shell does not start #156

Open
Manfred2927 opened this issue Jan 2, 2020 · 13 comments
Open

After update to v0.2.12 GNOME shell does not start #156

Manfred2927 opened this issue Jan 2, 2020 · 13 comments

Comments

@Manfred2927
Copy link

@Manfred2927 Manfred2927 commented Jan 2, 2020

GNOME Shell 3.32 fails to start due to failed request RRSetScreenSize.
This does not occur with xorgxrdp v0.2.11
Log follows:

xrdp-sesman[123]: rdpRRScreenSetSize: width 1600 height 1024 mmWidth 424 mmHeight 271
xrdp-sesman[123]: rdpRRScreenSetSize: not allowing resize
org.gnome.Shell.desktop[1234]: X Error of failed request:  BadMatch (invalid parameter attributes)
org.gnome.Shell.desktop[1234]:   Major opcode of failed request:  139 (RANDR)
org.gnome.Shell.desktop[1234]:   Minor opcode of failed request:  7 (RRSetScreenSize)
org.gnome.Shell.desktop[1234]:   Serial number of failed request:  358
org.gnome.Shell.desktop[1234]:   Current serial number in output stream:  359
gnome-session[1235]: gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
xrdp-sesman[123]: rdpRRGetInfo:
org.gnome.Shell.desktop[1236]: Xlib:  extension "DPMS" missing on display ":10.0".
xrdp-sesman[123]: rdpRRScreenSetSize: width 1600 height 1024 mmWidth 424 mmHeight 271
xrdp-sesman[123]: rdpRRScreenSetSize: not allowing resize
org.gnome.Shell.desktop[1236]: X Error of failed request:  BadMatch (invalid parameter attributes)
org.gnome.Shell.desktop[1236]:   Major opcode of failed request:  139 (RANDR)
org.gnome.Shell.desktop[1236]:   Minor opcode of failed request:  7 (RRSetScreenSize)
org.gnome.Shell.desktop[1236]:   Serial number of failed request:  358
org.gnome.Shell.desktop[1236]:   Current serial number in output stream:  359
gnome-session[1235]: gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
gnome-session[1235]: gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' respawning too quickly
gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
gnome-session-binary[1235]: WARNING: App 'org.gnome.Shell.desktop' respawning too quickly
gnome-session-binary[1235]: Unrecoverable failure in required component org.gnome.Shell.desktop
gnome-session[1235]: Unable to init server: Could not connect: Connection refused
gnome-session-f[1237]: Cannot open display:
@jsorg71

This comment has been minimized.

Copy link
Contributor

@jsorg71 jsorg71 commented Jan 2, 2020

This is a change in xorgxrdp v0.2.12. RDP sessions only can be resized by the client. I guess we'll have to think more about this. What resolution are you connecting the client with? Is it 1600x1024.

@Nexarian

This comment has been minimized.

Copy link

@Nexarian Nexarian commented Jan 3, 2020

@Manfred2927

This comment has been minimized.

Copy link
Author

@Manfred2927 Manfred2927 commented Jan 3, 2020

This is a change in xorgxrdp v0.2.12. RDP sessions only can be resized by the client. I guess we'll have to think more about this. What resolution are you connecting the client with? Is it 1600x1024.

Yes, but I have seen the same with 1280x1024 as well.
By the way, this is specific to the Gnome shell. Other desktops (Cinnamon, Xfce) do not have this problem.

@Manfred2927

This comment has been minimized.

Copy link
Author

@Manfred2927 Manfred2927 commented Jan 3, 2020

I am using Gnome 3.32 (on Ubuntu 18.04) so something else is going on here.

The log is pretty clear that Gnome does not like the failed RANDR response, and the error is gone just downgrading one step to v0.12.11.

My installation of Ubuntu 18.04 uses xrdp 0.9.5.2, which is significantly different. It is also possible that Ubuntu uses a customized version of Gnome shell. In fact the version I got is 3.28.1-0ubuntu3.

Anyway, for the rest, yes done all that.

@Manfred2927

This comment has been minimized.

Copy link
Author

@Manfred2927 Manfred2927 commented Jan 3, 2020

This is a change in xorgxrdp v0.2.12. RDP sessions only can be resized by the client. I guess we'll have to think more about this.

Out of curiosity, what is the purpose of denying RANDR resize requests?

@jsorg71

This comment has been minimized.

Copy link
Contributor

@jsorg71 jsorg71 commented Jan 3, 2020

@Manfred2927 This change was to fix a crash that was happening when the DE is resizing the desktop to match the last login I guess.
In an RDP sessions, you don't want the DE changing the desktop size. If you connect an RDP client at 1920x1080, you can't have the DE thinking it knows better and resize the desktop.
Maybe it's setting the same size and we can just ignore and we don't have to fail.

@inahga

This comment has been minimized.

Copy link

@inahga inahga commented Jan 4, 2020

I'm experiencing this exact issue in CentOS 8.0 (gnome-session 3.28.1-6.el8; xrdp 0.9.11-5.el8; xorgxrdp 0.2.12-1.el8). Rolling back to xorgxrdp-0.2.11-1.el8 resolves the issue.

@jmkekala

This comment has been minimized.

Copy link

@jmkekala jmkekala commented Jan 7, 2020

Same with the CentOS 7.7. Downgrade to xorgxrdp-0.2.11-1.el7 "fixes" the issue.

@gdsotirov

This comment has been minimized.

Copy link

@gdsotirov gdsotirov commented Jan 9, 2020

I'm having similar problem on Fedora 31 with xrdp 0.9.11 and xorgxrdp 0.2.12 when trying to use Xorg session. In the journal there's the following:

Jan 09 10:12:55 fedora systemd[4881]: gnome-shell-x11.service: Failed with result 'protocol'.
Jan 09 10:12:55 fedora gnome-shell[5157]:   Current serial number in output stream:  359
Jan 09 10:12:55 fedora gnome-shell[5157]:   Serial number of failed request:  358
Jan 09 10:12:55 fedora gnome-shell[5157]:   Minor opcode of failed request:  7 (RRSetScreenSize)
Jan 09 10:12:55 fedora gnome-shell[5157]:   Major opcode of failed request:  139 (RANDR)
Jan 09 10:12:55 fedora gnome-shell[5157]: X Error of failed request:  BadMatch (invalid parameter attributes)
Jan 09 10:12:55 fedora xrdp-sesman[4870]: rdpRRScreenSetSize: not allowing resize
Jan 09 10:12:55 fedora xrdp-sesman[4870]: rdpRRScreenSetSize: width 1688 height 932 mmWidth 447 mmHeight 247
Jan 09 10:12:55 fedora gnome-shell[5157]: Xlib:  extension "DPMS" missing on display ":10.0".
Jan 09 10:12:55 fedora xrdp-sesman[4870]: rdpRRGetInfo:

The version of gnome-shell is 3.34.2 and there is no such problem with xrdp Xvnc session both connecting to Gnome desktop.

@gdsotirov

This comment has been minimized.

Copy link

@gdsotirov gdsotirov commented Jan 9, 2020

I'm having similar problem on Fedora 31 with xrdp 0.9.11 and xorgxrdp 0.2.12 when trying to use Xorg session.

And I just confirmed it working with xorgxrdp 0.2.11 by forcefully installing xorgxrdp-0.2.11-1.el8 package.

@jsorg71

This comment has been minimized.

Copy link
Contributor

@jsorg71 jsorg71 commented Feb 4, 2020

If someone can try a patch like this. I didn't get time to install gnome shell yet.

diff --git a/module/rdpRandR.c b/module/rdpRandR.c
index ffb9783..f96da0a 100644
--- a/module/rdpRandR.c
+++ b/module/rdpRandR.c
@@ -129,6 +129,12 @@ rdpRRScreenSetSize(ScreenPtr pScreen, CARD16 width, CARD16 height,
     dev = rdpGetDevFromScreen(pScreen);
     if (dev->allow_screen_resize == 0)
     {
+        if ((width == pScreen->width) && (height == pScreen->height) &&
+            (mmWidth == pScreen->mmWidth) && (mmHeight == pScreen->mmHeight))
+        {
+            LLOGLN(0, ("rdpRRScreenSetSize: already this size"));
+            return TRUE;
+        }
         LLOGLN(0, ("rdpRRScreenSetSize: not allowing resize"));
         return FALSE;
     }

@Manfred2927

This comment has been minimized.

Copy link
Author

@Manfred2927 Manfred2927 commented Feb 6, 2020

If someone can try a patch like this. I didn't get time to install gnome shell yet.

I am using a patched build that rolls back #153 entirely, and it works just fine.
Even looking at #914 I think that this allow_screen_resize flag (i.e. #153) is best removed.

@Nexarian

This comment has been minimized.

Copy link

@Nexarian Nexarian commented Feb 6, 2020

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
6 participants
You can’t perform that action at this time.