DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped
@ 2021-01-14  7:15 bugzilla
  2021-01-14  8:38 ` Ferruh Yigit
  2021-02-01  2:04 ` [dpdk-dev] [Bug 613] [dpdk-21.02] " bugzilla
  0 siblings, 2 replies; 4+ messages in thread
From: bugzilla @ 2021-01-14  7:15 UTC (permalink / raw)
  To: dev

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

            Bug ID: 613
           Summary: [21.02] rule lost after port stopped
           Product: DPDK
           Version: unspecified
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: testpmd
          Assignee: dev@dpdk.org
          Reporter: qinx.sun@intel.com
  Target Milestone: ---

create a rule in testpmd, stop port and then flow list port find that rule
lost. 

Environment

DPDK version: Use make showversion or for a non-released version: git remote -v
&& git show-ref --heads
21.02.0-rc0:0144eeafd1467937a379a7dc005bcb0579b0ae5e
Other software versions: name/version for QEMU, OVS, etc. Repeat as required.
OS: CentOS8.3 
Compiler: gcc version 8.3.1 20191121 (Red Hat 8.3.1-5)
Hardware platform: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
NIC hardware: Ethernet Controller E810-C for SFP 1593
NIC firmware: 2.30 0x80004dcf 1.2839.0
NIC driver: 1.3.0_dirty
Pkg: ice-comms_1.3.24.0

[reproduce steps]
1. bind to vfio-pci and create 2 vfs
usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:03:00.0
echo 2 > /sys/bus/pci/devices/0000:03:00.0/sriov_numvfs

2. start testpmd
x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1,2,3,4 -n 4 -a
0000:03:01.0,cap=dcf -a 0000:03:01.1  --file-prefix=dpdk_1965_20210114114229  
-- -i

3. create a rule
testpmd> flow create 0 ingress pattern eth dst is 68:05:ca:8d:ed:a8 / ipv4 src
is 192.168.0.1 dst is 192.168.0.2 tos is 4 ttl is 3 / udp src is 25 dst is 23 /
end actions vf id 1 / end
Flow rule #1 created

4. list rule
testpmd> flow list 0
ID      Group   Prio    Attr    Rule
0       0       0       i--     ETH IPV4 UDP => VF

5.stop port 0 
testpmd> port stop 0
Stopping ports...
Checking link statuses...
Done

6.list rule
testpmd> flow list 0
testpmd>

Actual Result: rule lost after port stopped

Expected Result: The result of rule list is the same as step 4.

Regression
Is this issue a regression: (Y)

Version the regression was introduced: Specify git id if known.

commit 0f93edbf7c874480e21e365f527fecdb305984b9
Author: Gregory Etelson <getelson@nvidia.com>
Date: Thu Nov 26 18:43:02 2020 +0200

app/testpmd: release flows left before port stop

According to RTE flow user guide, PMD will not keep flow rules after
port stop. Application resources that refer to flow rules become
obsolete after port stop and must not be used.
Testpmd maintains linked list of active flows for each port. Entries in
that list are allocated dynamically and must be explicitly released to
prevent memory leak.
The patch releases testpmd port flow_list that holds remaining flows
before port is stopped.

