All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 869] [asan] eventdev: use-after-free in event_eth_tx_adapter_autotest
Date: Fri, 29 Oct 2021 12:15:36 +0000	[thread overview]
Message-ID: <bug-869-3@http.bugs.dpdk.org/> (raw)

https://bugs.dpdk.org/show_bug.cgi?id=869

            Bug ID: 869
           Summary: [asan] eventdev: use-after-free in
                    event_eth_tx_adapter_autotest
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: other
          Assignee: dev@dpdk.org
          Reporter: david.marchand@redhat.com
  Target Milestone: ---

Using series https://patchwork.dpdk.org/project/dpdk/list/?series=19821,
calling event_eth_tx_adapter_autotest shows:

93/97 DPDK:fast-tests / event_eth_tx_adapter_autotest  FAIL     2.48 s (exit
status 1)

--- command ---
DPDK_TEST='event_eth_tx_adapter_autotest'
/home/runner/work/dpdk/dpdk/build/app/test/dpdk-test -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_cpt.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_dpaax.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_iavf.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_auxiliary.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_dpaa.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_fslmc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_ifpga.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_pci.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_vdev.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_bus_vmbus.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_cnxk.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_qat.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_common_sfc_efx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_bucket.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_cnxk.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_dpaa.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_dpaa2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_ring.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_mempool_stack.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_dma_idxd.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_dma_ioat.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_dma_skeleton.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_af_packet.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ark.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_atlantic.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_avp.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_axgbe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_bnx2x.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_bnxt.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_bond.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_cnxk.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_cxgbe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_dpaa.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_dpaa2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_e1000.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ena.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_enetc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_enic.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_failsafe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_fm10k.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_hinic.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_hns3.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_i40e.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_iavf.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ice.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_igc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ionic.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ipn3ke.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ixgbe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_kni.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_liquidio.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_memif.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_mlx4.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_netvsc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_nfp.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ngbe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_null.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_octeontx_ep.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_pcap.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_pfe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_qede.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_ring.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_sfc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_softnic.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_tap.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_thunderx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_txgbe.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_vdev_netvsc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_vhost.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_virtio.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_net_vmxnet3.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_cnxk_bphy.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_dpaa2_cmdif.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_dpaa2_qdma.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_ifpga.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_ntb.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_raw_skeleton.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_bcmfs.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_caam_jr.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_ccp.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_cnxk.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_dpaa_sec.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_dpaa2_sec.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_nitrox.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_null.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_openssl.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_scheduler.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_crypto_virtio.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_compress_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_compress_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_compress_zlib.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_regex_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_regex_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_vdpa_ifc.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_vdpa_mlx5.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_cnxk.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_dlb2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_dpaa.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_dpaa2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_dsw.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_octeontx2.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_opdl.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_skeleton.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_sw.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_event_octeontx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_acc100.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_fpga_5gnr_fec.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_fpga_lte_fec.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_la12xx.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_null.so -d
/home/runner/work/dpdk/dpdk/build/drivers/librte_baseband_turbo_sw.so
--file-prefix=event_eth_tx_adapter_autotest
--- stdout ---
RTE>>event_eth_tx_adapter_autotest
--- stderr ---
EAL: Detected CPU lcores: 2
EAL: Detected NUMA nodes: 1
EAL: Detected shared linkage of DPDK
EAL: WARNING! Base virtual address hint (0x100005000 != 0x7fa217224000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: Multi-process socket /var/run/dpdk/event_eth_tx_adapter_autotest/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: No available 1048576 kB hugepages reported
EAL: VFIO support initialized
EAL: WARNING! Base virtual address hint (0x10000b000 != 0x7fa2170c4000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x100011000 != 0x7fa217063000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x100a12000 != 0x7f9dfd800000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x100c17000 != 0x7fa217002000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x101618000 != 0x7f99fd600000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x10181d000 != 0x7fa216e9f000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x10221e000 != 0x7f95fd400000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x102423000 != 0x7fa216e3e000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
EAL: WARNING! Base virtual address hint (0x102e24000 != 0x7f91fd200000) not
respected!
EAL:    This may cause issues with mapping memory into secondary processes
APP: HPET is not enabled, using TSC as default timer
Invalid port_id=2
EVENTDEV: txa_service_adapter_free() line 744: 1 Tx queues not deleted
=================================================================
==27478==ERROR: AddressSanitizer: heap-use-after-free on address 0x7f9dfda00b50
at pc 0x7fa222fb9c49 bp 0x7fffd48aa1b0 sp 0x7fffd48aa1a8
READ of size 1 at 0x7f9dfda00b50 thread T0
    #0 0x7fa222fb9c48 in txa_service_queue_del
/home/runner/work/dpdk/dpdk/build/../lib/eventdev/rte_event_eth_tx_adapter.c:877:15
    #1 0x7fa222fb9447 in rte_event_eth_tx_adapter_queue_del
/home/runner/work/dpdk/dpdk/build/../lib/eventdev/rte_event_eth_tx_adapter.c:1128:9
    #2 0xf4a10c in tx_adapter_dynamic_device
/home/runner/work/dpdk/dpdk/build/../app/test/test_event_eth_tx_adapter.c:663:9
    #3 0x517294 in unit_test_suite_runner
/home/runner/work/dpdk/dpdk/build/../app/test/test.c:345:20
    #4 0x4d7600 in cmd_autotest_parsed
/home/runner/work/dpdk/dpdk/build/../app/test/commands.c:71:10
    #5 0x7fa223f0f5c8 in cmdline_parse
/home/runner/work/dpdk/dpdk/build/../lib/cmdline/cmdline_parse.c:290:3
    #6 0x7fa223f0c467 in cmdline_valid_buffer
/home/runner/work/dpdk/dpdk/build/../lib/cmdline/cmdline.c:26:8
    #7 0x7fa223f147aa in rdline_char_in
/home/runner/work/dpdk/dpdk/build/../lib/cmdline/cmdline_rdline.c:446:5
    #8 0x7fa223f0c82c in cmdline_in
/home/runner/work/dpdk/dpdk/build/../lib/cmdline/cmdline.c:148:9
    #9 0x516ce1 in main
/home/runner/work/dpdk/dpdk/build/../app/test/test.c:214:8
    #10 0x7fa21d43cbf6 in __libc_start_main
/build/glibc-S9d2JN/glibc-2.27/csu/../csu/libc-start.c:310
    #11 0x42ff59 in _start
(/home/runner/work/dpdk/dpdk/build/app/test/dpdk-test+0x42ff59)

Address 0x7f9dfda00b50 is a wild pointer.
SUMMARY: AddressSanitizer: heap-use-after-free
/home/runner/work/dpdk/dpdk/build/../lib/eventdev/rte_event_eth_tx_adapter.c:877:15
in txa_service_queue_del
Shadow bytes around the buggy address:
  0x0ff43fb38110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x0ff43fb38120: 00 00 00 00 00 00 00 00 fd fd fd fd fd fd fd fd
  0x0ff43fb38130: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0ff43fb38140: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0ff43fb38150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
=>0x0ff43fb38160: 00 00 00 00 00 00 00 00 fd fd[fd]fd fd fd fd fd
  0x0ff43fb38170: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0ff43fb38180: fd fd fd fd fd fd fd fd 00 00 00 00 00 00 00 00
  0x0ff43fb38190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fa fa
  0x0ff43fb381a0: 00 00 00 00 00 00 00 00 00 fa fa 00 00 00 00 00
  0x0ff43fb381b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07 
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
  Shadow gap:              cc
==27478==ABORTING
-------

-- 
You are receiving this mail because:
You are the assignee for the bug.

                 reply	other threads:[~2021-10-29 12:15 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-869-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.