Mir

Visible lag and pauses using Mir on nouveau

Bug #1212163 reported by Anca Emanuel
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Incomplete
High
Unassigned

Bug Description

(Using nouveau)
If I type 10 characters quickly, the first 9 come out reasonably fast, but the last after a delay of almost 1/2 a second.

ProblemType: Bug
DistroRelease: Ubuntu 13.10
Package: libmirserver1 0.0.9+13.10.20130813-0ubuntu1
ProcVersionSignature: Ubuntu 3.11.0-2.5-generic 3.11.0-rc5
Uname: Linux 3.11.0-2-generic x86_64
ApportVersion: 2.12-0ubuntu3
Architecture: amd64
Date: Wed Aug 14 12:14:23 2013
InstallationDate: Installed on 2013-05-02 (103 days ago)
InstallationMedia: Ubuntu 13.10 "Saucy Salamander" - Alpha amd64 (20130502)
MarkForUpload: True
SourcePackage: mir
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Anca Emanuel (anca-emanuel) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Sorry for asking more questions, but could you please:
    ldd /usr/sbin/unity-system-compositor
and paste the output here?

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Also, Anca reports:

emanuel@test:~$ dpkg -l | grep libmirserver
ii libmirserver1:amd64 0.0.9+13.10.20130813-0ubuntu1 amd64 Display server for Ubuntu - server library
emanuel@test:~$ lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation G92 [GeForce 8800 GT] (rev a2)
emanuel@test:~$ dpkg -l | grep nouveau
ii libdrm-nouveau2:amd64 2.4.46-1 amd64 Userspace interface to nouveau-specific kernel DRM services -- runtime
ii libdrm-nouveau2:i386 2.4.46-1 i386 Userspace interface to nouveau-specific kernel DRM services -- runtime
ii xserver-xorg-video-nouveau 1:1.0.8-0ubuntu3 amd64 X.Org X server -- Nouveau display driver

Revision history for this message
Anca Emanuel (anca-emanuel) wrote :

emanuel@test:~$ ldd /usr/sbin/unity-system-compositor
 linux-vdso.so.1 => (0x00007fff2bffe000)
 libmirserver.so.1 => /usr/lib/x86_64-linux-gnu/libmirserver.so.1 (0x00007f59ae4cc000)
 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f59ae2af000)
 libboost_system.so.1.53.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.53.0 (0x00007f59ae0aa000)
 libboost_program_options.so.1.53.0 => /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.53.0 (0x00007f59ade3c000)
 libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f59adb38000)
 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f59ad921000)
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f59ad55a000)
 libmirplatform.so => /usr/lib/x86_64-linux-gnu/libmirplatform.so (0x00007f59ad351000)
 libmirprotobuf.so.0 => /usr/lib/x86_64-linux-gnu/libmirprotobuf.so.0 (0x00007f59ad11a000)
 libmirclient.so.1 => /usr/lib/x86_64-linux-gnu/libmirclient.so.1 (0x00007f59acea2000)
 libGLESv2.so.2 => /usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2 (0x00007f59acc9b000)
 libEGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1 (0x00007f59aca77000)
 libglog.so.0 => /usr/lib/x86_64-linux-gnu/libglog.so.0 (0x00007f59ac83f000)
 libgflags.so.2 => /usr/lib/x86_64-linux-gnu/libgflags.so.2 (0x00007f59ac622000)
 libxkbcommon.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f59ac3bf000)
 libprotobuf.so.7 => /usr/lib/libprotobuf.so.7 (0x00007f59ac0ce000)
 libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f59abeca000)
 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f59abbc5000)
 /lib64/ld-linux-x86-64.so.2 (0x00007f59ae889000)
 libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f59ab9b9000)
 libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f59ab793000)
 libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f59ab591000)
 libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f59ab256000)
 libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f59ab050000)
 libxcb-xfixes.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007f59aae49000)
 libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f59aac2b000)
 libwayland-client.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007f59aaa1e000)
 libwayland-server.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-server.so.0 (0x00007f59aa80d000)
 libgbm.so.1 => /usr/lib/x86_64-linux-gnu/libgbm.so.1 (0x00007f59aa607000)
 libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f59aa3f5000)
 libunwind.so.8 => /usr/lib/x86_64-linux-gnu/libunwind.so.8 (0x00007f59aa1da000)
 libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f59a9fc0000)
 libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f59a9dbc000)
 libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f59a9bb5000)
 libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f59a99ad000)
 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f59a97a5000)

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mir (Ubuntu):
status: New → Confirmed
Revision history for this message
Mateusz Stachowski (stachowski-mateusz) wrote :

I also still have input lag problems with Mir 0.0.9 and Nouveau. I tested it with regular Ubuntu 13.10 and Xubuntu on XMir.

ubuntu@ubuntu:~$ dpkg -l | grep libmirserver
ii libmirserver1:amd64 0.0.9+13.10.20130813-0ubuntu1 amd64 Display server for Ubuntu - server library

ubuntu@ubuntu:~$ lspci | grep VGA
02:00.0 VGA compatible controller: NVIDIA Corporation G94 [GeForce 9600 GT] (rev a1)

ubuntu@ubuntu:~$ dpkg -l | grep nouveau
ii libdrm-nouveau2:amd64 2.4.46-1 amd64 Userspace interface to nouveau-specific kernel DRM services -- runtime
ii xserver-xorg-video-nouveau 1:1.0.8-0ubuntu3 amd64 X.Org X server -- Nouveau display driver

Revision history for this message
Mateusz Stachowski (stachowski-mateusz) wrote :

ubuntu@ubuntu:~$ ldd /usr/sbin/unity-system-compositor
 linux-vdso.so.1 => (0x00007ffff8bae000)
 libmirserver.so.1 => /usr/lib/x86_64-linux-gnu/libmirserver.so.1 (0x00007fd29e66f000)
 libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fd29e452000)
 libboost_system.so.1.53.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.53.0 (0x00007fd29e24d000)
 libboost_program_options.so.1.53.0 => /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.53.0 (0x00007fd29dfdf000)
 libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd29dcdb000)
 libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fd29dac4000)
 libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd29d6fd000)
 libmirplatform.so => /usr/lib/x86_64-linux-gnu/libmirplatform.so (0x00007fd29d4f4000)
 libmirprotobuf.so.0 => /usr/lib/x86_64-linux-gnu/libmirprotobuf.so.0 (0x00007fd29d2bd000)
 libmirclient.so.1 => /usr/lib/x86_64-linux-gnu/libmirclient.so.1 (0x00007fd29d045000)
 libGLESv2.so.2 => /usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2 (0x00007fd29ce3e000)
 libEGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1 (0x00007fd29cc1a000)
 libglog.so.0 => /usr/lib/x86_64-linux-gnu/libglog.so.0 (0x00007fd29c9e2000)
 libgflags.so.2 => /usr/lib/x86_64-linux-gnu/libgflags.so.2 (0x00007fd29c7c5000)
 libxkbcommon.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007fd29c562000)
 libprotobuf.so.7 => /usr/lib/libprotobuf.so.7 (0x00007fd29c271000)
 libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fd29c06d000)
 libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd29bd68000)
 /lib64/ld-linux-x86-64.so.2 (0x00007fd29ea25000)
 libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fd29bb5c000)
 libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fd29b936000)
 libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fd29b734000)
 libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fd29b3f9000)
 libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fd29b1f3000)
 libxcb-xfixes.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007fd29afec000)
 libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fd29adce000)
 libwayland-client.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007fd29abc1000)
 libwayland-server.so.0 => /usr/lib/x86_64-linux-gnu/libwayland-server.so.0 (0x00007fd29a9b0000)
 libgbm.so.1 => /usr/lib/x86_64-linux-gnu/libgbm.so.1 (0x00007fd29a7aa000)
 libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007fd29a598000)
 libunwind.so.8 => /usr/lib/x86_64-linux-gnu/libunwind.so.8 (0x00007fd29a37d000)
 libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fd29a163000)
 libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fd299f5f000)
 libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fd299d58000)
 libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fd299b50000)
 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fd299948000)

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

