[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1086533: marked as done (onednn: fix ftbfs on riscv64 again)



Your message dated Fri, 01 Nov 2024 09:10:17 +0000
with message-id <E1t6nfd-001mhz-CF@fasolo.debian.org>
and subject line Bug#1086533: fixed in onednn 3.5.3-5
has caused the Debian Bug report #1086533,
regarding onednn: fix ftbfs on riscv64 again
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1086533: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1086533
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: onednn
Version: 3.5.3-4
Severity: serious 
Tags: ftbfs patch
User: debian-riscv@lists.debian.org
Usertags: riscv64
X-Debbugs-Cc: debian-riscv@lists.debian.org

Dear Maintainer,

Thanks for reminding the ftbfs on riscv64.

It seems some workaround in #1080206 does not work with root cause
in fact, it is just fail to detect <riscv_vector.h> so
CAN_COMPILE_RVV_INTRINSICS is empty. but when switch to gcc-14 IIRC,
toolchain can detect the header file then enable
CAN_COMPILE_RVV_INTRINSICS.

But this will lead to fail:

```bash

FAILED: src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_nchw_pooling.cpp.o
/usr/bin/clang++ -DDNNL_DLL -DDNNL_DLL_EXPORTS -DDNNL_ENABLE_CPU_ISA_HINTS -DDNNL_ENABLE_MAX_CPU_ISA -DDNNL_RISCV_USE_RVV_INTRINSICS -DDNNL_RV64=1 -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I/<<PKGBUILDDIR>>/obj-riscv64-linux-gnu/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -fdiagnostics-color=always  -Wdate-time -D_FORTIFY_SOURCE=2 -fvisibility-inlines-hidden  -Wall -Wno-unknown-pragmas -fvisibility=internal   -fPIC -Wformat -Wformat-security -fstack-protector-all   -Wno-pass-failed  -O2 -g -DNDEBUG -std=c++11 -MD -MT src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_nchw_pooling.cpp.o -MF src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_nchw_pooling.cpp.o.d -o src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_nchw_pooling.cpp.o -c /<<PKGBUILDDIR>>/src/cpu/rv64/rvv_nchw_pooling.cpp
/<<PKGBUILDDIR>>/src/cpu/rv64/rvv_nchw_pooling.cpp:60:46: error: use of undeclared identifier 'vsetvl_e32m8'
   60 |                         size_t cycleLength = vsetvl_e32m8(size);
      |                                              ^

```
See: https://buildd.debian.org/status/fetch.php?pkg=onednn&arch=riscv64&ver=3.5.3-4&stamp=1730296251&raw=0

I do not have much understanding about RVV api, but after consulting
with gcc expert, we suspect that there is something wrong with these
calls. Given upstream fixing(if so) will be time consuming and our 
currently buildd machines(Unmatched) does not support rvv yet, so we 
disable rvv on it again explicitly. Meanwhile, this upload will align
with other architectures from toolchain's view.

I have tested the patch on my Unmatched.

Could you apply it when next upload? TIA.

#1080206: https://bugs.debian.org/1080206

-- 
Regards,
--
  Bo YU

diff -Nru onednn-3.5.3/debian/changelog onednn-3.5.3/debian/changelog
--- onednn-3.5.3/debian/changelog	2024-08-28 16:14:37.000000000 +0000
+++ onednn-3.5.3/debian/changelog	2024-08-29 15:18:05.000000000 +0000
@@ -1,3 +1,11 @@
+onednn (3.5.3-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Enable DONEDNN_CPU_RUNTIME=SEQ on riscv64 build it with clang. 
+    (Closes: #-1)
+
+ -- Bo YU <tsu.yubo@gmail.com>  Thu, 29 Aug 2024 15:18:05 +0000
+
 onednn (3.5.3-1) unstable; urgency=medium
 
   [ Shengqi Chen ]
diff -Nru onednn-3.5.3/debian/control onednn-3.5.3/debian/control
--- onednn-3.5.3/debian/control	2024-08-28 15:58:46.000000000 +0000
+++ onednn-3.5.3/debian/control	2024-08-29 15:18:05.000000000 +0000
@@ -7,7 +7,8 @@
                debhelper-compat (= 13),
                libtbb-dev,
                ninja-build,
-               libsimde-dev (>= 0.7.0)
+               libsimde-dev (>= 0.7.0),
+	       clang-17 [riscv64],
 Standards-Version: 4.7.0.1
 Homepage: https://github.com/oneapi-src/oneDNN
 Rules-Requires-Root: no
diff -Nru onednn-3.5.3/debian/patches/add-primitive-header-on-rv64.patch onednn-3.5.3/debian/patches/add-primitive-header-on-rv64.patch
--- onednn-3.5.3/debian/patches/add-primitive-header-on-rv64.patch	1970-01-01 00:00:00.000000000 +0000
+++ onednn-3.5.3/debian/patches/add-primitive-header-on-rv64.patch	2024-08-29 15:18:05.000000000 +0000
@@ -0,0 +1,15 @@
+Description: Add missing include common/primitive.hpp
+Applied-Upstream: https://github.com/oneapi-src/oneDNN/pull/2053
+Last-Update: 2024-08-29
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/src/cpu/rv64/rvv_nchw_pooling.hpp
++++ b/src/cpu/rv64/rvv_nchw_pooling.hpp
+@@ -19,6 +19,7 @@
+ #define RV64_NCHW_POOLING_HPP
+ 
+ #include "cpu/cpu_pooling_pd.hpp"
++#include "common/primitive.hpp"
+ 
+ namespace dnnl {
+ namespace impl {
diff -Nru onednn-3.5.3/debian/patches/series onednn-3.5.3/debian/patches/series
--- onednn-3.5.3/debian/patches/series	2024-08-28 15:58:46.000000000 +0000
+++ onednn-3.5.3/debian/patches/series	2024-08-29 15:18:05.000000000 +0000
@@ -0,0 +1 @@
+add-primitive-header-on-rv64.patch
diff -Nru onednn-3.5.3/debian/rules onednn-3.5.3/debian/rules
--- onednn-3.5.3/debian/rules	2024-08-28 16:14:22.000000000 +0000
+++ onednn-3.5.3/debian/rules	2024-08-29 15:18:05.000000000 +0000
@@ -5,6 +5,13 @@
 export DEB_LDFLAGS_MAINT_APPEND  = -Wl,--as-needed
 #export CLICOLOR_FORCE=ON
 
+ifneq (,$(filter $(DEB_BUILD_ARCH), riscv64))
+export DEB_BUILD_MAINT_OPTIONS += optimize=-lto
+
+export CC=clang-17
+export CXX=clang++-17
+endif
+
 %:
 	dh $@ -Scmake+ninja
 
@@ -12,7 +19,9 @@
 override_dh_auto_configure:
 	dh_auto_configure -- \
 		-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-		-DONEDNN_ARCH_OPT_FLAGS=""
+		-DONEDNN_ARCH_OPT_FLAGS="" \
+		$(if $(filter riscv64,$(DEB_BUILD_ARCH)),-DONEDNN_CPU_RUNTIME=SEQ -DDNNL_TARGET_ARCH=RV64,)
+		
 
 override_dh_auto_test:
 ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))

Attachment: signature.asc
Description: PGP signature


--- End Message ---
--- Begin Message ---
Source: onednn
Source-Version: 3.5.3-5
Done: Shengqi Chen <harry-chen@outlook.com>

We believe that the bug you reported is fixed in the latest version of
onednn, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1086533@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Shengqi Chen <harry-chen@outlook.com> (supplier of updated onednn package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Fri, 01 Nov 2024 16:31:09 +0800
Source: onednn
Architecture: source
Version: 3.5.3-5
Distribution: unstable
Urgency: medium
Maintainer: Debian Deep Learning Team <debian-ai@lists.debian.org>
Changed-By: Shengqi Chen <harry-chen@outlook.com>
Closes: 1086533
Changes:
 onednn (3.5.3-5) unstable; urgency=medium
 .
   [ Shengqi Chen ]
   * Team upload.
   * d/rules: disable building tests on riscv64
 .
   [ Bo YU ]
   * Fix FTBFS on riscv64 by disabling RVV. (Closes: #1086533)
   * Build on riscv64 with default toolchain.
Checksums-Sha1:
 0b702312660d56aea490fd78eebbe2e6c5e34b1c 1876 onednn_3.5.3-5.dsc
 142661fbd0d2b6ce43033756066abce94ffc2c0c 10868 onednn_3.5.3-5.debian.tar.xz
 6c16911fd8245e50234f4ce230d582cb54df588c 7092 onednn_3.5.3-5_amd64.buildinfo
Checksums-Sha256:
 b3c0a754364bd5ccee5ff4b3d98b4b0c2c9a3e6c45552e7737e9d07f55ab0a51 1876 onednn_3.5.3-5.dsc
 2d577cc1e34ba8b22ba831dd3a73ef1af4cf599e6c1798f1022b9f7420e88062 10868 onednn_3.5.3-5.debian.tar.xz
 da346de31c07bad0f5465dc0412a6fc0bd5243af772d48bf59ad917af8b5bd91 7092 onednn_3.5.3-5_amd64.buildinfo
Files:
 0e6cac41b8bb0f3925b18e6960ae04c3 1876 science optional onednn_3.5.3-5.dsc
 a288859f7bdc5c3767789b29c8b0056a 10868 science optional onednn_3.5.3-5.debian.tar.xz
 a375d84916d5b4354e8c4682418221d7 7092 science optional onednn_3.5.3-5_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQFLBAEBCgA1FiEEj6l3eq8YAbiQe3eGbuOJwPGK93QFAmcklK0XHGhhcnJ5LWNo
ZW5Ab3V0bG9vay5jb20ACgkQbuOJwPGK93SAAwf/VL5CPVOWpxnisbrdtQU00RGp
GmNrcqQ+5Mf9rkeW25QN9MT/d0byal22EmYgyWdc9VHNjzh3HW6wOidmvQnqGswc
zQkrycYlh71xlRepDxZaCvuWXfpMqfUIZ4rRkCtfYVjDxGjR32K8jAPfOE7Y/vYu
45N8rpRFZRnidFrmZq+Ie0lmgdIHwCHlEQj2y/LlYJchprm3RDYYgHtLQX5TI66F
XpeRm7kOozLyIXSJKQQzCth5SwGedzXusaesWVgwHLtbSvW2erv7Hx2E7RgJrJDn
lkWjrAR8bw9uDp+VOLp+OJ6edOJAQTndbfHKGBe+l/gFJbZtoksaeBXnia4XGg==
=ZHbi
-----END PGP SIGNATURE-----

Attachment: pgpc5gUA5M6QO.pgp
Description: PGP signature


--- End Message ---

Reply to: