Bug 387469 - Compositing does not work with Nouveau
Summary: Compositing does not work with Nouveau
Status: RESOLVED INTENTIONAL
Alias: None
Product: kwin
Classification: Plasma
Component: glx (other bugs)
Version First Reported In: unspecified
Platform: Debian unstable Linux
: NOR wishlist
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-30 13:26 UTC by Alex Dănilă
Modified: 2017-12-01 18:26 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Dănilă 2017-11-30 13:26:16 UTC
On a laptop with both integrated Intel and an Nvidia card, Kwin cannot enable OpenGL compositing on the Nouveau driver. OpenGL compositing also works when using the integrated Intel. OpenGL compositing also used to work with the Nvidia drivers, but broke sometime this year.

Devices:
$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x86 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 4 associated providers: 1 name:modesetting
Provider 1: id: 0x5f cap: 0x5, Source Output, Source Offload crtcs: 0 outputs: 0 associated providers: 1 name:nouveau

Kwin started under Nouveau:
$ DRI_PRIME=1 kwin --replace &
[3] 1864
alex@debian:~$ OpenGL vendor string:                   nouveau
OpenGL renderer string:                 NV108
OpenGL version string:                  4.3 (Core Profile) Mesa 17.3.0-rc5
OpenGL shading language version string: 4.30
Driver:                                 Unknown
GPU class:                              Unknown
OpenGL version:                         4.3
GLSL version:                           4.30
Mesa version:                           17.3
X server version:                       1.19.5
Linux kernel version:                   4.13
Requires strict binding:                no
GLSL shaders:                           yes
Texture NPOT support:                   yes
Virtual Machine:                        no
kwin_core: Failed to initialize compositing, compositing disabled
QXcbConnection: XCB error: 3 (BadWindow), sequence: 3127, resource id: 192, major code: 3 (GetWindowAttributes), minor code: 0
QXcbConnection: XCB error: 9 (BadDrawable), sequence: 3128, resource id: 192, major code: 14 (GetGeometry), minor code: 0

Support information:
$ qdbus org.kde.KWin /KWin supportInformation 
Version
=======
KWin version: 5.10.5
Qt Version: 5.9.1
Qt compile version: 5.9.1
XCB compile version: 1.12

Operation Mode: X11 only

Build Options
=============
KWIN_BUILD_DECORATIONS: yes
KWIN_BUILD_TABBOX: yes
KWIN_BUILD_ACTIVITIES: yes
HAVE_INPUT: yes
HAVE_DRM: yes
HAVE_GBM: yes
HAVE_X11_XCB: yes
HAVE_EPOXY_GLX: yes
HAVE_WAYLAND_EGL: yes

X11
===
Vendor: The X.Org Foundation
Vendor Release: 11905000
Protocol Version/Revision: 11/0
SHAPE: yes; Version: 0x11
RANDR: yes; Version: 0x14
DAMAGE: yes; Version: 0x11
Composite: yes; Version: 0x4
RENDER: yes; Version: 0xb
XFIXES: yes; Version: 0x50
SYNC: yes; Version: 0x31
GLX: yes; Version: 0x0

Decoration
==========
Plugin: org.kde.breeze
Theme: 
Blur: 0
onAllDesktopsAvailable: false
alphaChannelSupported: false
closeOnDoubleClickOnMenu: false
decorationButtonsLeft: 0, 2
decorationButtonsRight: 6, 3, 4, 5
borderSize: 0
gridUnit: 10
font: Noto Sans,10,-1,5,50,0,0,0,0,0,Regular
smallSpacing: 2
largeSpacing: 10

Options
=======
focusPolicy: 1
nextFocusPrefersMouse: false
clickRaise: true
autoRaise: false
autoRaiseInterval: 750
delayFocusInterval: 100
shadeHover: false
shadeHoverInterval: 250
separateScreenFocus: false
placement: 4
focusPolicyIsReasonable: true
borderSnapZone: 10
windowSnapZone: 10
centerSnapZone: 0
snapOnlyWhenOverlapping: false
rollOverDesktops: true
focusStealingPreventionLevel: 2
legacyFullscreenSupport: false
operationTitlebarDblClick: 5000
operationMaxButtonLeftClick: 5000
operationMaxButtonMiddleClick: 5015
operationMaxButtonRightClick: 5014
commandActiveTitlebar1: 0
commandActiveTitlebar2: 30
commandActiveTitlebar3: 2
commandInactiveTitlebar1: 4
commandInactiveTitlebar2: 30
commandInactiveTitlebar3: 2
commandWindow1: 7
commandWindow2: 8
commandWindow3: 8
commandWindowWheel: 31
commandAll1: 10
commandAll2: 3
commandAll3: 14
keyCmdAllModKey: 16777250
showGeometryTip: false
condensedTitle: false
electricBorderMaximize: true
electricBorderTiling: true
electricBorderCornerRatio: 0.25
borderlessMaximizedWindows: false
killPingTimeout: 5000
hideUtilityWindowsForInactive: true
inactiveTabsSkipTaskbar: false
autogroupSimilarWindows: false
autogroupInForeground: true
compositingMode: 1
useCompositing: true
compositingInitialized: true
hiddenPreviews: 1
glSmoothScale: 2
xrenderSmoothScale: false
maxFpsInterval: 16666666
refreshRate: 0
vBlankTime: 6000000
glStrictBinding: true
glStrictBindingFollowsDriver: true
glCoreProfile: true
glPreferBufferSwap: 101
glPlatformInterface: 2
windowsBlockCompositing: true

Screen Edges
============
desktopSwitching: false
desktopSwitchingMovingClients: false
cursorPushBackDistance: 1x1
timeThreshold: 150
reActivateThreshold: 350
actionTopLeft: 0
actionTop: 0
actionTopRight: 0
actionRight: 0
actionBottomRight: 0
actionBottom: 0
actionBottomLeft: 0
actionLeft: 0

Screens
=======
Multi-Head: no
Active screen follows mouse:  yes
Number of Screens: 2

Screen 0:
---------
Name: VGA-1
Geometry: 1920,0,2048x1152
Refresh Rate: 59.9087

Screen 1:
---------
Name: eDP-1
Geometry: 0,0,1920x1080
Refresh Rate: 60.0073


Compositing
===========
Compositing is not active
Comment 1 Martin Flöser 2017-11-30 17:15:31 UTC
I'm sorry but this is a rather corner case setup and we don't implement new features on X11.
Comment 2 Alex Dănilă 2017-12-01 10:32:29 UTC
(In reply to Martin Flöser from comment #1)
> I'm sorry but this is a rather corner case setup and we don't implement new
> features on X11.

Not to disagree with the wontfix solution, but what is the new feature that should be implemented?
Comment 3 Martin Flöser 2017-12-01 18:26:36 UTC
> Not to disagree with the wontfix solution, but what is the new feature that
> should be implemented?

The new feature in this case would be prime support.