From 39673379786aa557ee202003fd301836b0ee5c89 Mon Sep 17 00:00:00 2001 From: Honza Horak Date: Thu, 25 Aug 2022 16:46:33 +0200 Subject: [PATCH] Fix SBGEMM test to work with INTERFACE64 Upstream issue: https://github.com/xianyi/OpenBLAS/issues/3738 Upstream fix: https://github.com/xianyi/OpenBLAS/pull/3718 Resolves: #2120974 --- openblas-0.3.21-sbgemm-test.patch | 55 +++++++++++++++++++++++++++++++ openblas.spec | 9 ++++- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 openblas-0.3.21-sbgemm-test.patch diff --git a/openblas-0.3.21-sbgemm-test.patch b/openblas-0.3.21-sbgemm-test.patch new file mode 100644 index 0000000..3a21470 --- /dev/null +++ b/openblas-0.3.21-sbgemm-test.patch @@ -0,0 +1,55 @@ +Fixing FTBFS on power: +https://bugzilla.redhat.com/show_bug.cgi?id=2120974 + +Upstream issue: https://github.com/xianyi/OpenBLAS/issues/3738 +Upstream fix: https://github.com/xianyi/OpenBLAS/pull/3718 + +commit d9dc015cfc78fc32f555995a89d6957ef0184ea2 +Author: Martin Kroeker +Date: Mon Aug 8 14:52:10 2022 +0200 + + Use blasint for INTERFACE64 compatibility + +diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c +index a2c358cf..d4b59145 100644 +--- a/test/compare_sgemm_sbgemm.c ++++ b/test/compare_sgemm_sbgemm.c +@@ -76,9 +76,9 @@ float16to32 (bfloat16_bits f16) + int + main (int argc, char *argv[]) + { +- int m, n, k; ++ blasint m, n, k; + int i, j, l; +- int x; ++ blasint x; + int ret = 0; + int loop = 100; + char transA = 'N', transB = 'N'; + +commit 3d338b57de1837f1e2264a1262a9ee9203f31c6c +Author: Martin Kroeker +Date: Mon Aug 8 17:09:45 2022 +0200 + + remove spurious loops + +diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c +index d4b59145..276fecae 100644 +--- a/test/compare_sgemm_sbgemm.c ++++ b/test/compare_sgemm_sbgemm.c +@@ -112,7 +112,6 @@ main (int argc, char *argv[]) + &m, BB, &k, &beta, CC, &m); + for (i = 0; i < n; i++) + for (j = 0; j < m; j++) +- for (l = 0; l < k; l++) + if (fabs (CC[i * m + j] - C[i * m + j]) > 1.0) + ret++; + if (transA == 'N' && transB == 'N') +@@ -126,7 +125,6 @@ main (int argc, char *argv[]) + } + for (i = 0; i < n; i++) + for (j = 0; j < m; j++) +- for (l = 0; l < k; l++) + if (CC[i * m + j] != DD[i * m + j]) + ret++; + } diff --git a/openblas.spec b/openblas.spec index ac939ab..d34ebd0 100644 --- a/openblas.spec +++ b/openblas.spec @@ -15,7 +15,7 @@ Name: openblas Version: 0.3.21 -Release: 1%{?dist} +Release: 2%{?dist} Summary: An optimized BLAS library based on GotoBLAS2 License: BSD URL: https://github.com/xianyi/OpenBLAS/ @@ -26,6 +26,8 @@ Patch0: openblas-0.2.15-system_lapack.patch Patch1: openblas-0.2.5-libname.patch # Don't use constructor priorities on too old architectures Patch2: openblas-0.2.15-constructor.patch +# Fix SBGEMM test to work with INTERFACE64 +Patch3: openblas-0.3.21-sbgemm-test.patch BuildRequires: make BuildRequires: gcc @@ -238,6 +240,7 @@ cd OpenBLAS-%{version} %if 0%{?rhel} == 5 %patch2 -p1 -b .constructor %endif +%patch3 -p1 -b .sbgemm # Fix source permissions find -name \*.f -exec chmod 644 {} \; @@ -643,6 +646,10 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig %endif %changelog +* Wed Aug 24 2022 Honza Horak - 0.3.21-2 +- Fix SBGEMM test to work with INTERFACE64 + Resolves: #2120974 + * Mon Aug 08 2022 Ali Erdinc Koroglu - 0.3.21-1 - Update to 0.3.21 (RHBZ #2116398)