Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 925668 Details for
Bug 1128663
pixman: tests fail on BE
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
Patch resolving this bug
0001-Fixed-failing-test-on-BE.patch (text/plain), 4.57 KB, created by
Jakub Čajka
on 2014-08-11 10:34:20 UTC
(
hide
)
Description:
Patch resolving this bug
Filename:
MIME Type:
Creator:
Jakub Čajka
Created:
2014-08-11 10:34:20 UTC
Size:
4.57 KB
patch
obsolete
>From 56b9860680b79a80b07a952674d05637a135d088 Mon Sep 17 00:00:00 2001 >From: =?UTF-8?q?Jakub=20=C4=8Cajka?= <jcajka@redhat.com> >Date: Mon, 11 Aug 2014 12:27:08 +0200 >Subject: [PATCH] Fixed failing test on BE > >--- > pixman-matrix-test-BE-Fix.patch | 94 +++++++++++++++++++++++++++++++++++++++++ > pixman.spec | 9 +++- > 2 files changed, 102 insertions(+), 1 deletion(-) > create mode 100644 pixman-matrix-test-BE-Fix.patch > >diff --git a/pixman-matrix-test-BE-Fix.patch b/pixman-matrix-test-BE-Fix.patch >new file mode 100644 >index 0000000..acbd6da >--- /dev/null >+++ b/pixman-matrix-test-BE-Fix.patch >@@ -0,0 +1,94 @@ >+From d87601ffc3d1583528ce52448fbb3659d0b1d1b0 Mon Sep 17 00:00:00 2001 >+From: Siarhei Siamashka <siarhei.siamashka@gmail.com> >+Date: Sat, 27 Jul 2013 19:25:32 +0300 >+Subject: test: fix matrix-test on big endian systems >+ >+ >+diff --git a/test/matrix-test.c b/test/matrix-test.c >+index 8437dd2..0a5f203 100644 >+--- a/test/matrix-test.c >++++ b/test/matrix-test.c >+@@ -70,6 +70,53 @@ pixman_bool_t does_it_fit_fixed_48_16 (__float128 x) >+ >+ #endif >+ >++static inline uint32_t >++byteswap32 (uint32_t x) >++{ >++ return ((x & ((uint32_t)0xFF << 24)) >> 24) | >++ ((x & ((uint32_t)0xFF << 16)) >> 8) | >++ ((x & ((uint32_t)0xFF << 8)) << 8) | >++ ((x & ((uint32_t)0xFF << 0)) << 24); >++} >++ >++static inline uint64_t >++byteswap64 (uint64_t x) >++{ >++ return ((x & ((uint64_t)0xFF << 56)) >> 56) | >++ ((x & ((uint64_t)0xFF << 48)) >> 40) | >++ ((x & ((uint64_t)0xFF << 40)) >> 24) | >++ ((x & ((uint64_t)0xFF << 32)) >> 8) | >++ ((x & ((uint64_t)0xFF << 24)) << 8) | >++ ((x & ((uint64_t)0xFF << 16)) << 24) | >++ ((x & ((uint64_t)0xFF << 8)) << 40) | >++ ((x & ((uint64_t)0xFF << 0)) << 56); >++} >++ >++static void >++byteswap_transform (pixman_transform_t *t) >++{ >++ int i, j; >++ >++ if (is_little_endian ()) >++ return; >++ >++ for (i = 0; i < 3; i++) >++ for (j = 0; j < 3; j++) >++ t->matrix[i][j] = byteswap32 (t->matrix[i][j]); >++} >++ >++static void >++byteswap_vector_48_16 (pixman_vector_48_16_t *v) >++{ >++ int i; >++ >++ if (is_little_endian ()) >++ return; >++ >++ for (i = 0; i < 3; i++) >++ v->v[i] = byteswap64 (v->v[i]); >++} >++ >+ uint32_t >+ test_matrix (int testnum, int verbose) >+ { >+@@ -90,6 +137,8 @@ test_matrix (int testnum, int verbose) >+ #endif >+ prng_randmemset (&ti, sizeof(ti), 0); >+ prng_randmemset (&vi, sizeof(vi), 0); >++ byteswap_transform (&ti); >++ byteswap_vector_48_16 (&vi); >+ >+ for (j = 0; j < 3; j++) >+ { >+@@ -132,8 +181,6 @@ test_matrix (int testnum, int verbose) >+ else >+ transform_ok = pixman_transform_point_31_16 (&ti, &vi, &result_i); >+ >+- crc32 = compute_crc32 (crc32, &result_i, sizeof(result_i)); >+- >+ #ifdef HAVE_FLOAT128 >+ /* compare with a reference 128-bit floating point implementation */ >+ for (j = 0; j < 3; j++) >+@@ -173,6 +220,8 @@ test_matrix (int testnum, int verbose) >+ } >+ } >+ #endif >++ byteswap_vector_48_16 (&result_i); >++ crc32 = compute_crc32 (crc32, &result_i, sizeof (result_i)); >+ } >+ return crc32; >+ } >+-- >+cgit v0.10.2 >+ >diff --git a/pixman.spec b/pixman.spec >index 1e8e768..50ce8ca 100644 >--- a/pixman.spec >+++ b/pixman.spec >@@ -3,7 +3,7 @@ > > Name: pixman > Version: 0.30.0 >-Release: 4%{?dist} >+Release: 5%{?dist} > Summary: Pixel manipulation library > > Group: System Environment/Libraries >@@ -21,6 +21,9 @@ Patch0: pixman_fix-trapezoid-underflow.patch > # Patch which adds a test for the underflow fixed by the previous patch > # See http://cgit.freedesktop.org/pixman/commit/?id=2f876cf86718d3dd9b3b04ae9552530edafe58a1 > Patch1: pixman_test-trapezoid-underflow.patch >+# test: fix matrix-test on big endian systems >+# See http://cgit.freedesktop.org/pixman/commit/test/matrix-test.c?id=d87601ffc3d1583528ce52448fbb3659d0b1d1b0 >+Patch2: pixman-matrix-test-BE-Fix.patch > > BuildRequires: automake autoconf libtool pkgconfig > >@@ -40,6 +43,7 @@ Development library for pixman. > %setup -q > %patch0 -p1 > %patch1 -p1 >+%patch2 -p1 > > %build > %configure \ >@@ -74,6 +78,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la > %{_libdir}/pkgconfig/pixman-1.pc > > %changelog >+* Mon Aug 11 2014 Jakub Äajka <jcajka@redhat.com> - 0.30.0-5 >+- Fixed failing test on BE by including upstream patch >+ > * Wed Jul 30 2014 Jared Smith <jsmith@fedoraproject.org> - 0.30.0-4 > - Added patches from https://bugzilla.redhat.com/show_bug.cgi?id=1043743 > - These patches address CVE-2013-6425 >-- >1.9.3 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1128663
: 925668