[Touch-packages] [Bug 1373809] Re: [regression] Mir server uses too much CPU during touch scrolling

2015-01-13 Thread Launchpad Bug Tracker
This bug was fixed in the package mir - 0.8.1+15.04.20150112.2~rtm-
0ubuntu1

---
mir (0.8.1+15.04.20150112.2~rtm-0ubuntu1) 14.09; urgency=medium

  [ Daniel van Vugt ]
  * Bug fix release 0.8.1 (https://launchpad.net/mir/+milestone/0.8.1)
- ABI summary: Servers need rebuilding, but clients do not;
  . Mirclient ABI unchanged at 8
  . Mircommon ABI unchanged at 2
  . Mirplatform ABI unchanged to 3
  . Mirserver ABI bumped to 26.1 (due to breakage in LP: #1355173)
- Fixes bugs:
  . Switching windows with a Trusted Prompt Session active loses the
trusted prompt session (LP: #1355173)
  . a prompt session with an invalid application pid should be an error
(LP: #1377968)
  * mir_demo_client_basic: Don't assert on user errors like failing to
connect to a Mir server. It's much more useful to tell the user what
they did wrong than to automatically generate error reports and
duplicate apport bugs. (LP: #1331958) . (LP: #1331958)
  * Enable Project Butter motion event resampling and prediction for a
more responsive touch experience. .
  * When the server disconnects unexpectedly, give the client SIGHUP
instead of the present SIGTERM. The former is more appropriate
because it indicates: Hangup detected on controlling terminal or
death of controlling process [signal(7)] whereas SIGTERM is
reserved for more polite user-requested shutdowns. .
  * Fix the common/shared source tree layout inconsistency. If it goes
in libmircommon then it should be called common and not shared:
  * Move mir::time::*Clock out of libmirserver and into libmircommon. It
will soon be used by libmirclient.
  * Bump version to 0.8.0 as Mir 0.7.0 was released today.
  * Remove dead code kill_client_processes() from mir_test_framework.
  * Work around spurious SIGKILL delivered to clients by Valgrind during
tests. This is why CI is failing randomly (LP: #1364772) Actually
this workaround is nothing new. A quick grep shows we already use
the same hack in 13 other locations under tests/. . (LP: #1364772)
  * Privatise (don't install) headers that are unused by clients, QtMir
or USC. This reduces the size of the public include/ tree from 377
to 121 files, and reduces the number of those that get installed
from 208 to 121.
  * Bump the mircommon ABI to 2. We actually broke it in the Mir 0.7.0
release with symbols.map and didn't notice in time (LP: #1364890)
(LP: #1364890)
  * Restore support for gcc-4.8/trusty (LP: #1366134) (LP: #1366134)
  * Publish an internal header that QtMir recently started using:
mir/input/input_channel.h (LP: #1365934) . (LP: #1365934)
  * Relax dependencies on libmirplatform2. Any binary package that uses
libmirplatform2 should already be ABI compatible with any version of
libmirplatform2. Assuming we maintain our ABIs correctly...
Minimising exact version requirements should minimise future package
upgrade problems. .
  * Privatise more headers -- these are the ones unused by any external
projects but are used internally by the server code in examples/
only.
  * Introducing a generic client performance report. Just turn it on:
env MIR_CLIENT_PERF_REPORT=log yourclient and you will get nice
useful performance information: [1409905806.508895] (II) perf:
eglappsurface: 60.21 FPS, render time 0.62ms, buffer lag 47.64ms (3
buffers) [1409905807.510868] (II) perf: eglappsurface: 59.94 FPS,
render time 0.13ms, buffer lag 49.96ms (3 buffers)
[1409905808.513115] (II) perf: eglappsurface: 59.88 FPS, render time
0.12ms, buffer lag 49.98ms (3 buffers) .
  * Remove FPS output from examples/*. A more accurate and useful
measure of FPS is now available to all clients by: env
MIR_CLIENT_PERF_REPORT=log anyclient.
  * Privatise shared_library_prober*.h until such time that some
external project needs them.
  * examples: Restore the -q (quiet mode) option to eglapps and flicker.
It got deleted a little to hastily in r1906 when really it's still
useful and worth keeping. .
  * Fix constructor syntax errors, which only just today g++ has decided
are fatal (LP: #1369389) (LP: #1369389)
  * Introduce explicit driver ABI levels:    libmirplatformNdriver,
libmirclientMdriver
  * Bump the server ABI to 26. We broke it in r1924.
  * Build all platforms by default. No just Mesa. It's safe to do so,
and in fact we already do so in our Deb builds :) This way no one
can forget to fix Android build issues when working on desktop. .
  * Fix jerky/stuttering event delivery that could happen inside nested
servers sometimes (LP: #1372300) (LP: #1372300)
  * Reduced visible input lag by approx one frame (on 59-60Hz displays)*
  * Avoid polling in a loop with timeout zero most of the time. That
will only waste CPU. (LP: #1373809) (LP: #1373809)
  * demo shell: Keep colours consistent, regardless of the physical
pixel format of 

[Touch-packages] [Bug 1373809] Re: [regression] Mir server uses too much CPU during touch scrolling

2014-10-12 Thread Daniel van Vugt
** Changed in: mir (Ubuntu)
   Status: Fix Released = Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1373809

Title:
  [regression] Mir server uses too much CPU during touch scrolling

Status in Mir:
  Fix Released
Status in Mir 0.7 series:
  Invalid
Status in “mir” package in Ubuntu:
  Invalid

Bug description:
  [regression] Mir server uses too much CPU during touch events.

  Until recently constant touch events never cause the CPU usage of my
  Mir server to exceed 50%. However with the latest code it's 80-90%
  CPU.

  I'm fairly sure this is caused by my recent change:

  
  revno: 1936 [merge]
  author: Daniel van Vugt daniel.van.v...@canonical.com
  committer: Tarmac
  branch nick: development-branch
  timestamp: Thu 2014-09-25 06:06:57 +
  message:
Fix jerky/stuttering event delivery that could happen inside 
nested servers sometimes (LP: #1372300)

Waiting significantly longer than a frame before consuming previously
batched events is too dangerous in slow raw-event environments
(nested servers or very slow input devices). It causes frame skipping.
. Fixes: https://bugs.launchpad.net/bugs/1372300.

Approved by Alexandros Frantzis.
  

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1373809/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp


[Touch-packages] [Bug 1373809] Re: [regression] Mir server uses too much CPU during touch scrolling

2014-10-10 Thread Launchpad Bug Tracker
This bug was fixed in the package mir - 0.8.0+14.10.20141010-0ubuntu1

---
mir (0.8.0+14.10.20141010-0ubuntu1) utopic; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 0.8.0 (https://launchpad.net/mir/+milestone/0.8.0)
- Enhancements:
  . Less sensitivity to ABI breaks - many headers unused by external
projects are now hidden and not installed by -dev packaes. If you
require any headers that are missing, just ask.
  . Touchspots: --enable-touchspots to servers; visually shows touch
locations (warning: This affects performance LP: #1373692).
  . Client performance reporting: Any Mir client can now get accurate
performance information (frame rate, render time, buffer lag etc)
logged to stdout. Just set env MIR_CLIENT_PERF_REPORT=log
  . Further improved touch responsiveness, with less lag and smoother
scrolling (so long as you don't enable touchspots).
  . Slightly faster builds using precompiled headers.
  . Turn hardware overlays on by default. When in use, this halves the
CPU usage of a Mir server. Already enabled in unity-system-compositor.
  . More scripting to detect ABI breaks.
  . Improved src/ tree consistency (renamed src/shared to src/common).
  . Improved fatal signal design: Changed from SIGTERM to SIGHUP delivered
to clients on unexpected server disconnection.
  . Improved library/package design to allow concurrent installations
of different Mir versions without conflicts.
  . Fd reception code is now common to client and server.
- ABI summary: Servers need rebuilding, but clients do not;
  . Mirclient ABI unchanged at 8
  . Mircommon ABI bumped to 2
  . Mirplatform ABI bumped to 3
  . Mirserver ABI bumped to 26
- API changes between Mir 0.7 and 0.8:
  . Lots of headers removed from the public SDK! We have only hidden
headers not known to be used by any known projects. Please let us
know if anything is missing - https://bugs.launchpad.net/mir/+filebug
  . graphics::Platform - interface changed significantly.
  . Lots of server API changes to support touchspots.
  . File descriptors now passed as type Fd instead of int32_t.
- Bug fixes:
  . [regression] Mir deb packages with versioned names cannot be installed
simultaneously any more (LP: #1293944)
  . A frozen client can hang the whole server (LP: #1350207)
  . QtMir FTBFS: fatal error: mir/input/input_channel.h: No such file or
directory (LP: #1365934)
  . [regression] platform-api fails to build against Mir 0.8 (LP: #1368354)
  . Mir FTBFS with gcc 4.9.1-14 (utopic update):
auto_unblock_thread.h:44:46: error: no matching function for call to
‘std::thread::thread(brace-enclosed initializer list)’ (LP: #1369389)
  . [regression] Compositing is jerky and stutters during touch events
(LP: #1372850)
  . unit test fails: AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_
frameskipping (LP: #1373826)
  . intermittent hang in TestClientInput (LP: #1338612)
  . TestClientInput.scene_obscure_motion_events_by_stacking fails
intermittently (LP: #1361757)
  . [regression] First frame is composited as black (even though the client
has provided a non-black frame) (LP: #1362444)
  . Some mali drivers crash after repeatedly creating/destroying the mir
compositor threads (LP: #1362841)
  . [android] SIGTERM to server with connected client causes crash
(LP: #1364637)
  . [regression] acceptance tests fails in
ServerDisconnect.causes_client_to_terminate_by_default (LP: #1364772)
  . [regression] symbol lookup error:
/usr/lib/arm-linux-gnueabihf/libmirserver.so.24: undefined symbol:
_ZTIN7android7RefBaseE (libmirserver 0.6.1 doesn't work with
libmircommon 0.7.0) (LP: #1364890)
  . [regression] Mir FTBFS with g++-4.8 [error: ISO C++ forbids casting
between pointer-to-function and pointer-to-object] (LP: #1366134)
  . Intermittent CI failure in DemoPrivateProtobuf.client_calls_server
(LP: #1367353)
  . Overly strict libmirplatform* dependencies are blocking CI
(LP: #1370866)
  . [regression] mir demo servers segfault on shutdown (LP: #1371619)
  . Nested server crashes with SIGSEGV on shutdown in eglDestroyContext()
(LP: #1372276)
  . [regression] Moving/resizing clients in a nested server is very
jerky/stuttery (LP: #1372300)
  . [regression] Bypass/overlays are toggling constantly (LP: #1373689)
  . [regression] Mir server uses too much CPU during touch scrolling
(LP: #1373809)
  . Intermittent test failures in TestClientCursorAPI.* (LP: #1342567)
  . clang emits lots of warnings about lttng headers (LP: #1348472)
  . [enhancement] Draw input event location (LP: #1323522)
  . demo shell: Keep 

[Touch-packages] [Bug 1373809] Re: [regression] Mir server uses too much CPU during touch scrolling

2014-10-08 Thread Daniel van Vugt
** Changed in: mir
   Status: Fix Committed = Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1373809

Title:
  [regression] Mir server uses too much CPU during touch scrolling

Status in Mir:
  Fix Released
Status in Mir 0.7 series:
  Invalid
Status in “mir” package in Ubuntu:
  Invalid

Bug description:
  [regression] Mir server uses too much CPU during touch events.

  Until recently constant touch events never cause the CPU usage of my
  Mir server to exceed 50%. However with the latest code it's 80-90%
  CPU.

  I'm fairly sure this is caused by my recent change:

  
  revno: 1936 [merge]
  author: Daniel van Vugt daniel.van.v...@canonical.com
  committer: Tarmac
  branch nick: development-branch
  timestamp: Thu 2014-09-25 06:06:57 +
  message:
Fix jerky/stuttering event delivery that could happen inside 
nested servers sometimes (LP: #1372300)

Waiting significantly longer than a frame before consuming previously
batched events is too dangerous in slow raw-event environments
(nested servers or very slow input devices). It causes frame skipping.
. Fixes: https://bugs.launchpad.net/bugs/1372300.

Approved by Alexandros Frantzis.
  

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1373809/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp


[Touch-packages] [Bug 1373809] Re: [regression] Mir server uses too much CPU during touch scrolling

2014-10-06 Thread Daniel van Vugt
Invalid for Ubuntu. The bug was never released (it regressed and was
fixed entirely in the 0.8 series before the 0.8.0 release).

** Also affects: mir (Ubuntu)
   Importance: Undecided
   Status: New

** Changed in: mir (Ubuntu)
   Status: New = Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1373809

Title:
  [regression] Mir server uses too much CPU during touch scrolling

Status in Mir:
  Fix Committed
Status in Mir 0.7 series:
  Invalid
Status in “mir” package in Ubuntu:
  Invalid

Bug description:
  [regression] Mir server uses too much CPU during touch events.

  Until recently constant touch events never cause the CPU usage of my
  Mir server to exceed 50%. However with the latest code it's 80-90%
  CPU.

  I'm fairly sure this is caused by my recent change:

  
  revno: 1936 [merge]
  author: Daniel van Vugt daniel.van.v...@canonical.com
  committer: Tarmac
  branch nick: development-branch
  timestamp: Thu 2014-09-25 06:06:57 +
  message:
Fix jerky/stuttering event delivery that could happen inside 
nested servers sometimes (LP: #1372300)

Waiting significantly longer than a frame before consuming previously
batched events is too dangerous in slow raw-event environments
(nested servers or very slow input devices). It causes frame skipping.
. Fixes: https://bugs.launchpad.net/bugs/1372300.

Approved by Alexandros Frantzis.
  

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1373809/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp