From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 5B0DB431B8;
	Fri, 20 Oct 2023 08:33:18 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 4068A402B8;
	Fri, 20 Oct 2023 08:33:18 +0200 (CEST)
Received: from inbox.dpdk.org (inbox.dpdk.org [95.142.172.178])
 by mails.dpdk.org (Postfix) with ESMTP id DD570402B7
 for <dev@dpdk.org>; Fri, 20 Oct 2023 08:33:16 +0200 (CEST)
Received: by inbox.dpdk.org (Postfix, from userid 33)
 id C5BC2431B9; Fri, 20 Oct 2023 08:33:16 +0200 (CEST)
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [Bug 1303] [DPDK-23.11]
 hotplug_mp/attach_detach_dev_primary_cross_loop: re-attach device failed in
 multiple processes
Date: Fri, 20 Oct 2023 06:33:16 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: DPDK
X-Bugzilla-Component: examples
X-Bugzilla-Version: 23.11
X-Bugzilla-Keywords: 
X-Bugzilla-Severity: normal
X-Bugzilla-Who: tingtingx.liao@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: <bug-1303-3@http.bugs.dpdk.org/>
Content-Type: multipart/alternative; boundary=16977835960.7e31a3Ed9.2795777
Content-Transfer-Encoding: 7bit
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 <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org


--16977835960.7e31a3Ed9.2795777
Date: Fri, 20 Oct 2023 08:33:16 +0200
MIME-Version: 1.0
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

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

            Bug ID: 1303
           Summary: [DPDK-23.11]
                    hotplug_mp/attach_detach_dev_primary_cross_loop:
                    re-attach device failed in multiple processes
           Product: DPDK
           Version: 23.11
          Hardware: All
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: examples
          Assignee: dev@dpdk.org
          Reporter: tingtingx.liao@intel.com
  Target Milestone: ---

Environment

DPDK version: 77f913752a55c0262bfda99a1b69ca0bd804c6c7
OS: Ubuntu 22.04.3 LTS/5.15.0-82-generic
Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
NIC hardware: Ethernet Controller E810-C for SFP 1593
Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU @ 2.30GHz
NIC driver: ice-1.13.0_rc90_2_g5c64af920_dirty
NIC firmware: 4.40 0x8001afdb 1.3444.0

Test Setup

1. compile hotplug_mp.
meson configure -Dexamples=3Dmulti_process/hotplug_mp x86_64-native-linuxap=
p-gcc
ninja -C x86_64-native-linuxapp-gcc

2. bind all PF to ice and start 3 processes
./usertools/dpdk-devbind.py -b ice 0000:18:00.0
PRIMARY process: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=20
--proc-type=3Dauto=20
SECONDARY process-1: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=
=20
--proc-type=3Dauto=20
SECONDARY process-2: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=
=20
--proc-type=3Dauto

3. bind all PF to vfio-pci
./usertools/dpdk-devbind.py -b vfio-pci 0000:18:00.0

4. attach device in PRIMARY process
attach 0000:18:00.0

5. detach device in SECONDARY process-1
detach 0000:18:00.0

6. re-attach device in PRIMARY process
attach 0000:18:00.0

[Output]
EAL: Using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_ice (8086:1593) device: 0000:18:00.0 (socket 1)
ice_load_pkg_type(): Active package is: 1.3.36.0, ICE OS Default Package
(double VLAN mode)
EAL: Failed to attach device on secondary process
EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2202010000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2204010000
failed to attached device 0000:18:00.0=20
Expected Result
Explain what is the expected result in text or as an example output:

[Expected Result]
EAL: Using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_ice (8086:1593) device: 0000:18:00.0 (socket 1)
ice_load_pkg_type(): Active package is: 1.3.36.0, ICE OS Default Package
(double VLAN mode)
attached device 0000:18:00.0

Regression
Is this issue a regression: (Y/N)Y
commit 36c46e738120c381cf663c96692454c5aa75e203
Author: David Marchand <david.marchand@redhat.com>
Date:   Wed Sep 27 13:45:15 2023 +0200



    ethdev: cleanup shared data with the last port



    If no port is allocated and no port owner is still registered,
    ethdev from a primary process may release the memzone used to store
    port data.
    This makes it possible for the DPDK memory allocator to release
    associated resources back to the OS.



    Signed-off-by: David Marchand <david.marchand@redhat.com>
    Acked-by: Morten Br=C3=B8rup <mb@smartsharesystems.com>

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

--16977835960.7e31a3Ed9.2795777
Date: Fri, 20 Oct 2023 08:33:16 +0200
MIME-Version: 1.0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All

<html>
    <head>
      <base href=3D"https://bugs.dpdk.org/">
    </head>
    <body><table border=3D"1" cellspacing=3D"0" cellpadding=3D"8" class=3D"=
bz_new_table">
        <tr>
          <th>Bug ID</th>
          <td><a class=3D"bz_bug_link=20
          bz_status_UNCONFIRMED "
   title=3D"UNCONFIRMED - [DPDK-23.11] hotplug_mp/attach_detach_dev_primary=
_cross_loop: re-attach device failed in multiple processes"
   href=3D"https://bugs.dpdk.org/show_bug.cgi?id=3D1303">1303</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[DPDK-23.11] hotplug_mp/attach_detach_dev_primary_cross_loop:=
 re-attach device failed in multiple processes
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>DPDK
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>23.11
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>UNCONFIRMED
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>examples
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>dev&#64;dpdk.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>tingtingx.liao&#64;intel.com
          </td>
        </tr>

        <tr>
          <th>Target Milestone</th>
          <td>---
          </td>
        </tr></table>
      <p>
        <div class=3D"bz_comment_block">
          <pre class=3D"bz_comment_text">Environment

DPDK version: 77f913752a55c0262bfda99a1b69ca0bd804c6c7
OS: Ubuntu 22.04.3 LTS/5.15.0-82-generic
Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
NIC hardware: Ethernet Controller E810-C for SFP 1593
Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU &#64; 2.30GHz
NIC driver: ice-1.13.0_rc90_2_g5c64af920_dirty
NIC firmware: 4.40 0x8001afdb 1.3444.0

Test Setup

1. compile hotplug_mp.
meson configure -Dexamples=3Dmulti_process/hotplug_mp x86_64-native-linuxap=
p-gcc
ninja -C x86_64-native-linuxapp-gcc

2. bind all PF to ice and start 3 processes
./usertools/dpdk-devbind.py -b ice 0000:18:00.0
PRIMARY process: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=20
--proc-type=3Dauto=20
SECONDARY process-1: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=
=20
--proc-type=3Dauto=20
SECONDARY process-2: x86_64-native-linuxapp-gcc/examples/dpdk-hotplug_mp=20=
=20
--proc-type=3Dauto

3. bind all PF to vfio-pci
./usertools/dpdk-devbind.py -b vfio-pci 0000:18:00.0

4. attach device in PRIMARY process
attach 0000:18:00.0

5. detach device in SECONDARY process-1
detach 0000:18:00.0

6. re-attach device in PRIMARY process
attach 0000:18:00.0

[Output]
EAL: Using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_ice (8086:1593) device: 0000:18:00.0 (socket 1)
ice_load_pkg_type(): Active package is: 1.3.36.0, ICE OS Default Package
(double VLAN mode)
EAL: Failed to attach device on secondary process
EAL: Releasing PCI mapped resource for 0000:18:00.0
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2202010000
EAL: Calling pci_unmap_resource for 0000:18:00.0 at 0x2204010000
failed to attached device 0000:18:00.0=20
Expected Result
Explain what is the expected result in text or as an example output:

[Expected Result]
EAL: Using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_ice (8086:1593) device: 0000:18:00.0 (socket 1)
ice_load_pkg_type(): Active package is: 1.3.36.0, ICE OS Default Package
(double VLAN mode)
attached device 0000:18:00.0

Regression
Is this issue a regression: (Y/N)Y
commit 36c46e738120c381cf663c96692454c5aa75e203
Author: David Marchand &lt;<a href=3D"mailto:david.marchand&#64;redhat.com"=
>david.marchand&#64;redhat.com</a>&gt;
Date:   Wed Sep 27 13:45:15 2023 +0200



    ethdev: cleanup shared data with the last port



    If no port is allocated and no port owner is still registered,
    ethdev from a primary process may release the memzone used to store
    port data.
    This makes it possible for the DPDK memory allocator to release
    associated resources back to the OS.



    Signed-off-by: David Marchand &lt;<a href=3D"mailto:david.marchand&#64;=
redhat.com">david.marchand&#64;redhat.com</a>&gt;
    Acked-by: Morten Br=C3=B8rup &lt;<a href=3D"mailto:mb&#64;smartsharesys=
tems.com">mb&#64;smartsharesystems.com</a>&gt;
          </pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
      <div itemscope itemtype=3D"http://schema.org/EmailMessage">
        <div itemprop=3D"action" itemscope itemtype=3D"http://schema.org/Vi=
ewAction">
=20=20=20=20=20=20=20=20=20=20
          <link itemprop=3D"url" href=3D"https://bugs.dpdk.org/show_bug.cgi=
?id=3D1303">
          <meta itemprop=3D"name" content=3D"View bug">
        </div>
        <meta itemprop=3D"description" content=3D"Bugzilla bug update notif=
ication">
      </div>
    </body>
</html>=

--16977835960.7e31a3Ed9.2795777--