Bug 464255 - X11 connection broken on startup.
Summary: X11 connection broken on startup.
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: OpenGL Canvas (show other bugs)
Version: nightly build (please specify the git hash!)
Platform: Kubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: amyspark
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-13 22:35 UTC by Ralek Kolemios
Modified: 2023-03-05 01:48 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ralek Kolemios 2023-01-13 22:35:01 UTC
On and after master nightly build #1877 ( 68b9c60 ), Krita refuses to launch. It doesn't show the splash screen, and running from console logs this:

The X11 connection broke: No error (code 0)
XIO:  fatal IO error 2 (No such file or directory) on X server ":0"
      after 474 requests (474 known processed) with 0 events remaining.

Builds 15a1672 and 5d13870 suffer the same fate. 5c98a72, which is right before the affected one, does not.

OS Information
  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 5.19.0-29-generic
  Pretty Productname: Ubuntu 22.10
  Product Type: ubuntu
  Product Version: 22.10


OpenGL Info
 
  Vendor:  "NVIDIA Corporation" 
  Renderer:  "NVIDIA GeForce RTX 4090/PCIe/SSE2" 
  Version:  "4.6.0 NVIDIA 525.60.11" 
  Shading language:  "4.60 NVIDIA" 
  Requested format:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::CompatibilityProfile) 
  Current format:  QSurfaceFormat(version 4.6, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::CompatibilityProfile) 
     Version: 4.6
     Supports deprecated functions true 
     is OpenGL ES: false 
  supportsBufferMapping: true 
  supportsBufferInvalidation: true 
  forceDisableTextureBuffers: false
Comment 1 wolthera 2023-01-13 22:54:21 UTC
Are you on a wayland session, by any chance?
Comment 2 Ralek Kolemios 2023-01-13 23:36:19 UTC
(In reply to wolthera from comment #1)
> Are you on a wayland session, by any chance?

I am not, $XDG_SESSION_TYPE states I'm on x11 right now. I tried Wayland a while ago but it would never initialize a new document, so I've been on x11 until that is officially supported.
Comment 3 Lynx3d 2023-01-19 07:51:06 UTC
I can confirm, currently nightly appimage doesn't work for me on Ubuntu 22.04 with KDE Xorg session.
This is what I get when trying to run 61fed53ae4:

qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 486, resource id: 33418149, major code: 40 (TranslateCoords), minor code: 0
The X11 connection broke: No error (code 0)
X connection to :0 broken (explicit kill or server shutdown).
Comment 4 Dmitry Kazakov 2023-01-23 07:19:57 UTC
Git commit fa671d407fd6d89c87c15c67d486e5dd1c7b0301 by Dmitry Kazakov.
Committed on 23/01/2023 at 07:19.
Pushed by dkazakov into branch 'master'.

Revert "OpenGL: increase minimum to ES 3 / 4.1 core"

This reverts commit ca645e71a09e1ee81dc0f7ef153b00304af058de.

This version update seems to break Krita on Linux.

M  +8    -3    libs/ui/opengl/KisOpenGLModeProber.h
M  +6    -12   libs/ui/opengl/kis_opengl.cpp
M  +16   -6    libs/ui/opengl/kis_opengl_shader_loader.cpp

https://invent.kde.org/graphics/krita/commit/fa671d407fd6d89c87c15c67d486e5dd1c7b0301
Comment 5 Dmitry Kazakov 2023-01-23 07:22:57 UTC
Hi, Ralek!

Could you please test this nightly build when it is ready? 

https://binary-factory.kde.org/job/Krita_Nightly_Appimage_Build/1889/

I have reverted one commit that mush have caused this issue...
Comment 6 Ralek Kolemios 2023-01-23 08:03:31 UTC
This build works and runs for me, thanks!
Comment 7 amyspark 2023-01-23 21:12:52 UTC
Reopening and assigning to myself to adjust the reverted commit.

Logs for reference: https://invent.kde.org/-/snippets/2478 https://invent.kde.org/-/snippets/2477
Comment 8 Bug Janitor Service 2023-01-27 22:21:36 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/1726
Comment 9 amyspark 2023-02-01 18:16:48 UTC
Git commit 2aef8841276ceffaa18221ac29e427c4d31efb6b by L. E. Segovia.
Committed on 01/02/2023 at 17:31.
Pushed by merge-service into branch 'master'.

OpenGL: increase minimum to ES3 / 3.3 Compatibility / 4.1 Core

This is the second attempt of commit
ca645e71a09e1ee81dc0f7ef153b00304af058de. For this one, I've ported Qt's
dynamic OpenGL module detection (which we cannot run at this time due to
QGuiApplication having not yet been instanced), and split the minimum
version per-operating system flavor.

For all OpenGL ES users, the new version will be fixed to 3.0 +
QSurfaceFormat::NoProfile (already the default-- CompatibilityProfile
and DeprecatedFunctions are no-ops).

For desktop GL users not on macOS, the new version will be fixed to 3.3
Compatibility. While testing, I found that it was easy to induce a
"crash" (in fact, forced process exit by X11) by asking NVIDIA's GLX
implementation to instantiate a 4.x surface if it was set to GLES
(whether by setRenderableType or by using NoProfile). For that reason
I've kept the Compatibility profile but without DeprecatedFunctions--
that way the display driver returns the maximum supported version.

For all desktop OpenGL users on a Mac, we use the Apple default and sole
supported version, 4.1 Core.

This reverts commit fa671d407fd6d89c87c15c67d486e5dd1c7b0301.
CCMAIL:kimageshop@kde.org

Part-of: <https://invent.kde.org/graphics/krita/-/merge_requests/1726>

M  +5    -0    krita/main.cc
M  +7    -9    libs/ui/opengl/KisOpenGLModeProber.h
M  +71   -8    libs/ui/opengl/kis_opengl.cpp
M  +13   -14   libs/ui/opengl/kis_opengl_shader_loader.cpp

https://invent.kde.org/graphics/krita/commit/2aef8841276ceffaa18221ac29e427c4d31efb6b
Comment 10 Ralek Kolemios 2023-03-04 04:42:00 UTC
Recently the latest nightly builds (I've tried 8eccca2) have begun to give the same or similar error again, so I'll be reopening this bug.

> The X11 connection broke: No error (code 0)
> XIO:  fatal IO error 22 (Invalid argument) on X server ":0"
>       after 481 requests (481 known processed) with 0 events remaining.
Comment 11 amyspark 2023-03-04 13:43:29 UTC
That's X11 forcing Krita to exit. What's the output of glxinfo on your machine?

Also, with a working Krita build, please attach the system info log as described here: https://docs.krita.org/en/reference_manual/sharing_krita_logs.html#getting-system-information
Comment 12 Ralek Kolemios 2023-03-05 01:48:04 UTC
This does seem to have cleared up with a restart, must have been something with the system. Thank you.