|
Bugzilla – Full Text Bug Listing |
| Summary: | [Build 62.1] control center is missing some details on s390x | ||
|---|---|---|---|
| Product: | [openSUSE] PUBLIC SUSE Linux Enterprise Server 15 SP6 | Reporter: | Jozef Pupava <jpupava> |
| Component: | GNOME | Assignee: | E-mail List <gnome-bugs> |
| Status: | IN_PROGRESS --- | QA Contact: | |
| Severity: | Normal | ||
| Priority: | P3 - Medium | CC: | federico, ihno, marcela.maslanova, mikef, olivier.tilloy, sreeves, yfjiang |
| Version: | unspecified | Flags: | federico:
needinfo?
|
| Target Milestone: | --- | ||
| Hardware: | S/390-64 | ||
| OS: | Other | ||
| URL: | https://openqa.suse.de/tests/13724631/modules/gnome_control_center/steps/10 | ||
| Whiteboard: | Update of pixman 0.43.4 should fix it. | ||
| Found By: | openQA | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: |
s390x with missing details
x86_64 with details |
||
|
Description
Jozef Pupava
2024-03-06 10:46:22 UTC
Created attachment 873259 [details]
x86_64 with details
Can you still reproduce it? I have no experience with GNOME, so really don't know for what should I look. Yes, it's still happening, it's probably related or same issue as on nautilus https://bugzilla.suse.com/show_bug.cgi?id=1221957 (In reply to Jozef Pupava from comment #3) > Yes, it's still happening, it's probably related or same issue as on nautilus > https://bugzilla.suse.com/show_bug.cgi?id=1221957 Yes, they more or less smell like issues surrounding svg rendering. @Federico, do you have some ideas about this (and bsc#1221957)? btw. I tried to revert librsvg and pixman to older versions on SLE-15-SP5, which had no this issue - but they didn't help. I think this could be https://gitlab.gnome.org/GNOME/librsvg/-/issues/984 and specifically a pixman bug - https://gitlab.freedesktop.org/pixman/pixman/-/issues/78 The relevant packages are: librsvg-2-2-2.57.1-150600.1.4.s390x libcairo2-1.18.0-150600.1.2.s390x libpixman-1-0-0.42.2-150600.1.1.s390x If I'm correct that that is the bug, it was introduced in pixman shortly before 0.42.0 in https://gitlab.freedesktop.org/pixman/pixman/-/commit/b4a105d77232a87304b7b621e2f99e699a8eebd3 and fixed in https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/92 It is fixed pixman 0.43.4. Could we try that version for s390x? (In reply to Federico Mena Quintero from comment #5) > It is fixed pixman 0.43.4. Could we try that version for s390x? Federico - could you package that version for sp6. I assume this is a bug fix only update - ie no api/abi change ? Yes, I'll submit the update starting at GNOME:Factory. There are no API/ABI changes as far as I can tell, just build fixes for exotic architectures and the big-endian fix. Waiting on https://build.opensuse.org/request/show/1171488 to be approved. Submitted pixman 0.43.4 to SUSE:SLE-15-SP6:GA - https://build.suse.de/request/show/330069 @Yifan or @Jozef, could I ask one of you to run the openQA tests again with pixman updated to 0.43.4? The SR is https://build.suse.de/request/show/330069 (In reply to Federico Mena Quintero from comment #10) > @Yifan or @Jozef, could I ask one of you to run the openQA tests again with > pixman updated to 0.43.4? The SR is > https://build.suse.de/request/show/330069 Hello Federico, I have manually tested the pixman 0.43.4 on the testing machine Jozef provided in the https://bugzilla.suse.com/show_bug.cgi?id=1221957#c3. Unfortunately it didn't change things. Do any of the relevant dependencies need to rebuild as well? No, the dependencies should not need to be rebuilt. I am debugging this on a local qemu VM for s390x; I'll report back with findings. OK, while in general we need the pixman update, the whole bug is not in librsvg's dependencies. I get no icons if I run a plain 'gnome-calculator', 'gnome-control-center', or 'nautilus' after killing the session's nautilus. I *do* get icons with the following: GDK_DEBUG=gl-disable gnome-calculator (starts up quickly) GDK_DEBUG=gl-gles gnome-calculator (starts up really slowly, same for nautilus et al) I don't know Mesa's code paths, but notably these are the only things in /usr/lib64/dri on s390x: $ ls /usr/lib64/dri kms_swrast_dri.so swrast_dri.so I'm looking at gtk4.12's GL code to see what could be different depending on those. I'm not sure if this is a GTK issue or a Mesa issue. Relevant merge requests: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7111 (likely this one, has recent activity) https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6653 (not so recent) I'll start testing with those. Jozef, is 10.145.10.48 your machine? Do you mind if I install testing RPMs in there? It's the machine that I've been using for my tests. (In reply to Federico Mena Quintero from comment #14) > Relevant merge requests: > > https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7111 (likely this one, > has recent activity) > > https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6653 (not so recent) > > I'll start testing with those. > > Jozef, is 10.145.10.48 your machine? Do you mind if I install testing RPMs > in there? It's the machine that I've been using for my tests. Federico, Jozef and Matthias told me offline that that machine is free for use of debugging this issue. So please feel free to test. Thank you! Excellent, the patch from the merge request indeed fixes icons in gnome-control-center, nautilus, and elsewhere. I've submitted it here: https://build.suse.de/request/show/332713 I'm trying to re-submit pixman but I'm getting this: $ osc submitreq -m "Update to version 0.43.4 for bsc#1221052" Server returned an error: HTTP Error 403: Forbidden The target project SUSE:SLE-15-SP6:GA is not accepting requests because: Project is locked. Please use maintenance request for source changes and use osc requestbugownership to set bugowner of a package. I did "osc requestbugownership" and it just gave me back 332714 - I'm not sure how to proceed. (In reply to Federico Mena Quintero from comment #18) > I'm trying to re-submit pixman but I'm getting this: > > $ osc submitreq -m "Update to version 0.43.4 for bsc#1221052" > Server returned an error: HTTP Error 403: Forbidden > The target project SUSE:SLE-15-SP6:GA is not accepting requests because: > Project is locked. Please use maintenance request for source changes and use > osc requestbugownership to set bugowner of a package. > > I did "osc requestbugownership" and it just gave me back 332714 - I'm not > sure how to proceed. Hi, the GA project is locked now, so we'll need to submit to SUSE:SLE-15-SP6:Update instead. Thanks - submitted pixman to SUSE:SLE-15-SP6:Update https://build.suse.de/request/show/332814 SUSE-RU-2024:1905-1: An update that has one fix can now be installed. Category: recommended (moderate) Bug References: 1221052 Maintenance Incident: [SUSE:Maintenance:34116](https://smelt.suse.de/incident/34116/) Sources used: Desktop Applications Module 15-SP6 (src): gtk4-4.12.4-150600.3.3.1 openSUSE Leap 15.6 (src): gtk4-4.12.4-150600.3.3.1 Basesystem Module 15-SP6 (src): gtk4-4.12.4-150600.3.3.1 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination. Submitted pixman again as https://build.suse.de/request/show/336398, this time branched from SUSE:SLE-15-SP6:Update. Version 0.43.2 added support for r8g8b8 sRGB, which modifies the pixman_format_code_t enum, and that enum is used as a return type for public functions exposed by pixman's API such as pixman_image_get_format(…). Isn't that potentially breaking the ABI ? I don't think it's an ABI break the way it is done:
The enum is defined as
#define PIXMAN_FORMAT(bpp,type,a,r,g,b) (((bpp) << 24) | \
((type) << 16) | \
((a) << 12) | \
((r) << 8) | \
((g) << 4) | \
((b)))
typedef enum {
/* 128bpp formats */
PIXMAN_rgba_float = PIXMAN_FORMAT_BYTE(128,PIXMAN_TYPE_RGBA_FLOAT,32,32,32,32),
/* 96bpp formats */
PIXMAN_rgb_float = PIXMAN_FORMAT_BYTE(96,PIXMAN_TYPE_RGBA_FLOAT,0,32,32,32),
/* ... a bunch of others here ... */
/* the new one that got added in 0.43.0
PIXMAN_r8g8b8_sRGB = PIXMAN_FORMAT(24,PIXMAN_TYPE_ARGB_SRGB,0,8,8,8),
/* ... a bunch of others here ... */
} pixman_format_code_t;
That is, the enum's values are not sequential, they are encoded in a packed integer. Even though the new enum value got inserted in the middle, previously-existing values are not changed.
Then, about the return type for pixman_image_get_format() and similar. As far as I can tell, the only way to create an image in the new format is to call pixman_image_create_bits() or pixman_image_create_bits_no_clear(), which are both under the application's control - that is, the app specifies the format it knows how to handle.
Good points, thanks for clearing that. In that light, the update doesn't look risky. I'll go ahead and process it. SUSE-RU-2024:2340-1: An update that has one fix can now be installed. Category: recommended (moderate) Bug References: 1221052 Maintenance Incident: [SUSE:Maintenance:34599](https://smelt.suse.de/incident/34599/) Sources used: openSUSE Leap 15.6 (src): pixman-0.43.4-150600.3.3.1 Basesystem Module 15-SP6 (src): pixman-0.43.4-150600.3.3.1 Desktop Applications Module 15-SP6 (src): pixman-0.43.4-150600.3.3.1 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination. |