Activity log for bug #1379610
Date | Who | What changed | Old value | New value | Message |
---|---|---|---|---|---|
2014-10-10 02:54:29 | Daniel van Vugt | bug | added bug | ||
2014-10-10 02:54:55 | Daniel van Vugt | description | MultiThreadedCompositor fails to schedule sufficient frames in a mostly-idle single surface scenario: 1. surfaceA emits a frame, one is scheduled 2. surfaceA emits another frame, but still only one is scheduled for compositing 3. We composite only frame (frames_scheduled == 1) 4. System is idle for some unknown time, with no compositing scheduled but surfaceA has its 2nd frame rendered that we're not seeing. The problem is: void schedule_compositing(int num_frames) { std::lock_guard<std::mutex> lock{run_mutex}; if (num_frames > frames_scheduled) { frames_scheduled = num_frames; run_cv.notify_one(); } } If a surface only emits schedule_compositing(1) but does it multiple times per compositor frame, then the second and subsequent frames won't get scheduled. This can happen for surfaces that are triple (or higher) buffered; i.e. any Mir client right now. If correct, this would explain bug 1295851 but I will keep them separate while we're not 100% sure. | MultiThreadedCompositor fails to schedule sufficient frames in a mostly-idle single surface scenario: 1. surfaceA emits a frame, one is scheduled 2. surfaceA emits another frame, but still only one is scheduled for compositing 3. We composite only one frame (frames_scheduled == 1) 4. System is idle for some unknown time, with no compositing scheduled but surfaceA has its 2nd frame rendered that we're not seeing. The problem is: void schedule_compositing(int num_frames) { std::lock_guard<std::mutex> lock{run_mutex}; if (num_frames > frames_scheduled) { frames_scheduled = num_frames; run_cv.notify_one(); } } If a surface only emits schedule_compositing(1) but does it multiple times per compositor frame, then the second and subsequent frames won't get scheduled. This can happen for surfaces that are triple (or higher) buffered; i.e. any Mir client right now. If correct, this would explain bug 1295851 but I will keep them separate while we're not 100% sure. | |
2014-10-10 02:57:20 | Daniel van Vugt | summary | MultiThreadedCompositor fails to schedule sufficient frames | MultiThreadedCompositor fails to schedule sufficient frames and may lag at random times | |
2014-10-10 03:46:11 | Daniel van Vugt | summary | MultiThreadedCompositor fails to schedule sufficient frames and may lag at random times | [regression] MultiThreadedCompositor fails to schedule sufficient frames and may lag at random times | |
2014-10-10 03:46:17 | Daniel van Vugt | tags | regression | ||
2014-10-10 03:56:41 | Daniel van Vugt | branch linked | lp:~vanvugt/mir/fix-1379610 | ||
2014-10-10 03:59:08 | Daniel van Vugt | nominated for series | mir/0.8 | ||
2014-10-10 03:59:08 | Daniel van Vugt | bug task added | mir/0.8 | ||
2014-10-10 03:59:21 | Daniel van Vugt | nominated for series | mir/0.7 | ||
2014-10-10 03:59:21 | Daniel van Vugt | bug task added | mir/0.7 | ||
2014-10-10 03:59:31 | Daniel van Vugt | mir/0.7: importance | Undecided | High | |
2014-10-10 03:59:31 | Daniel van Vugt | mir/0.7: status | New | Triaged | |
2014-10-10 03:59:47 | Daniel van Vugt | mir/0.8: importance | Undecided | High | |
2014-10-10 03:59:47 | Daniel van Vugt | mir/0.8: status | New | Triaged | |
2014-10-10 03:59:47 | Daniel van Vugt | mir/0.8: milestone | 0.8.1 | ||
2014-10-10 04:39:54 | Daniel van Vugt | bug task added | mir (Ubuntu) | ||
2014-10-10 04:40:04 | Daniel van Vugt | bug task added | mir (Ubuntu RTM) | ||
2014-10-10 04:40:18 | Daniel van Vugt | mir (Ubuntu RTM): importance | Undecided | High | |
2014-10-10 04:40:18 | Daniel van Vugt | mir (Ubuntu RTM): status | New | Triaged | |
2014-10-10 04:40:29 | Daniel van Vugt | mir (Ubuntu): importance | Undecided | High | |
2014-10-10 04:40:29 | Daniel van Vugt | mir (Ubuntu): status | New | Triaged | |
2014-10-10 19:02:33 | Lime | bug | added subscriber Lime | ||
2014-10-14 02:02:36 | Daniel van Vugt | mir/0.8: milestone | 0.8.1 | ||
2014-10-14 02:04:10 | Daniel van Vugt | mir: milestone | 0.9.0 | ||
2014-10-14 02:04:18 | Daniel van Vugt | mir: status | In Progress | Incomplete | |
2014-10-14 02:04:22 | Daniel van Vugt | mir/0.7: status | Triaged | Incomplete | |
2014-10-14 02:04:25 | Daniel van Vugt | mir/0.8: status | Triaged | Incomplete | |
2014-10-14 02:04:28 | Daniel van Vugt | mir (Ubuntu): status | Triaged | Incomplete | |
2014-10-14 02:04:32 | Daniel van Vugt | mir (Ubuntu RTM): status | Triaged | Incomplete | |
2014-10-30 03:26:38 | Daniel van Vugt | bug task deleted | mir/0.7 | ||
2014-10-30 03:26:43 | Daniel van Vugt | bug task deleted | mir/0.8 | ||
2014-12-02 07:22:49 | Daniel van Vugt | marked as duplicate | 1395581 |