Mir

[testsfail] failure in CI in AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping

Bug #1394369 reported by Kevin DuBois
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Daniel van Vugt
mir (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Failure seen in CI, could not reproduce locally:
https://jenkins.qa.ubuntu.com/job/mir-mediumtests-builder-vivid-armhf/190/console

Test seems to check timing (and today the CI server seemed particularly bogged-down).

Not sure if this is the same root-cause as: lp: #1373826 (which has a similar description).

Tags: testsfail

Related branches

Revision history for this message
Kevin DuBois (kdub) wrote :

If it the same root cause as lp: #1373826, then this should be a dup of that one

summary: - failure in CI in
+ [testsfail] failure in CI in
AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :
Changed in mir:
status: New → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

When this bug was reported the first time, the cause was apparently excessive CPU usage. And the fix was to reduce it. We might have regressed in that area recently...
https://code.launchpad.net/~vanvugt/mir/fix-1373809/+merge/235917

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :
Revision history for this message
Alexandros Frantzis (afrantzis) wrote :

We haven't seen this an a while, but since the test is using real time there is a chance we will see this again under sufficient CPU load.

Changed in mir:
status: Confirmed → Triaged
importance: Undecided → Medium
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Seen again:

https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/23/consoleFull

11: [ RUN ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
11: /��BUILDDIR��/mir-0.20.0+vivid23bzr3296/tests/unit-tests/client/input/test_android_input_receiver.cpp:276: Failure
11: Expected: (duration) < (one_frame), actual: 8-byte object <05-B9 96-01 00-00 00-00> vs 8-byte object <2A-50 FE-00 00-00 00-00>
11: [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (380 ms)

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

The test in question contains the following comment:

    // Sadly using real time as droidinput::Looper doesn't use a mocked clock.

Which means reliance on real-time is a likely suspect.

Revision history for this message
Alexandros Frantzis (afrantzis) wrote :

And again:

lhttps://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/28/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/consoleFull

Changed in mir:
importance: Medium → High
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

See comment #3. Although that sounds like a kludge it would be important for us to know if some CPU regression has triggered this.

We've gone almost a year without it being a real problem, so I'd be more concerned about some CPU usage regression that might be causing this than the test itself...

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Seen again:

https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/529/console

16:50:56 23: [ RUN ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
16:50:57 23: /��BUILDDIR��/mir-0.21.0+xenial541bzr3402/tests/unit-tests/client/input/test_android_input_receiver.cpp:276: Failure
16:50:57 23: Expected: (duration) < (one_frame), actual: 8-byte object <64-83 50-01 00-00 00-00> vs 8-byte object <2A-50 FE-00 00-00 00-00>
16:50:57 23: [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (475 ms)

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

Again today:

14:48:29 [ RUN ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
14:48:29 /��BUILDDIR��/mir-0.23.0+vivid1118bzr3513/tests/unit-tests/client/input/test_android_input_receiver.cpp:269: Failure
14:48:29 Expected: (duration) < (one_frame), actual: 8-byte object <66-3B AC-02 00-00 00-00> vs 8-byte object <2A-50 FE-00 00-00 00-00>
14:48:29 [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (2060 ms)

https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1089/consoleFull

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

Drop severity. It's still happening but less than once a month.

Changed in mir:
importance: High → Medium
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Again today. First time in two months?

10:11:45 [ RUN ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
10:11:45 /build/mir-PG9QuD/mir-0.24.0+vivid1563bzr3595/tests/unit-tests/client/input/test_android_input_receiver.cpp:272: Failure
10:11:45 Expected: (duration) > (1ms), actual: 8-byte object <30-1B 0F-00 00-00 00-00> vs 8-byte object <01-00 00-00 00-00 00-00>
10:11:45 [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (3 ms)
https://mir-jenkins.ubuntu.com/job/device-runtests-mir/1071/device_type=krillin/consoleFull

Though that might be the first time '(duration) > (1ms)' has failed.

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

Again today. First time in six weeks or so?

07:56:34 11: /��BUILDDIR��/mir-0.25.0+vivid1999bzr3678/tests/unit-tests/client/input/test_android_input_receiver.cpp:269: Failure
07:56:34 11: Expected: (duration) < (one_frame), actual: 8-byte object <1D-E9 04-01 00-00 00-00> vs 8-byte object <2A-50 FE-00 00-00 00-00>
07:56:34 11: [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (129 ms)

https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1974/consoleFull

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

And again:

10:05:38 [ RUN ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
10:05:38 /build/mir-Abycmx/mir-0.25.0+vivid2508bzr3748/tests/unit-tests/client/input/test_android_input_receiver.cpp:272: Failure
10:05:38 Expected: (duration) > (1ms), actual: 8-byte object <95-A0 0D-00 00-00 00-00> vs 8-byte object <01-00 00-00 00-00 00-00>
10:05:38 [ FAILED ] AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping (4 ms)

https://mir-jenkins.ubuntu.com/job/device-runtests-mir/1661/device_type=krillin/consoleFull

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

The attached branch I think should unwittingly solve this bug.

Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
milestone: none → 0.26.0
status: Triaged → In Progress
Changed in mir:
milestone: 0.26.0 → 1.0.0
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 1.0.0

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
milestone: 1.0.0 → 0.26.0
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (7.2 KiB)

This bug was fixed in the package mir - 0.26.0+17.04.20170126.3-0ubuntu1

---------------
mir (0.26.0+17.04.20170126.3-0ubuntu1) zesty; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 0.26.0 (https://launchpad.net/mir/+milestone/0.26.0)
    - ABI summary:
      . mirclient ABI unchanged at 9
      . mirserver ABI bumped to 43
      . mircommon ABI unchanged at 7
      . mirplatform ABI unchanged at 14
      . mirprotobuf ABI unchanged at 3
      . mirplatformgraphics ABI unchanged at 11
      . mirclientplatform ABI unchanged at 5
      . mirinputplatform ABI unchanged at 6
      . mircore ABI unchanged at 1
    - Enhancements:
      . New/improved toolkit APIs: MirInputConfig and related functions,
        MirWindow and related functions, DisplayConfig and related functions,
        MirScreencastSpec and related functions,
      . Support for configuring input configuration
      . Introduce toolkit extension mechanism for platform specific APIs.
      . Toolkit extensions for: mesa_drm_auth, set_gbm_device and
        window_coordinate_translation
      . Screencasting to a specific MirBuffer.
      . Add DisplayConfigurationController::base_configuration() so downstreams
        can get the base configuration. (Weirdly they can already set it.).
      . x11 platform: allow adjustable scale parameter.
      . Added EDID support: client API, server logging and in mirout.
      . mirout: Add newer attributes only available in the new display
        config API: scaling factor, subpixel arrangement and form factor.
      . mirout: Log the orientation and logical size of each output too.
      . Replace the mir::Server-overridable Reports with Observers.
      . Add xkbcommon to mirclient.pc Requires.private.
      . Deprecate legacy toolkit APIs that will be removed in Mir 1.0
      . Introduced 'client-side vsync', which dramatically reduces latency
        from the client to the screen (particularly for nested servers like
        Unity8).
    - Bugs fixed:
      . [performance] Restore support for better-than-triple buffering by
        default. (LP: #1240909)
      . Frame rate is artificially low on Diamondville Intel Atom systems due
        to aggressive power management (LP: #1388490)
      . [testsfail] failure in CI in
        AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
        (LP: #1394369)
      . [trusted prompt sessions] Can't open two prompt sessions at the same
        time (LP: #1494197)
      . Changing scale, formFactor or DPI in display configuration causes
        renderer teardown/recreate unnecessarily (LP: #1556142)
      . [testsfail] ApplicationNotRespondingDetection.failure_to_pong_is_
        noticed (LP: #1570327)
      . CI failure in TestClientInput.receives_one_touch_event_per_frame
        (LP: #1570698)
      . Mir-on-X mouse input is jerky/stuttery compared to Mir-on-KMS
        (LP: #1576600)
      . [regression] Two fingers in mir_proving_server now resizes/moves app
        windows (two finger apps unusable) (LP: #1586311)
      . Pointer/cursor input lag in unity8 session (LP: #1591328)
      . PointerConfinement.test_we_update_our_confined_region_on_a_resize
      ...

Read more...

Changed in mir (Ubuntu):
status: New → Fix Released
Changed in mir:
status: Fix Committed → Fix Released
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.