Cc: stable@dpdk.org

Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped
  2021-01-14  7:15 [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped bugzilla
@ 2021-01-14  8:38 ` Ferruh Yigit
  2021-01-14 13:27   ` Asaf Penso
  2021-02-01  2:04 ` [dpdk-dev] [Bug 613] [dpdk-21.02] " bugzilla
  1 sibling, 1 reply; 4+ messages in thread
From: Ferruh Yigit @ 2021-01-14  8:38 UTC (permalink / raw)
  To: Gregory Etelson, Ori Kam; +Cc: bugzilla, dev, Ajit Khaparde

On 1/14/2021 7:15 AM, bugzilla@dpdk.org wrote:
> https://bugs.dpdk.org/show_bug.cgi?id=613
> 
>              Bug ID: 613
>             Summary: [21.02] rule lost after port stopped
>             Product: DPDK
>             Version: unspecified
>            Hardware: x86
>                  OS: Linux
>              Status: UNCONFIRMED
>            Severity: normal
>            Priority: Normal
>           Component: testpmd
>            Assignee: dev@dpdk.org
>            Reporter: qinx.sun@intel.com
>    Target Milestone: ---
> 
> create a rule in testpmd, stop port and then flow list port find that rule
> lost.
> 
> Environment
> 
> DPDK version: Use make showversion or for a non-released version: git remote -v
> && git show-ref --heads
> 21.02.0-rc0:0144eeafd1467937a379a7dc005bcb0579b0ae5e
> Other software versions: name/version for QEMU, OVS, etc. Repeat as required.
> OS: CentOS8.3
> Compiler: gcc version 8.3.1 20191121 (Red Hat 8.3.1-5)
> Hardware platform: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz
> NIC hardware: Ethernet Controller E810-C for SFP 1593
> NIC firmware: 2.30 0x80004dcf 1.2839.0
> NIC driver: 1.3.0_dirty
> Pkg: ice-comms_1.3.24.0
> 
> [reproduce steps]
> 1. bind to vfio-pci and create 2 vfs
> usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:03:00.0
> echo 2 > /sys/bus/pci/devices/0000:03:00.0/sriov_numvfs
> 
> 2. start testpmd
> x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1,2,3,4 -n 4 -a
> 0000:03:01.0,cap=dcf -a 0000:03:01.1  --file-prefix=dpdk_1965_20210114114229
> -- -i
> 
> 3. create a rule
> testpmd> flow create 0 ingress pattern eth dst is 68:05:ca:8d:ed:a8 / ipv4 src
> is 192.168.0.1 dst is 192.168.0.2 tos is 4 ttl is 3 / udp src is 25 dst is 23 /
> end actions vf id 1 / end
> Flow rule #1 created
> 
> 4. list rule
> testpmd> flow list 0
> ID      Group   Prio    Attr    Rule
> 0       0       0       i--     ETH IPV4 UDP => VF
> 
> 5.stop port 0
> testpmd> port stop 0
> Stopping ports...
> Checking link statuses...
> Done
> 
> 6.list rule
> testpmd> flow list 0
> testpmd>
> 
> Actual Result: rule lost after port stopped
> 
> Expected Result: The result of rule list is the same as step 4.
> 
> Regression
> Is this issue a regression: (Y)
> 
> Version the regression was introduced: Specify git id if known.
> 
> commit 0f93edbf7c874480e21e365f527fecdb305984b9
> Author: Gregory Etelson <getelson@nvidia.com>
> Date: Thu Nov 26 18:43:02 2020 +0200
> 
> app/testpmd: release flows left before port stop
> 
> According to RTE flow user guide, PMD will not keep flow rules after
> port stop. Application resources that refer to flow rules become
> obsolete after port stop and must not be used.
> Testpmd maintains linked list of active flows for each port. Entries in
> that list are allocated dynamically and must be explicitly released to
> prevent memory leak.
> The patch releases testpmd port flow_list that holds remaining flows
> before port is stopped.
> 
> Cc: stable@dpdk.org
> 
> Signed-off-by: Gregory Etelson <getelson@nvidia.com>
> Acked-by: Ori Kam <orika@nvidia.com>
> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
> 

cc'ed Gregory & Ori.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped
  2021-01-14  8:38 ` Ferruh Yigit
@ 2021-01-14 13:27   ` Asaf Penso
  0 siblings, 0 replies; 4+ messages in thread
From: Asaf Penso @ 2021-01-14 13:27 UTC (permalink / raw)
  To: Ferruh Yigit, Gregory Etelson, Ori Kam, qinx.sun
  Cc: bugzilla, dev, Ajit Khaparde

>-----Original Message-----
>From: dev <dev-bounces@dpdk.org> On Behalf Of Ferruh Yigit
>Sent: Thursday, January 14, 2021 10:38 AM
>To: Gregory Etelson <getelson@nvidia.com>; Ori Kam <orika@nvidia.com>
>Cc: bugzilla@dpdk.org; dev@dpdk.org; Ajit Khaparde
><ajit.khaparde@broadcom.com>
>Subject: Re: [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped
>
>On 1/14/2021 7:15 AM, bugzilla@dpdk.org wrote:
>>
>https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs
>>
>.dpdk.org%2Fshow_bug.cgi%3Fid%3D613&amp;data=04%7C01%7Casafp%40n
>vidia.
>>
>com%7Cfa63af2a7ee048e0ff8c08d8b867c219%7C43083d15727340c1b7db39efd
>9ccc
>>
>17a%7C0%7C0%7C637462103068292531%7CUnknown%7CTWFpbGZsb3d8eyJ
>WIjoiMC4wL
>>
>jAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;
>sdata
>>
>=PMbgS6CGe6etyFwI%2F7wjnNC9Fptp4%2BuMCprcJx9I3Gg%3D&amp;reserv
>ed=0
>>
>>              Bug ID: 613
>>             Summary: [21.02] rule lost after port stopped
>>             Product: DPDK
>>             Version: unspecified
>>            Hardware: x86
>>                  OS: Linux
>>              Status: UNCONFIRMED
>>            Severity: normal
>>            Priority: Normal
>>           Component: testpmd
>>            Assignee: dev@dpdk.org
>>            Reporter: qinx.sun@intel.com
>>    Target Milestone: ---
>>
>> create a rule in testpmd, stop port and then flow list port find that
>> rule lost.
>>
>> Environment
>>
>> DPDK version: Use make showversion or for a non-released version: git
>> remote -v && git show-ref --heads
>> 21.02.0-rc0:0144eeafd1467937a379a7dc005bcb0579b0ae5e
>> Other software versions: name/version for QEMU, OVS, etc. Repeat as
>required.
>> OS: CentOS8.3
>> Compiler: gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) Hardware
>> platform: Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz NIC hardware:
>> Ethernet Controller E810-C for SFP 1593 NIC firmware: 2.30 0x80004dcf
>> 1.2839.0 NIC driver: 1.3.0_dirty
>> Pkg: ice-comms_1.3.24.0
>>
>> [reproduce steps]
>> 1. bind to vfio-pci and create 2 vfs
>> usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:03:00.0 echo 2
>> > /sys/bus/pci/devices/0000:03:00.0/sriov_numvfs
>>
>> 2. start testpmd
>> x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1,2,3,4 -n 4 -a
>> 0000:03:01.0,cap=dcf -a 0000:03:01.1
>> --file-prefix=dpdk_1965_20210114114229
>> -- -i
>>
>> 3. create a rule
>> testpmd> flow create 0 ingress pattern eth dst is 68:05:ca:8d:ed:a8 /
>> testpmd> ipv4 src
>> is 192.168.0.1 dst is 192.168.0.2 tos is 4 ttl is 3 / udp src is 25
>> dst is 23 / end actions vf id 1 / end Flow rule #1 created
>>
>> 4. list rule
>> testpmd> flow list 0
>> ID      Group   Prio    Attr    Rule
>> 0       0       0       i--     ETH IPV4 UDP => VF
>>
>> 5.stop port 0
>> testpmd> port stop 0
>> Stopping ports...
>> Checking link statuses...
>> Done
>>
>> 6.list rule
>> testpmd> flow list 0
>> testpmd>
>>
>> Actual Result: rule lost after port stopped
>>
>> Expected Result: The result of rule list is the same as step 4.
>>
>> Regression
>> Is this issue a regression: (Y)
>>
>> Version the regression was introduced: Specify git id if known.
>>
>> commit 0f93edbf7c874480e21e365f527fecdb305984b9
>> Author: Gregory Etelson <getelson@nvidia.com>
>> Date: Thu Nov 26 18:43:02 2020 +0200
>>
>> app/testpmd: release flows left before port stop
>>
>> According to RTE flow user guide, PMD will not keep flow rules after
>> port stop. Application resources that refer to flow rules become
>> obsolete after port stop and must not be used.
>> Testpmd maintains linked list of active flows for each port. Entries
>> in that list are allocated dynamically and must be explicitly released
>> to prevent memory leak.
>> The patch releases testpmd port flow_list that holds remaining flows
>> before port is stopped.
>>
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Gregory Etelson <getelson@nvidia.com>
>> Acked-by: Ori Kam <orika@nvidia.com>
>> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
>>
>
>cc'ed Gregory & Ori.

This is now the expected behavior and the motivation is written in the commit message by Gregory.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [dpdk-dev] [Bug 613] [dpdk-21.02] rule lost after port stopped
  2021-01-14  7:15 [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped bugzilla
  2021-01-14  8:38 ` Ferruh Yigit
@ 2021-02-01  2:04 ` bugzilla
  1 sibling, 0 replies; 4+ messages in thread
From: bugzilla @ 2021-02-01  2:04 UTC (permalink / raw)
  To: dev

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

Zhang, RobinX (robinx.zhang@intel.com) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |WONTFIX
                 CC|                            |robinx.zhang@intel.com
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #2 from Zhang, RobinX (robinx.zhang@intel.com) ---
Expected behavior, set to RESOLVED WONTFIX

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-02-01  2:04 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-14  7:15 [dpdk-dev] [Bug 613] [21.02] rule lost after port stopped bugzilla
2021-01-14  8:38 ` Ferruh Yigit
2021-01-14 13:27   ` Asaf Penso
2021-02-01  2:04 ` [dpdk-dev] [Bug 613] [dpdk-21.02] " bugzilla

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).