From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 4141CA04B1;
	Sat, 10 Oct 2020 11:45:31 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 142E21D8D2;
	Sat, 10 Oct 2020 11:45:29 +0200 (CEST)
Received: from inbox.dpdk.org (xvm-172-178.dc0.ghst.net [95.142.172.178])
 by dpdk.org (Postfix) with ESMTP id BB8631D8D0
 for <dev@dpdk.org>; Sat, 10 Oct 2020 11:45:27 +0200 (CEST)
Received: by inbox.dpdk.org (Postfix, from userid 33)
 id 9313BA04B7; Sat, 10 Oct 2020 11:45:26 +0200 (CEST)
From: bugzilla@dpdk.org
To: dev@dpdk.org
Date: Sat, 10 Oct 2020 09:45:26 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: DPDK
X-Bugzilla-Component: testpmd
X-Bugzilla-Version: 20.11
X-Bugzilla-Keywords: 
X-Bugzilla-Severity: normal
X-Bugzilla-Who: weix.xie@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-553-3@http.bugs.dpdk.org/>
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
Subject: [dpdk-dev] [Bug 553] iavf_fdir/negative_case: run command with
 invalid port 'flow flush 2', it can't print error info or warning info.
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
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
Sender: "dev" <dev-bounces@dpdk.org>

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

            Bug ID: 553
           Summary: iavf_fdir/negative_case: run command with invalid port
                    'flow flush 2', it can't print error info or warning
                    info.
           Product: DPDK
           Version: 20.11
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: testpmd
          Assignee: dev@dpdk.org
          Reporter: weix.xie@intel.com
  Target Milestone: ---

Environment:
=E2=80=A2DPDK version: 20.11.0-rc0  commit 0e995cbcfc81e1d86d92dfb871ebe14e=
e5b8d9e4
=E2=80=A2OS: Ubuntu 20.04.1 LTS / 5.4.0-45-generic
=E2=80=A2Compiler: gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0
=E2=80=A2Hardware platform: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
=E2=80=A2NIC hardware: Intel Corporation Ethernet Controller E810-C for QSFP
[8086:1592]
=E2=80=A2NIC firmware: 2.10 0x8000433e 1.2789.0
=E2=80=A2ICE driver: 1.1.4
=E2=80=A2PKG: ice_comms-1.3.20.0.pkg


Steps to reproduce:
1. Generate 2 VFs from PF.
# echo 2 > /sys/bus/pci/devices/0000\:81\:00.0/sriov_numvfs
2. Bind 2 VFs to vfio-pci.
# dpdk-devbind.py -b vfio-pci 0000:81:01.0 0000:81:01.1
3.Launch testpmd.
# x86_64-native-linuxapp-gcc/app/dpdk-testpmd  -l 32,33,34,35 -n 4 -w
0000:81:01.0 -w 0000:81:01.1 -- -i --rxq=3D16 --txq=3D16
testpmd> start
testpmd> flow destroy 2 rule 0
testpmd> flow flush 2


Actual Result:
testpmd> flow destroy 2 rule 0
Invalid port 2
testpmd> flow flush 2
testpmd>
Print info is empty.


Expected Result:
testpmd> flow destroy 2 rule 0
Invalid port 2
testpmd> flow flush 2
port_flow_complain(): Caught PMD error type 1 (cause unspecified): No such
device: No such device


Regression:
Is this issue a regression: Y
First bad commit:
commit 2a449871a12dacef6a644254e42175e09a316617 (HEAD)
Author: Thomas Monjalon <thomas@monjalon.net>
Date: Tue Sep 29 01:14:34 2020 +0200

app/testpmd: align behaviour of multi-port detach

A port can be closed in multiple situations:
 - close command calling close_port() -> rte_eth_dev_close()
 - exit calling close_port() -> rte_eth_dev_close()
 - hotplug calling close_port() -> rte_eth_dev_close()
 - hotplug calling detach_device() -> rte_dev_remove()
 - port detach command, detach_device() -> rte_dev_remove()
 - device detach command, detach_devargs() -> rte_eal_hotplug_remove()

The flow rules are flushed before each close.
 It was already done in close_port(), detach_devargs() and
 detach_port_device() which calls detach_device(),
 but not in detach_device(). As a consequence, it was missing for siblings
 of port detach command and unplugged device.
 The check before calling port_flow_flush() is moved inside the function.

The state of the port to close is checked to be stopped.
 As above, this check was missing in detach_device(),
 impacting the cases of a multi-port device unplugged or detached
 with the port detach command.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
 Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
 Acked-by: Stephen Hemminger <stephen@networkplumber.org>

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