After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 790745 - babl 0.1.38: float-to-8bit test fails on s390x
babl 0.1.38: float-to-8bit test fails on s390x
Status: RESOLVED OBSOLETE
Product: GEGL
Classification: Other
Component: babl
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Default Gegl Component Owner
Default Gegl Component Owner
Depends on:
Blocks:
 
 
Reported: 2017-11-23 02:17 UTC by Jeremy Bicha
Modified: 2018-05-22 12:19 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jeremy Bicha 2017-11-23 02:17:26 UTC
babl 0.1.38

As part of the build, Debian and Ubuntu now run the build tests.

The float-to-8bit test fails with babl 0.1.38 on the s390x architecture but it passes with 0.1.34. This is seen in both Debian and Ubuntu.

Full build logs
---------------
https://launchpad.net/ubuntu/+source/babl/0.1.38-1/+build/13764282

https://launchpad.net/ubuntu/+source/babl/0.1.34-1/+build/13653336

Build log excerpt
-----------------

FAIL: float-to-8bit
===================

 float -> u8 5 failed #2[1]  got 255 expected 156
	" 0x142c9f6b0 0x142c984d0 1"	827067104	BablFishPath
		cost:438.000000 error:0.000000000000
	"../extensions/.libs/float.so 0: RaGaBaA float to R'aG'aB'aA float"	0	BablConversionLinear
		processings:171 pixels:86019
		error: 0.000000
	"../extensions/.libs/gegl-fixups.so 0: R'aG'aB'aA float to R'G'B'A float"	0	BablConversionLinear
		processings:141 pixels:70659
		error: 0.000000
	"../extensions/.libs/simple.so 0: R'G'B'A float to R'G'B'A u8"	0	BablConversionLinear
		processings:187 pixels:95238
		error: 0.000000
 float -> u8 5 failed #2[2]  got 255 expected 213
	" 0x142c9f6b0 0x142c984d0 1"	827067104	BablFishPath
		cost:438.000000 error:0.000000000000
	"../extensions/.libs/float.so 0: RaGaBaA float to R'aG'aB'aA float"	0	BablConversionLinear
		processings:172 pixels:86147
		error: 0.000000
	"../extensions/.libs/gegl-fixups.so 0: R'aG'aB'aA float to R'G'B'A float"	0	BablConversionLinear
		processings:142 pixels:70787
		error: 0.000000
	"../extensions/.libs/simple.so 0: R'G'B'A float to R'G'B'A u8"	0	BablConversionLinear
		processings:188 pixels:95366
		error: 0.000000
FAIL float-to-8bit (exit status: 1)
Comment 1 Jeremy Bicha 2018-01-21 12:49:04 UTC
The tests pass on Debian's s390x now with babl 0.1.40. Thanks!

https://buildd.debian.org/status/package.php?p=babl

I haven't checked on Ubuntu specifically yet because Canonical has disabled non-essential s390x builds while the company updates its infrastructure for Spectre mitigation.
Comment 3 Debarshi Ray 2018-01-30 12:23:46 UTC
I think the failure isn't deterministic. A test build of babl-0.1.40 failed on Fedora 28 and aarch64, but the subsequent official build passed.

I should have access to both s390 and aarch machines, but realistically this will keep slipping down my priority list until it fails for me the next time. So any help would be nice.
Comment 4 Jeremy Bicha 2018-05-06 14:46:38 UTC
The test is now failing with Ubuntu's armhf

https://launchpad.net/ubuntu/+source/babl/0.1.46-2/+build/14825586

I think Ubuntu's armhf is built on an arm64 machine that is just set to build armhf (sort of like how we build for x86 on x64 machines) but I don't know the details.

The test does pass on Debian which has a different configuration:
https://buildd.debian.org/status/logs.php?pkg=babl&arch=armhf

I think I'm just going to disable the float-to-8bit test in Debian and Ubuntu in our version 0.1.46-3 today since this test has been a headache for months.
Comment 5 Massimo 2018-05-07 07:08:01 UTC
(In reply to Jeremy Bicha from comment #0)
...
> FAIL: float-to-8bit
> ===================
> 
>  float -> u8 5 failed #2[1]  got 255 expected 156
> 	" 0x142c9f6b0 0x142c984d0 1"	827067104	BablFishPath
> 		cost:438.000000 error:0.000000000000
> 	"../extensions/.libs/float.so 0: RaGaBaA float to R'aG'aB'aA float"	0
> BablConversionLinear
...

Considering:

https://git.gnome.org/browse/babl/tree/tests/float-to-8bit.c#n79

The problem is here:

https://git.gnome.org/browse/babl/tree/extensions/float.c#n75

when alpha is >=1 (as in the failing test), the source is not
unpremultiplied before applying the trc, this is different from
the reference.

It doesn't fail on x86_64 because for the requested conversion
a different conversion path (using sse) is used.
Comment 6 GNOME Infrastructure Team 2018-05-22 12:19:34 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gegl/issues/54.