Source: ucx
Version: 1.18.1+ds-1
Severity: normal
Tags: FTBFS patch
User: debian-loonga...@lists.debian.org
Usertags: loong64

Dear maintainers,

Compiling the ucx failed for loong64 in the Debian Package Auto-Building environment.
The error log is as follows,
```
......
sys/iovec.c: In function 'ucs_iov_copy':
sys/iovec.c:47:13: error: too many arguments to function 'ucs_memcpy_relaxed'    47 |             ucs_memcpy_relaxed(iov_buf, UCS_PTR_BYTE_OFFSET(buf, copied), len,
      |             ^~~~~~~~~~~~~~~~~~
.......
```
The full build log can be found at https://buildd.debian.org/status/fetch.php?pkg=ucx&arch=loong64&ver=1.18.1%2Bds-1&stamp=1741101442&raw=0.

Please consider the patch I attached.
According to the function calling in ./src/ucs/sys/iovec.c file, I need to update the parameters of function ucs_memcpy_relaxed();. Based on attached patch, I have built ucx (1.18.1+ds-1+loong64) successfully on locally.
```
......
     dpkg-deb --root-owner-group --build debian/.debhelper/libucx0/dbgsym-root .. dpkg-deb: building package 'libucx-dev' in '../libucx-dev_1.18.1+ds-1+loong64_loong64.deb'. dpkg-deb: building package 'ucx-utils-dbgsym' in '../ucx-utils-dbgsym_1.18.1+ds-1+loong64_loong64.deb'. dpkg-deb: building package 'libucx0' in '../libucx0_1.18.1+ds-1+loong64_loong64.deb'. dpkg-deb: building package 'ucx-utils' in '../ucx-utils_1.18.1+ds-1+loong64_loong64.deb'. dpkg-deb: building package 'libucx0-dbgsym' in '../libucx0-dbgsym_1.18.1+ds-1+loong64_loong64.deb'.
 dpkg-genbuildinfo -O../ucx_1.18.1+ds-1+loong64_loong64.buildinfo
 dpkg-genchanges -O../ucx_1.18.1+ds-1+loong64_loong64.changes
```

Your opinions are welcome.

Best regards,
Dandan Zhang

Description: Update the parameters of function ucs_memcpy_relaxed();
 .
 ucx (1.18.1+ds-1+loong64) unstable; urgency=medium
 .
   * Update the parameters of function ucs_memcpy_relaxed();
Author: Dandan Zhang <zhangdan...@loongson.cn>

---
Last-Update: 2025-03-06

--- ucx-1.18.1+ds.orig/src/ucs/arch/loongarch64/cpu.h
+++ ucx-1.18.1+ds/src/ucs/arch/loongarch64/cpu.h
@@ -96,7 +96,9 @@ static inline void ucs_arch_clear_cache(
 }
 #endif
 
-static inline void *ucs_memcpy_relaxed(void *dst, const void *src, size_t len)
+static inline void *ucs_memcpy_relaxed(void *dst, const void *src, size_t len,
+                                       ucs_arch_memcpy_hint_t hint,
+                                       size_t total_len)
 {
     return memcpy(dst, src, len);
 }

Reply via email to