Bug#1052227: bookworm-pu (pre-approval): mutter/43.8-0+deb12u1

2023-09-24 Thread Adam D. Barratt
On Sun, 2023-09-24 at 11:31 +0100, Simon McVittie wrote:
> On Sat, 23 Sep 2023 at 20:44:14 +0100, Adam D. Barratt wrote:
> > On Tue, 2023-09-19 at 11:26 +0100, Simon McVittie wrote:
> > > Several new upstream bugfix releases. I've been trying to get
> > > these
> > > into
> > > a suitable state for a stable update since 12.1, but every time
> > > I've
> > > been testing one long enough to think about asking for upload
> > > approval,
> > > there have been more bugfixes upstream and the cycle starts
> > > again.
> > > 
> > > This might be the last upstream bugfix release in the 43.x
> > > series,
> > > or we might get a 43.9.
> > > 
> > 
> > Please go ahead.
> 
> To be clear, do you want this and the accompanying gnome-shell update
> uploaded in time for 12.2, or should I upload them after 12.2 for
> inclusion in 12.3 as I suggested in the request?
> 

I'm more than happy to trust your judgement here. If you'd rather wait
until 12.3, that's fine. There's certainly no need to rush from the SRM
side.

> I have been asked to roll one additional change into this update:
> updating the (non-upstream) triple-buffering patch to its latest
> version, which fixes an issue where some session types (Xorg and some
> video drivers like Raspberry Pi) would only refresh at 30fps rather
> than the intended 60fps, fixing 
> https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2017137
> and
> https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2017097. I have
> not tested that change yet, but the equivalent for mutter 44 has been
> in Ubuntu since May. After I've tested it in v43 on Debian, would
> that be OK to include? The additional diff (beyond what you already
> saw) will be what's attached, plus a changelog entry.
> 

That sounds OK; thanks.

Regards,

Adam



Bug#1052227: bookworm-pu (pre-approval): mutter/43.8-0+deb12u1

2023-09-24 Thread Simon McVittie
On Sat, 23 Sep 2023 at 20:44:14 +0100, Adam D. Barratt wrote:
> On Tue, 2023-09-19 at 11:26 +0100, Simon McVittie wrote:
> > Several new upstream bugfix releases. I've been trying to get these
> > into
> > a suitable state for a stable update since 12.1, but every time I've
> > been testing one long enough to think about asking for upload
> > approval,
> > there have been more bugfixes upstream and the cycle starts again.
> > 
> > This might be the last upstream bugfix release in the 43.x series,
> > or we might get a 43.9.
> > 
> 
> Please go ahead.

To be clear, do you want this and the accompanying gnome-shell update
uploaded in time for 12.2, or should I upload them after 12.2 for inclusion
in 12.3 as I suggested in the request?

I have been asked to roll one additional change into this update: updating
the (non-upstream) triple-buffering patch to its latest version, which
fixes an issue where some session types (Xorg and some video drivers like
Raspberry Pi) would only refresh at 30fps rather than the intended 60fps,
fixing https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2017137 and
https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2017097. I have not
tested that change yet, but the equivalent for mutter 44 has been in Ubuntu
since May. After I've tested it in v43 on Debian, would that be OK to
include? The additional diff (beyond what you already saw) will be what's
attached, plus a changelog entry.

Thanks,
smcv
>From b6d4b5bade286b2d3b6d2d9faa348574ad87503d Mon Sep 17 00:00:00 2001
From: Daniel van Vugt 
Date: Mon, 24 Apr 2023 17:42:42 +0800
Subject: [PATCH] clutter/frame-clock: Fall back to triple buffering, not
 double buffering

When the driver doesn't support GPU timestamps (Xorg, Raspberry Pi, others)

https://launchpad.net/bugs/2017137
https://launchpad.net/bugs/2017097
---
 clutter/clutter/clutter-frame-clock.c | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/clutter/clutter/clutter-frame-clock.c b/clutter/clutter/clutter-frame-clock.c
index 78f8dde9b4..f89db2582c 100644
--- a/clutter/clutter/clutter-frame-clock.c
+++ b/clutter/clutter/clutter-frame-clock.c
@@ -392,7 +392,15 @@ clutter_frame_clock_compute_max_render_time_us (ClutterFrameClock *frame_clock)
   if (!frame_clock->got_measurements_last_frame ||
   G_UNLIKELY (clutter_paint_debug_flags &
   CLUTTER_DEBUG_DISABLE_DYNAMIC_MAX_RENDER_TIME))
-return refresh_interval_us * SYNC_DELAY_FALLBACK_FRACTION;
+{
+  int64_t ret = refresh_interval_us * SYNC_DELAY_FALLBACK_FRACTION;
+
+  if (!triple_buffering_disabled &&
+  frame_clock->state == CLUTTER_FRAME_CLOCK_STATE_DISPATCHED_ONE)
+ret += refresh_interval_us;
+
+  return ret;
+}
 
   for (i = 0; i < ESTIMATE_QUEUE_LENGTH; ++i)
 {
-- 
2.40.1



Bug#1052227: bookworm-pu (pre-approval): mutter/43.8-0+deb12u1

2023-09-23 Thread Adam D. Barratt
Control: tags -1 confirmed

On Tue, 2023-09-19 at 11:26 +0100, Simon McVittie wrote:
> Several new upstream bugfix releases. I've been trying to get these
> into
> a suitable state for a stable update since 12.1, but every time I've
> been testing one long enough to think about asking for upload
> approval,
> there have been more bugfixes upstream and the cycle starts again.
> 
> This might be the last upstream bugfix release in the 43.x series,
> or we might get a 43.9.
> 

Please go ahead.

Regards,

Adam



Processed: Re: Bug#1052227: bookworm-pu (pre-approval): mutter/43.8-0+deb12u1

2023-09-23 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 confirmed
Bug #1052227 [release.debian.org] bookworm-pu (pre-approval): 
mutter/43.8-0+deb12u1
Added tag(s) confirmed.

-- 
1052227: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1052227
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#1052227: bookworm-pu (pre-approval): mutter/43.8-0+deb12u1

2023-09-19 Thread Simon McVittie
Package: release.debian.org
Severity: normal
Tags: bookworm
User: release.debian@packages.debian.org
Usertags: pu
X-Debbugs-Cc: mut...@packages.debian.org, debian-gtk-gn...@lists.debian.org
Control: affects -1 + src:mutter

[ Reason ]
Several new upstream bugfix releases. I've been trying to get these into
a suitable state for a stable update since 12.1, but every time I've
been testing one long enough to think about asking for upload approval,
there have been more bugfixes upstream and the cycle starts again.

This might be the last upstream bugfix release in the 43.x series,
or we might get a 43.9.

[ Impact ]
If not accepted, various crashes and other bugs will remain unfixed,
despite having solutions known to upstream.

[ Tests ]
A prerelease build is available at
https://people.debian.org/~smcv/12.3/pool/main/m/mutter/
and is in use on my household's bookworm laptop/desktop systems, with
no obvious regressions so far.

The diff is not small and the 12.2 deadline is coming up, so I think we
should continue testing this until after 12.2 is out, and then upload. I
would appreciate any testing that the rest of the GNOME team can provide.

43.7-1 was in testing for a while before being superseded by version 44.
I also tested a bookworm backport of 43.7-1 on my household's bookworm
laptop/desktop systems for a while.

[ Risks ]
I am not any sort of expert on compositor development, but upstream
have generally been good about backporting only bug fixes to their
stable branches. There have been some regressions in the past because
this stuff is difficult. If there are regressions from these changes,
they're likely to be of the same magnitude as the bugs that were fixed.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  (lightly filtered, see top of debdiff)
  [x] the issue is verified as fixed in unstable

[ Changes ]
clutter/clutter/clutter-paint-volume.c:
- Improve GNOME Shell app grid performance by avoiding repainting
  monitors other than the one it is displayed on
  (partially fixes gnome-shell#6819, a full fix needs gnome-shell 43.9
  which I am also proposing as a stable update; fixed in 44.4 for
  unstable)

clutter/clutter/clutter-stage.c, src/core/window.c,
src/core/display-private.h, src/core/display.c:
  Give focus to new app windows when launched from the gnome-shell
  overview, fixing a regression in 43.3-5 and upstream 43.4
  (Closes: #1035092, #1049934; fixed in 43.7 and 44.4 for unstable)

cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c:
Fix a test failure with recent Mesa (Closes: #1042055, LP: #2025287;
fixed in 44.4 for unstable)

src/backends/meta-stage-impl.c:
- Fix flickering and rendering artifacts when using software rendering,
  for example on older Intel hardware unsupported by the Gallium i915
  driver (mutter#2602; fixed in 44.4 for unstable)

src/backends/native/meta-output-kms.c:
  Make the choice of preferred video mode consistent between code
  paths, fixing choice of video mode on some monitors (mutter!3055;
  fixed in 44.4 for unstable)

src/tests/: More test coverage, especially for #1035092
  (included in 43.7 and 44.4 for unstable)

src/wayland/meta-wayland-touch.c:
- Fix the ability to drag libdecor windows by their title bar on
  touchscreens (mutter#2872; fixed in 44.4 for unstable)

.gitlab-ci.yml: Upstream CI changes, filtered out of the diff

[ Other info ]
I've only tested this in conjunction with an accompanying gnome-shell
update, so it would be best if the same release team member can look
at both.

The attached diff corresponds to packaging commit 225a383fa6, test-builds
are labelled as 43.8-0+deb12u1~43.7+2+22+g225a383fa6.

smcv
filterdiff -p1 -x.gitlab-ci.yml -x'debian/patches/*.patch'

diff --git a/NEWS b/NEWS
index 410519419e..824ba51285 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,23 @@
+43.8
+
+* Fix restoring focus when leaving the overview [Jonas; #2690]
+* Fix touch move operations on subsurfaces [Gergo; !3125]
+* Fix flickering when DRI driver isn't available [Daniel; !3117]
+* Misc. bug fixes and cleanups [Michel, Robert, Olivier, Daniel; !3055, !3135,
+  #2848, !3112]
+
+Contributors:
+  Jonas Ådahl, Michel Dänzer, Olivier Fourdan, Gergo Koteles, Robert Mader,
+  Daniel van Vugt
+
+43.7
+
+* Fixed crash [Keyu; !2827]
+
+Contributors:
+  Keyu Tao
+
+
 43.6
 
 * Fix popup issues [Jonas; !2940]
diff --git a/clutter/clutter/clutter-paint-volume.c b/clutter/clutter/clutter-paint-volume.c
index dbec4d130f..42854ba894 100644
--- a/clutter/clutter/clutter-paint-volume.c
+++ b/clutter/clutter/clutter-paint-volume.c
@@ -1061,8 +1061,8 @@ _clutter_paint_volume_get_stage_paint_box (ClutterPaintVolume *pv,
 
   _clutter_paint_volume_get_bounding_box (_pv, box);
 
-  if (pv->is_2d && pv->actor &&
-  clutter_actor_get_z_position (pv->actor) ==