In my debugging with nouveau this week I can confirm it seems to have issues that intel and radeon do not. Sometimes the driver will freeze for long periods. I see this in X/Compiz too.

That said, it could also be bug 1211700 which is further amplified by bug 1195811.

summary: - Input lag
+ Visible lag and pauses using Mir on nouveau
Changed in mir:
status: New → Confirmed
description: updated
Revision history for this message
Mateusz Stachowski (stachowski-mateusz) wrote :

I don't have problems with input lag using packages from proposed 0.0.10+13.10.20130830.1-0ubuntu1 with daily image synced to the latest 30 August release. There is still abnormally high fps in glxgears or es2gears and mir_demo_client_egltriangle. There is also screen tearing.

Surprisingly the packages labeled as 0.0.10+13.10.20130829.2-0ubuntu1 which are in the universe repo result in unusable Unity desktop on my graphic card.

I have made a posts describing above results in more detail on Ubuntu Discourse.

http://ubuntu-discourse.org/t/xmir-and-nouveau-ubuntu-13-10/766/13

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The input lag here might actually be 1216472, which is not nouveau-specific. Unfortunately you have to be running native Mir clients (that are not XMir) to tell the difference between that bug and this.

The high FPS and tearing should be discussed in bug 1195811.

no longer affects: mir (Ubuntu)
Changed in mir:
importance: Undecided → High
status: Confirmed → Triaged
Revision history for this message
Mateusz Stachowski (stachowski-mateusz) wrote :

I think that this bug should be closed because since the release of packages mentioned in my previous comment I didn't have any problems with input lag.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Fix released per comment #11.

Changed in mir:
status: Triaged → Fix Released
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Oops. Mateusz is not the original reporter. So we can't declare anything is fixed yet.

Changed in mir:
status: Fix Released → Triaged
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Anca,

Are you using multiple monitors? If so then this would be bug 1216472.

Changed in mir:
status: Triaged → Incomplete
Revision history for this message
Anca Emanuel (anca-emanuel) wrote :

Daniel, I have one monitor, and 2 dvi out on the nvidia card.
On one dvi I see no visible problems.
If I move the cable to the second dvi out, there is an visible slowdown and "funny" effects with typing...

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Anca,

Does System Settings > Displays show two display rectangles? What does the "xrandr" command show?

Revision history for this message
Anca Emanuel (anca-emanuel) wrote :

> Does System Settings > Displays show two display rectangles?
Yes.

xrandr
Screen 0: minimum 320 x 320, current 1920 x 1080, maximum 32767 x 32767
DVI-0 disconnected (normal left inverted right x axis y axis)
DVI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 700mm x 390mm
   1920x1080 59.9*+ 60.0 59.9* 49.9 30.0 24.9 23.9
   1600x1200 59.9
   1400x1050 59.9
   1280x1024 59.9
   1360x768 59.6
   1280x768 60.2
   1280x720 59.9 59.7 49.8
   1440x576 24.7
   1024x768 74.9 70.0 59.9
   832x624 74.5
   800x600 74.9 60.3
   720x576 49.6
   720x480 59.7
   640x480 74.8 59.4
   720x400 69.8

On DVI1 It seems to work normal, no visible problems, and NO "two display rectangles".

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

OK, if Displays shows two rectangles that means XMir somehow thinks it's in multi-monitor or clone mode. And in multimonitor mode it's a known bug that there will be lag and funny glitches on one or more of the displays. That's bug 1216472, for which a fix is landing soon.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.