OpenAnolis8.10-64 strlen strange result
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 201 lines
From: [email protected] [mailto:[email protected]]
Sent: Friday, 21 November 2025 12.14
To: [email protected]; Morten Brørup
Subject: compilation|FAILURE| pw(158971) sid(36768) job(PER_PATCH_BUILD17357)[v3] eal/x86: optimize memcpy of small sizesTest-Label: Intel-compilation
Test-Status: FAILURE
http://dpdk.org/patch/158971
_Compilationissues_Submitter: Morten Brørup <[email protected]>
Date: 2025-11-21 10:40:51Reply_mail: <[email protected]>DPDK git baseline: Repo:dpdk, CommitID:
ef98b88455bf4a7c8b7aa3106a761c9e9270d6a3Meson Build Summary: 23 Builds Done, 22 Successful, 1 Failures, 0 Blocked
+-------------------+------------+--------------+------------+---------
---+-----------+----------+------------+| os | gcc-static | clang-static | icc-static | gcc- shared | gcc-debug | document | gcc-16byte | +-------------------+------------+--------------+------------+--------- ---+-----------+----------+------------+ | OpenAnolis8.10-64 | fail | | | | | | | | FreeBSD14-64 | pass | pass | | pass | pass | | | | RHEL96-64 | pass | pass | | pass | pass | | | | SUSE15-64 | pass | pass | | | | | | | AzureLinux3.0-64 | pass | | | | | | | | UB2404-32 | pass | | | | | | | | RHEL10-64 | pass | | | | | | | | UB2404-64 | pass | pass | | | | pass | pass | | RHEL10-64RT | pass | | | | | | | | UB2504-64 | pass | | | | | | | | Fedora42-64 | pass | pass | | | | | | | OpenEuler2404-64 | pass | | | | | | | +-------------------+------------+--------------+------------+------------+-----------+----------+------------+
Comments:
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch addDdisable_drivers=event/cnxkoption when build with ICC complier.Test environment and configuration as below:
OS: OpenAnolis8.10-64
Kernel Version: 5.10.134-18.an8.x86_64 GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-24.0.1) Clang Version: 18.1.8 (Red Hat 18.1.8- 1.0.1.module+an8.9.0+11287+9d0292d3) x86_64-native-linuxapp-gccOS: FreeBSD14-64
Kernel Version: 14.3-RELEASE
GCC Version: gcc (FreeBSD Ports Collection) 13.3.0 Clang Version: 19.1.7 (https://github.com/llvm/llvm-project.git
llvmorg-19.1.7-0-gcd708029e0b2)x86_64-native-bsdapp-gcc x86_64-native-bsdapp-clang x86_64-native-bsdapp-gcc+shared x86_64-native-bsdapp-gcc+debugOS: RHEL96-64
Kernel Version: 5.14.0-570.12.1.el9_6.x86_64 GCC Version: gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-5) Clang Version: 19.1.7 (Red Hat, Inc. 19.1.7-2.el9) x86_64-native-linuxapp-gcc x86_64-native-linuxapp-clang x86_64-native-linuxapp-gcc+shared x86_64-native-linuxapp-gcc+debugOS: SUSE15-64
Kernel Version: 6.4.0-150700.51-default GCC Version: gcc (SUSE Linux) 14.2.0 Clang Version: 17.0.6 x86_64-native-linuxapp-clang x86_64-native-linuxapp-gccOS: AzureLinux3.0-64
Kernel Version: 6.6.47.1-1.azl3 GCC Version: gcc (GCC) 13.2.0 Clang Version: 18.1.2 x86_64-native-linuxapp-gccOS: UB2404-32
Kernel Version: 6.8.0-41-generic GCC Version: gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 Clang Version: NA i686-native-linuxapp-gccOS: RHEL10-64
Kernel Version: 6.12.0-55.9.1.el10_0.x86_64 GCC Version: gcc (GCC) 14.2.1 20250110 (Red Hat 14.2.1-7) Clang Version: 19.1.7 (Red Hat, Inc. 19.1.7-2.el10) x86_64-native-linuxapp-gccOS: UB2404-64
Kernel Version: 6.8.0-41-generic GCC Version: gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 Clang Version: 18.1.3 (1ubuntu1) x86_64-native-linuxapp-gcc+16byte x86_64-native-linuxapp-gcc x86_64-native-linuxapp-clang x86_64-native-linuxapp-docOS: RHEL10-64RT
Kernel Version: 6.12.0-55.9.1.el10_0.x86_64+rt GCC Version: gcc (GCC) 14.2.1 20250110 (Red Hat 14.2.1-7) Clang Version: 19.1.7 (Red Hat, Inc. 19.1.7-2.el10) x86_64-native-linuxapp-gccOS: UB2504-64
Kernel Version: 6.14.0-15-generic GCC Version: gcc (Ubuntu 14.2.0-19ubuntu2) 14.2.0 Clang Version: NA x86_64-native-linuxapp-gccOS: Fedora42-64
Kernel Version: 6.14.0-63.fc42.x86_64 GCC Version: gcc (GCC) 15.0.1 20250329 (Red Hat 15.0.1-0) Clang Version: 20.1.3 (Fedora 20.1.3-1.fc42) x86_64-native-linuxapp-gcc x86_64-native-linuxapp-clangOS: OpenEuler2404-64
Kernel Version: 6.6.0-98.0.0.103.oe2403sp2.x86_64 GCC Version: gcc (GCC) 12.3.1 (openEuler 12.3.1-98.oe2403sp2) Clang Version: 17.0.6 ( 17.0.6-45.oe2403sp2) x86_64-native-linuxapp-gcc*Build Failed #1:
OS: OpenAnolis8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED:drivers/libtmp_rte_raw_ifpga.a.p/raw_ifpga_base_ifpga_fme.c.ogcc -Idrivers/libtmp_rte_raw_ifpga.a.p -Idrivers -I../drivers - Idrivers/raw/ifpga -I../drivers/raw/ifpga -Idrivers/raw/ifpga/base - I../drivers/raw/ifpga/base -Ilib/rawdev -I../lib/rawdev - Ilib/eal/common -I../lib/eal/common -I. -I.. -Iconfig -I../config - Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include - I../lib/eal/linux/include -Ilib/eal/x86/include - I../lib/eal/x86/include -I../kernel/linux -Ilib/eal -I../lib/eal - Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics - I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/argparse - I../lib/argparse -Ilib/ethdev -I../lib/ethdev -Ilib/net -I../lib/net - Ilib/mbuf -I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring - I../lib/ring -Ilib/meter -I../lib/meter -Ilib/pci -I../lib/pci - Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux - Idrivers/bus/vdev -I../drivers/bus/vdev -Idrivers/bus/ifpga - I../drivers/bus/ifpga -Idrivers/net/intel/i40e - I../drivers/net/intel/i40e -Idrivers/net/intel/i40e/base - I../drivers/net/intel/i40e/base -Ilib/hash -I../lib/hash -Ilib/rcu - I../lib/rcu -Idrivers/net/intel/ipn3ke -I../drivers/net/intel/ipn3ke - Ilib/sched -I../lib/sched -fdiagnostics-color=always - D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -includerte_config.h-Wvla -Wcast-qual -Wdeprecated -Wformat -Wformat- nonliteral -Wformat-security -Wmissing-declarations -Wmissing- prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith - Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed- not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC - march=native -mrtm -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -Wno- format-truncation -DRTE_LOG_DEFAULT_LOGTYPE=pmd.raw.ifpga -MD -MQdrivers/libtmp_rte_raw_ifpga.a.p/raw_ifpga_base_ifpga_fme.c.o-MFdrivers/libtmp_rte_raw_ifpga.a.p/raw_ifpga_base_ifpga_fme.c.o.d-odrivers/libtmp_rte_raw_ifpga.a.p/raw_ifpga_base_ifpga_fme.c.o-c../drivers/raw/ifpga/base/ifpga_fme.c
In file included from../drivers/raw/ifpga/base/osdep_rte/osdep_generic.h:17,from ../drivers/raw/ifpga/base/opae_osdep.h:13, from ../drivers/raw/ifpga/base/ifpga_compat.h:8, from ../drivers/raw/ifpga/base/ifpga_defines.h:8, from ../drivers/raw/ifpga/base/ifpga_hw.h:8, from ../drivers/raw/ifpga/base/ifpga_feature_dev.h:8, from ../drivers/raw/ifpga/base/ifpga_fme.c:5:In function ‘rte_mov17_to_32’,
inlined from ‘rte_memcpy’ at../lib/eal/x86/include/rte_memcpy.h:770:10,
inlined from ‘i2c_mac_rom_test’ at../drivers/raw/ifpga/base/ifpga_fme.c:1297:2:../lib/eal/x86/include/rte_memcpy.h:219:11: error: ‘memcpy’ forming offset [12, 20] is out of the bounds [0, 11] [-Werror=array-bounds]
Quoted 2 lines
return memcpy(dst, src, 20);
^~~~~~~~~~~~~~~~~~~~This is the code failing in /drivers/raw/ifpga/base/ifpga_fme.c [1]:
static int i2c_mac_rom_test(struct altera_i2c_dev *dev)
{
char buf[20];
int ret;
char read_buf[20] = {0,};
const char *string = "1a2b3c4d5e";
opae_memcpy(buf, string, strlen(string));Why does the OpenAnolis8.10-64 build evaluate strlen(string), i.e. strlen("1a2b3c4d5e"), as 20 instead of 10?
Note: opae_memcpy is defined as rte_memcpy.
[1]: https://git.dpdk.org/dpdk/tree/drivers/raw/ifpga/base/ifpga_fme.c#n1290