From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id ACA4EA0508; Mon, 9 May 2022 09:12:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 65BB540691; Mon, 9 May 2022 09:12:24 +0200 (CEST) Received: from inbox.dpdk.org (inbox.dpdk.org [95.142.172.178]) by mails.dpdk.org (Postfix) with ESMTP id 470804068F for ; Mon, 9 May 2022 09:12:23 +0200 (CEST) Received: by inbox.dpdk.org (Postfix, from userid 33) id 1A338A0509; Mon, 9 May 2022 09:12:23 +0200 (CEST) From: bugzilla@dpdk.org To: dev@dpdk.org Subject: [Bug 1006] [dpdk-22.03] [asan] coremask/individual_coremask: AddressSanitizer DEADLYSIGNAL Date: Mon, 09 May 2022 07:12:21 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: DPDK X-Bugzilla-Component: core X-Bugzilla-Version: 22.03 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: songx.jiale@intel.com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: Normal X-Bugzilla-Assigned-To: dev@dpdk.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.dpdk.org/ Auto-Submitted: auto-generated X-Auto-Response-Suppress: All MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org https://bugs.dpdk.org/show_bug.cgi?id=3D1006 Bug ID: 1006 Summary: [dpdk-22.03] [asan] coremask/individual_coremask: AddressSanitizer DEADLYSIGNAL Product: DPDK Version: 22.03 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: Normal Component: core Assignee: dev@dpdk.org Reporter: songx.jiale@intel.com Target Milestone: --- OS: Ubuntu 20.04.4 LTS/5.13.0-30-generic Compiler: gcc version 9.4.0 Hardware platform: Intel(R) Xeon(R) Platinum 8380 CPU @ 2.30GHz NIC hardware: Ethernet Controller E810-C for SFP 1593 NIC firmware:=C2=A0 driver: vfio-pci kdriver: ice-1.8.3 firmware: =C2=A03.20 0x8000d847 1.3146.0 pkg: ice os default 1.3.28.0 Test Setup 1. Compile dpdk: rm -rf x86_64-native-linuxapp-gcc CC=3Dgcc meson -Denable_kmods=3DTrue -Dlibdir=3Dlib=C2=A0 -Dbuildtype=3Ddeb= ug -Db_lundef=3Dfalse -Db_sanitize=3Daddress --default-library=3Dstatic x86_64-native-linuxapp-gcc ninja -C x86_64-native-linuxapp-gcc -j 70 2.blind port to dpdk usertools/dpdk-devbind.py --force --bind=3Dvfio-pci 0000:31:00.0 0000:31:00= .1 0000:31:00.2 0000:31:00.3 echo 0 > /proc/sys/kernel/randomize_va_space ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x10 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x20 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x40 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x100 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x200 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x400 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x800 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x10000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x20000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x40000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x100000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x200000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x400000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x800000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x10000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x20000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x40000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x100000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x200000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x400000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x800000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x10000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x20000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x40000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x100000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x200000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x400000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x800000000000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000 -n= 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000 -n= 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000 -n= 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000 -n= 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x10000000000000 -= n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x20000000000000 -= n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x40000000000000 -= n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80000000000000 -= n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x100000000000000 = -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x200000000000000 = -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x400000000000000 = -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x800000000000000 = -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000000= -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000000= -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000000= -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000000= -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000000= 0 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000000= 0 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000000= 0 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000000= 0 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000000= 00 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000000= 00 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000000= 00 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000000= 00 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000000= 000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000000= 000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000000= 000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000000= 000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x1000000000000000= 0000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x2000000000000000= 0000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x4000000000000000= 0000 -n 4 --log-level=3D"lib.eal,8" quit ./x86_64-native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x8000000000000000= 0000 -n 4 --log-level=3D"lib.eal,8" quit=20 Show the output from the previous commands. Sometimes, when closing testpmd, the following asan errors will appear AddressSanitizer:DEADLYSIGNAL =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D or AddressSanitizer:DEADLYSIGNAL =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D241012=3D=3DERROR: AddressSanitizer: SEGV on unknown address 0x7fe77f= fb3fe0 (pc 0x555559d32f96 bp 0x7ffff36fc0d0 sp 0x7ffff36fc040 T1) =3D=3D241012=3D=3DThe signal is caused by a READ memory access. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0dut.10.239.251.45: ./x86_64= -native-linuxapp-gcc/app/test/dpdk-test =C2=A0-c 0x80000000000000 -n 4 --log-level=3D"lib.eal,8" =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0dut.10.239.251.45: Buffered= info: 0 0x555559d32f95 in ice_interrupt_handler ../drivers/net/ice/ice_ethdev.c:1276 =C2=A0 =C2=A0 #1 0x5555578e3583 in eal_intr_process_interrupts ../lib/eal/linux/eal_interrupts.c:1025 =C2=A0 =C2=A0 #2 0x5555578e3e08 in eal_intr_handle_interrupts ../lib/eal/linux/eal_interrupts.c:1099 =C2=A0 =C2=A0 #3 0x5555578e426e in eal_intr_thread_main ../lib/eal/linux/eal_interrupts.c:1171 =C2=A0 =C2=A0 #4 0x55555789da81 in ctrl_thread_init ../lib/eal/common/eal_common_thread.c:206 =C2=A0 =C2=A0 #5 0x7ffff7020608 in start_thread /build/glibc-sMfBJT/glibc-2.31/nptl/pthread_create.c:477 =C2=A0 =C2=A0 #6 0x7ffff6f45162 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x11f162)AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV ../drivers/net/ice/ice_ethdev.c:1276 in ice_interrupt_handler Thread T1 created by T0 here: =C2=A0 =C2=A0 #0 0x7ffff75c9805 in pthread_create (/lib/x86_64-linux-gnu/libasan.so.5+0x3a805) =C2=A0 =C2=A0 #1 0x55555789dbc5 in rte_ctrl_thread_create ../lib/eal/common/eal_common_thread.c:227 =C2=A0 =C2=A0 #2 0x5555578e4339 in rte_eal_intr_init ../lib/eal/linux/eal_interrupts.c:1199 =C2=A0 =C2=A0 #3 0x5555578d3299 in rte_eal_init ../lib/eal/linux/eal.c:1042 =C2=A0 =C2=A0 #4 0x555555e7503e in main ../app/test/test.c:146 =C2=A0 =C2=A0 #5 0x7ffff6e4a0b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x240b2)=3D=3D241012=3D=3DABORTING=20=20 Expected Result: no Asan errors=20 Regression Is this issue a regression: (Y/N)Y bad commit: dpdk-22.03: 89d3557c8de36a40266ddfbfbaa73adcda97c8f4 [root@carlsville_210 ~/dpdk]# git show 89d3557c8de36a40266ddfbfbaa73adcda97= c8f4 commit 89d3557c8de36a40266ddfbfbaa73adcda97c8f4 Author: Harman Kalra Date: =C2=A0 Fri Jan 21 17:34:19 2022 +0530 =C2=A0 =C2=A0 common/cnxk: always use single interrupt ID with NIX =C2=A0 =C2=A0 An errata exists whereby, in certain cases NIX may use an =C2=A0 =C2=A0 incorrect QINT_IDX for SQ interrupts. As a result, the =C2=A0 =C2=A0 interrupt may not be delivered to software, or may not be =C2=A0 =C2=A0 associated with the correct SQ. =C2=A0 =C2=A0 When NIX uses an incorrect QINT_IDX : =C2=A0 =C2=A0 1. NIX_LF_QINT(0..63)_CNT[COUNT]=C2=A0will be incremented for =C2=A0 =C2=A0 incorrect QINT. =C2=A0 =C2=A0 2. NIX_LF_QINT(0..63)_INT[INTR]=C2=A0will be set for incorrect =C2=A0 =C2=A0 QINT. =C2=A0 =C2=A0 Fixes: ae06070901ab ("common/cnxk: add NIX Tx queue managemen= t API") =C2=A0 =C2=A0 Cc: stable@dpdk.org =C2=A0 =C2=A0 Signed-off-by: Harman Kalra =C2=A0 =C2=A0 Acked-by: Jerin Jacob --=20 You are receiving this mail because: You are the assignee for the bug.=