All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 680] [dpdk-21.05]hotplug_mp/test_attach_detach_dev_primary_cross_loop: Segmentation fault when detach device
Date: Fri, 16 Apr 2021 05:28:18 +0000	[thread overview]
Message-ID: <bug-680-3@http.bugs.dpdk.org/> (raw)

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

            Bug ID: 680
           Summary: [dpdk-21.05]hotplug_mp/test_attach_detach_dev_primary_
                    cross_loop: Segmentation fault when detach device
           Product: DPDK
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: examples
          Assignee: dev@dpdk.org
          Reporter: leweix.yang@intel.com
  Target Milestone: ---

Environment

DPDK version: Use make showversion or for a non-released version: git remote -v
&& git show-ref --heads
 21.05.0-rc0:89813a522e68076e6f50ec18b075fa57cc5ae937
Other software versions: name/version for QEMU, OVS, etc. Repeat as required.
OS: CentOS Stream 8 4.18.0-269.el8.x86_64
Compiler: gcc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1)
Hardware platform: Intel(R) Xeon(R) Gold 6252N CPU @ 2.30GHz
NIC hardware: XXV710 for 25GbE SFP28 158b
Driver version: 2.8.20-k
NIC firmware: 8.00 0x80008bb1 1.2766.0


Test Setup
Steps to reproduce
List the steps to reproduce the issue.

1. build dpdk
# rm -rf x86_64-native-linuxapp-gcc
# CC=gcc meson --werror -Denable_kmods=True  -Dlibdir=lib
-Dc_args='-DRTE_EAL_IGB_UIO=1' --default-library=static
x86_64-native-linuxapp-gcc
# ninja -C x86_64-native-linuxapp-gcc -j 70
# meson configure -Dexamples=multi_process/hotplug_mp
x86_64-native-linuxapp-gcc
# ninja -C x86_64-native-linuxapp-gcc
2. lanch app
# Open three dut terminals 
# terminal1:x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp  
--proc-type=auto
# terminal2:x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp  
--proc-type=auto
# terminal3:x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp  
--proc-type=auto
# terminal1:list
# terminal2:list
# terminal3:list
# terminal1:attach 0000:18:00.0
# terminal1:list
# terminal2:list
# terminal3:list
# terminal3: detach 0000:18:00.0


Show the output from the previous commands:
Output of Terninal3: Failed to send hotplug request to primary.
example> detach 0000:18:00.0
detaching...
EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2200000000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2201000000
EAL: Fail to recv reply for request
/var/run/dpdk/rte/mp_socket:eal_dev_mp_request
EAL: Cannot send request to primary
EAL: Failed to send hotplug request to primary
failed to dettach device 0000:18:00.0


Output of  Terninal2:
example> list
list all etherdev
0       0000:18:00.0
example> EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2200000000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2201000000
example> list
list all etherdev
example>

Output of Terninal1: will shouw "segmentation fault"
example> EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2200000000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2201000000
Segmentation fault (core dumped)




Expected Result
Explain what is the expected result in text or as an example output:

detaching...
EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2200000000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2201000000
detached device 0000:18:00.0




Regression
Is this issue a regression: (Y/N) Y

Bad commitid : 64051bb1f144c418f3fc76e6d0973337b05d5886

git show 64051bb1f144c418f3fc76e6d0973337b05d5886
commit 64051bb1f144c418f3fc76e6d0973337b05d5886 (HEAD)
Author: Xueming Li <xuemingl@nvidia.com>
Date: Tue Apr 13 03:14:08 2021 +0000

devargs: unify scratch buffer storage

In current design, legacy parser rte_devargs_parse() saved scratch
buffer to devargs.args while new parser rte_devargs_layers_parse() saved
to devargs.data. Code using devargs had to know the difference and
cleaned up memory accordingly - error prone.

This patch unifies scratch buffer to data field, introduces
rte_devargs_reset() function to wrap the memory clean up logic.

Signed-off-by: Xueming Li <xuemingl@nvidia.com>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
Reviewed-by: Gaetan Rivet <grive@u256.net>

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

                 reply	other threads:[~2021-04-16  5:28 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-680-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.