Re: [ovs-dev] [PATCH v2 2/2] conntrack: Key connections by zone.

2024-05-12 Thread Peng He
To seperate into N cmaps, why not use hash value divided by N? Simon Horman 于2024年5月1日周三 19:06写道: > On Wed, Apr 24, 2024 at 02:44:54PM +0200, Felix Huettner via dev wrote: > > Currently conntrack uses a single large cmap for all connections stored. > > This cmap contains all connections for all

Re: [ovs-dev] [PATCH] dpif-netdev: Fix length calculation of netdet_flow_key.

2023-08-16 Thread Peng He
Hi, Eelco, No hurry, take your time! Eelco Chaudron 于2023年8月16日周三 16:43写道: > > > On 16 Aug 2023, at 4:00, Peng He wrote: > > > Hi, Eelco, > > > > could you take a look at this patch? > > Hi Peng, yes it’s on my TODO list, but it might be a while as I’m

Re: [ovs-dev] [PATCH] dpif-netdev: Fix length calculation of netdet_flow_key.

2023-08-15 Thread Peng He
Hi, Eelco, could you take a look at this patch? Zhiqi Chen via dev 于2023年8月13日周日 17:09写道: > The 'len' of a netdev_flow_key initialized by netdev_flow_key_init() > is always zero, which may cause errors when cloning a netdev_flow_key > by netdev_flow_key_clone(). > > Currently the 'len' member

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-08-15 Thread Peng He
Thanks Eelco Chaudron 于2023年8月16日 周三00:02写道: > > > On 15 Aug 2023, at 13:18, Eelco Chaudron wrote: > > > On 15 Aug 2023, at 11:06, Peng He wrote: > > > >> Do I need to send a new version to fix the indentation? > > > > Nope, I’ll fix it when committi

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-08-15 Thread Peng He
Ok, thanks. Eelco Chaudron 于2023年8月15日周二 19:19写道: > > > On 15 Aug 2023, at 11:06, Peng He wrote: > > > Do I need to send a new version to fix the indentation? > > Nope, I’ll fix it when committing the patch. Will be later this week, as I > need to catch up on

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-08-15 Thread Peng He
Do I need to send a new version to fix the indentation? Eelco Chaudron 于2023年8月15日周二 15:40写道: > > > On 27 Jul 2023, at 12:53, Ilya Maximets wrote: > > > On 7/27/23 04:16, Peng He wrote: > >> > >> > >> Simon Horman simon.hor...@corigine.com>>

Re: [ovs-dev] [ovs-dev v5] dpif-netdev: fix dpif_netdev_flow_put

2023-08-14 Thread Peng He
Thanks! Ilya Maximets 于2023年8月15日 周二02:02写道: > On 8/14/23 04:37, Peng He wrote: > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_lookup instead of uf

[ovs-dev] [ovs-dev v5] dpif-netdev: fix dpif_netdev_flow_put

2023-08-13 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Fixes: beb75a40fdc2 ("userspace: Switching of L3 packets in L2 pipeline") Signed-off-by: Peng He --- lib/dpif-net

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-08-12 Thread Peng He
Ilya Maximets 于2023年8月12日周六 02:18写道: > On 8/11/23 19:37, Ilya Maximets wrote: > > On 8/9/23 05:02, Peng He wrote: > >> OVS allows overlapping megaflows, as long as the actions of these > >> megaflows are equal. However, the current implementation of action > >>

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-08-09 Thread Peng He
again, I forget the fixes tag ... 0-day Robot 于2023年8月9日周三 11:19写道: > Bleep bloop. Greetings Peng He, I am a robot and I have tried out your > patch. > Thanks for your contribution. > > I encountered some error that I wasn't expecting. See the details below. > > > che

[ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-08-08 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 45 ++--- tests/pmd.at | 47

Re: [ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-08-08 Thread Peng He
Ilya Maximets 于2023年8月8日周二 07:30写道: > On 7/31/23 06:55, Peng He wrote: > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_lookup instead of uf

Re: [ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-08-06 Thread Peng He
Hi, Ilya, are there any more comments beside the Fixes tag? Peng He 于2023年7月31日周一 20:53写道: > just found that I miss the Fixes tag, will add it in the next post. > > Peng He 于2023年7月31日周一 14:44写道: > >> OVS allows overlapping megaflows, as long as the actions of these >

Re: [ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-07-31 Thread Peng He
just found that I miss the Fixes tag, will add it in the next post. Peng He 于2023年7月31日周一 14:44写道: > OVS allows overlapping megaflows, as long as the actions of these > megaflows are equal. However, the current implementation of action > modification relies on flow_lookup instea

[ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-07-31 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 49 --- tests/pmd.at | 48

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-07-29 Thread Peng He
Ilya Maximets 于2023年7月28日周五 20:25写道: > On 7/28/23 11:02, Peng He wrote: > > > > > > Ilya Maximets mailto:i.maxim...@ovn.org>> > 于2023年7月28日周五 00:59写道: > > > > On 7/27/23 04:31, Peng He wrote: > > > > > > > >

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-07-28 Thread Peng He
Ilya Maximets 于2023年7月28日周五 00:59写道: > On 7/27/23 04:31, Peng He wrote: > > > > > > Eelco Chaudron mailto:echau...@redhat.com>> > 于2023年7月6日周四 15:52写道: > > > > > > > > On 6 Jul 2023, at 4:32, Peng He wrote: > > > > &g

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-07-26 Thread Peng He
Eelco Chaudron 于2023年7月6日周四 15:52写道: > > > On 6 Jul 2023, at 4:32, Peng He wrote: > > > Eelco Chaudron 于2023年7月5日周三 22:16写道: > > > >> > >> > >> On 1 Jul 2023, at 4:43, Peng He wrote: > >> > >>> OVS allows overlapping megaf

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-07-26 Thread Peng He
Simon Horman 于2023年7月27日周四 01:04写道: > On Thu, Jul 06, 2023 at 04:59:36PM +0800, Peng He wrote: > > ... > > > >>>> +dnl Replace OpenFlow rules, trigger revalidation and wait for it to > > >>> complete. > > >>>> +AT_CHECK

Re: [ovs-dev] The file-column-diff might lead to break db file

2023-07-21 Thread Peng He
Hi, Ilya, After applying the patch, the test suite has passed. Looking forward to your complete fix. Ilya Maximets 于2023年7月21日周五 21:09写道: > On 7/21/23 14:44, Peng He wrote: > > Hi, Ilya, > > > > Suppose you have a column which is a set with limited integers (sup

[ovs-dev] The file-column-diff might lead to break db file

2023-07-21 Thread Peng He
Hi, Ilya, Suppose you have a column which is a set with limited integers (suppose min: 0, max: 2), the following operation will generate a record in db file with 3 integers: first, set column A to [0], then, set column A to [1,2], after that the column A is recorded as [0,1,2], as [0] diff

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-07-06 Thread Peng He
> 2023年7月6日 15:47,Eelco Chaudron 写道: > > > > On 6 Jul 2023, at 4:33, Peng He wrote: > >> Eelco Chaudron 于2023年7月5日周三 21:24写道: >> >>> >>> >>> On 1 Jul 2023, at 7:11, Peng He wrote: >>> >>>> push_dp_ops only

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-07-06 Thread Peng He
Eelco Chaudron 于2023年7月6日周四 15:52写道: > > > On 6 Jul 2023, at 4:32, Peng He wrote: > > > Eelco Chaudron 于2023年7月5日周三 22:16写道: > > > >> > >> > >> On 1 Jul 2023, at 4:43, Peng He wrote: > >> > >>> OVS allows overlapping megaf

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-07-05 Thread Peng He
Eelco Chaudron 于2023年7月5日周三 21:24写道: > > > On 1 Jul 2023, at 7:11, Peng He wrote: > > > push_dp_ops only handles delete ops errors but ignores the modify > > ops results. It's better to handle all the dp operation errors in > > a consistent way. > > >

Re: [ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-07-05 Thread Peng He
Eelco Chaudron 于2023年7月5日周三 22:16写道: > > > On 1 Jul 2023, at 4:43, Peng He wrote: > > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_look

[ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-07-01 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. v10->v11: fix indentation and refine the test case. v11->v12: fix the test suite. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 50 +-- tests/dp

[ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-06-30 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. v10->v11: fix indentation and refine the test case. v11->v12: fix the test suite. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 50 +-- tests/dp

[ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-06-30 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. v10->v11: fix indentation and refine the test case. v11->v12: fix the test suite. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 50 +-- tests/dp

Re: [ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-06-30 Thread Peng He
I miss one command in the test suite. will resend. Peng He 于2023年7月1日周六 12:50写道: > push_dp_ops only handles delete ops errors but ignores the modify > ops results. It's better to handle all the dp operation errors in > a consistent way. > > This patch prevents the inconsistency

[ovs-dev] [ovs-dev v12] ofproto-dpif-upcall: fix push_dp_ops

2023-06-30 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. v10->v11: fix indentation and refine the test case. v11->v12: fix the test suite. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 50 +-- tests/dp

[ovs-dev] [ovs-dev v4] dpif-netdev: fix dpif_netdev_flow_put

2023-06-30 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 62 ++- tests/pmd.at | 48 2

Re: [ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-06-30 Thread Peng He
Eelco Chaudron 于2023年6月23日周五 22:31写道: > > > On 15 Jun 2023, at 4:51, Peng He wrote: > > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_look

Re: [ovs-dev] [ovs-dev v11] ofproto-dpif-upcall: fix push_dp_ops

2023-06-30 Thread Peng He
Ilya Maximets 于2023年6月23日周五 20:40写道: > On 6/23/23 14:20, Eelco Chaudron wrote: > > > > > > On 9 Jun 2023, at 17:03, Peng He wrote: > > > >> push_dp_ops only handles delete ops errors but ignores the modify > >> ops results. It's better to handle all

Re: [ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-06-26 Thread Peng He
Ilya Maximets 于2023年6月24日周六 04:26写道: > On 6/15/23 04:51, Peng He wrote: > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_lookup instead of uf

[ovs-dev] [ovs-dev v3] dpif-netdev: fix dpif_netdev_flow_put

2023-06-14 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 62 ++- tests/pmd.at | 48 2

Re: [ovs-dev] [ovs-dev v2] dpif-netdev: fix dpif_netdev_flow_put

2023-06-14 Thread Peng He
Simon Horman 于2023年6月14日周三 20:37写道: > On Tue, Jun 13, 2023 at 09:41:42AM +0800, Peng He wrote: > > Hi, Simon, > > > > I guess it's not related, as my patch fixes the code in dpif-netdev.c it > > should has any impact on the ovsdb side. > > But I am not sure th

Re: [ovs-dev] [ovs-dev v2] dpif-netdev: fix dpif_netdev_flow_put

2023-06-12 Thread Peng He
000, Peng He wrote: > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action > > modification relies on flow_lookup instead of ufid, this could result > > in looking up a wrong megaflow and m

[ovs-dev] [ovs-dev v2] dpif-netdev: fix dpif_netdev_flow_put

2023-06-11 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 62 ++- tests/pmd.at | 46 +++ 2

[ovs-dev] [ovs-dev v11] ofproto-dpif-upcall: fix push_dp_ops

2023-06-09 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. v10->v11: fix indentation and refine the test case. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 51 +-- tests/dpif-netdev.at

Re: [ovs-dev] [ovs-dev v10] ofproto-dpif-upcall: fix push_dp_ops

2023-06-09 Thread Peng He
Thanks for the reviews! Eelco Chaudron 于2023年6月9日周五 20:47写道: > > > On 3 Jun 2023, at 2:01, Peng He wrote: > > > push_dp_ops only handles delete ops errors but ignores the modify > > ops results. It's better to handle all the dp operation errors in > > a cons

Re: [ovs-dev] [PATCH] ofproto-dpif-xlate: do not unwildcard source address if not needed

2023-06-08 Thread Peng He
Ok, no problem Simon Horman 于2023年6月8日 周四22:51写道: > On Thu, Jun 08, 2023 at 10:32:45PM +0800, Peng He wrote: > > This patch has a bug, it needs 2 patches to realize the purpose in fact. > I > > can rebase if needed > > I am unclear on any need. > Perhaps it'

Re: [ovs-dev] dpif-netdev: fix dpif_netdev_flow_put

2023-06-08 Thread Peng He
Thanks for the review, will send a v2 Eelco Chaudron 于2023年6月8日 周四21:48写道: > > > On 2 Jun 2023, at 20:42, Peng He wrote: > > > OVS allows overlapping megaflows, as long as the actions of these > > megaflows are equal. However, the current implementation of action

Re: [ovs-dev] [ovs-dev v2] dpif-netdev: change execute->flow->in_port into odp_port

2023-06-08 Thread Peng He
If ipf ctx is needed this one is needed too, if not, you can drop the patch Simon Horman 于2023年6月8日 周四22:16写道: > On Thu, Mar 10, 2022 at 04:41:15AM +0000, Peng He wrote: > > the flow->in_port value is previously ignored. We normally use > > the the md->in_port of the firs

Re: [ovs-dev] [PATCH] ofproto-dpif-xlate: do not unwildcard source address if not needed

2023-06-08 Thread Peng He
This patch has a bug, it needs 2 patches to realize the purpose in fact. I can rebase if needed Simon Horman 于2023年6月8日 周四22:19写道: > On Sun, May 17, 2020 at 01:08:47PM +0800, hepeng.0320 wrote: > > From: hepeng > > > > if the tunnel is specified as "remote_ip=flow", we can try to generate a >

[ovs-dev] [ovs-dev v10] ofproto-dpif-upcall: fix push_dp_ops

2023-06-04 Thread Peng He
ENT ukey at revalidate_sweep. v9->v10: change the commit message and refine the test case. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 48 -- tests/dpif-netdev.at | 49 +++ 2 files changed, 84 insertions(

Re: [ovs-dev] [ovs-dev v9] ofproto-dpif-upcall: fix push_dp_ops

2023-06-04 Thread Peng He
Recently I have identified the real root cause for this inconsistency between ukey and megaflow actions. I thus decided to withdraw this version and change its commits. Will send a v10. Please do not review this version. 0-day Robot 于2023年6月2日周五 23:19写道: > Bleep bloop. Greetings Peng He, I

[ovs-dev] dpif-netdev: fix dpif_netdev_flow_put

2023-06-03 Thread Peng He
! This patch changes the megaflow lookup code in modification path into relying the ufid to find the correct megaflow instead of key lookup. Signed-off-by: Peng He --- lib/dpif-netdev.c | 64 ++- tests/pmd.at | 55

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2023-06-02 Thread Peng He
Hi, Eelco and Ilya, I have sent a new version of this patch with a test case. Eelco Chaudron 于2023年5月15日周一 15:45写道: > > > On 12 May 2023, at 3:57, Peng He wrote: > > > Hi, > > > > > > Eelco Chaudron 于2023年5月11日周四 15:04写道: > > > >> > >&g

[ovs-dev] [ovs-dev v9] ofproto-dpif-upcall: fix push_dp_ops

2023-06-02 Thread Peng He
key at revalidate_sweep. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 48 -- tests/dpif-netdev.at | 49 +++ 2 files changed, 84 insertions(+), 13 deletions(-) diff --git a/ofproto/ofproto-dpif-upcall.c b/ofproto/ofproto-d

Re: [ovs-dev] [PATCH v3] dpif-netdev: Use unmasked key when adding datapath flows.

2023-05-31 Thread Peng He
Hi, Eelco, Did this patch only fix the dummy-datapath? since in the real world scenario, revalidator will only modify or delete ukey, it will not add a megaflow into the datapath. If we have a wider new key and narrowed old key, the reavlidator will modify the action of the old key, and

Re: [ovs-dev] [PATCH 2/2] conntrack: Release nat_conn in case both keys have the same hash.

2023-05-18 Thread Peng He
Hi, Paolo, IIRC, you have a revision version on these patches? I guess it should be closer to the upstream than mine? Aaron Conole 于2023年5月17日周三 21:54写道: > Paolo Valerio writes: > > > Ilya Maximets writes: > > > >> On 5/4/23 19:21, Paolo Valerio wrote: > >>> Ilya Maximets writes: > >>> >

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2023-05-15 Thread Peng He
I see. will check if I can add something in the dummy datapath I guess. Eelco Chaudron 于2023年5月15日周一 15:45写道: > > > On 12 May 2023, at 3:57, Peng He wrote: > > > Hi, > > > > > > Eelco Chaudron 于2023年5月11日周四 15:04写道: > > > >> > >&g

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2023-05-11 Thread Peng He
Hi, Eelco Chaudron 于2023年5月11日周四 15:04写道: > > > On 4 May 2023, at 9:50, Peng He wrote: > > > Hi, > > > > sorry for the late reply. > > > > Yes, basically this means going back to v5, but with a minor difference. > > > > I

Re: [ovs-dev] [ovs-dev v8 2/2] dpif-netdev: fix the race comments

2023-05-11 Thread Peng He
Great, thanks! Eelco Chaudron 于2023年5月11日周四 15:02写道: > > > On 4 May 2023, at 13:29, Peng He wrote: > > > The following comments (brought in at 0de8783a9): > > > > /* XXX: There's a race window where a flow covering this packet > > * could have already been

Re: [ovs-dev] [ovs-dev v7 3/3] dpif-netdev: fix the race comments

2023-05-04 Thread Peng He
Hi I have sent a new version with your re-write. Eelco Chaudron 于2022年12月8日周四 19:08写道: > > > On 27 Nov 2022, at 8:28, Peng He wrote: > > > The following comments (brought in at 0de8783a9): > > > > /* XXX: There's a race window where a flow covering this packet

[ovs-dev] [ovs-dev v8 2/2] dpif-netdev: fix the race comments

2023-05-04 Thread Peng He
installed by another non-pmd threads, through either manually calling dpctl/add-flow or handler thread installing megaflow with pmd-id == PMD_ID_NULL, there are no other threads which would insert datapath flows. Signed-off-by: Peng He --- lib/dpif-netdev.c | 9 - 1 file changed, 4

[ovs-dev] [ovs-dev v8 1/2] ofproto-dpif-upcall: fix push_dp_ops

2023-05-04 Thread Peng He
into UKEY_EVICTED directly here, because, if we do so, the sweep will remove the ukey alone and leave dp flow alive. Later, the dump will retrieve the dp flow and might even recover it. This will contribute the stats of this dp flow twice. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 45

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2023-05-04 Thread Peng He
Hi, sorry for the late reply. Yes, basically this means going back to v5, but with a minor difference. In the original v5, the INCONSISTENT to EVICTING change is in the revalidate_sweep__ phrase. However,since you have spot that doing so in sweep phrase has a risk: If in sweep phrase, we

Re: [ovs-dev] [PATCH v2 09/10] revalidator: Fix datapath statistics update.

2023-04-27 Thread Peng He
sorry, I was wrong. the old ukey and new ukey are independent. and current code does not copy the stats, which means the stats have already been cleared. Peng He 于2023年4月27日周四 16:56写道: > Hi, Eelco and Ilya > > It has been a long time and I see there are a lot fixes on the > revdali

Re: [ovs-dev] [PATCH v2 09/10] revalidator: Fix datapath statistics update.

2023-04-27 Thread Peng He
ows. if not, when revaldiator tries to delete this ukey, the push_dp_ops will find inconsistent stats between ukey->stats( as it's synced with old megaflow) and new magaflow, which is just the case you describe here. Peng He 于2022年5月21日周六 13:02写道: > Hi, Eelco and Ilya, > > We have obser

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-12-19 Thread Peng He
Eelco Chaudron 于2022年12月16日周五 23:00写道: > > > On 16 Dec 2022, at 8:56, Peng He wrote: > > > From: Peng He > > To: Eelco Chaudron > > Cc: Ilya Maximets , ovs-dev@openvswitch.org > > Subject: Re: [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops >

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-12-15 Thread Peng He
Eelco Chaudron 于2022年12月13日周二 20:36写道: > > > On 10 Dec 2022, at 1:37, Peng He wrote: > > > Patch v5 has statistics issues. > > > > In order to solve this issue, we had a discussion. > > > > below is the quote of the email. > > > > ” > >

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-12-11 Thread Peng He
EVICTING state ukey and initial another dp_ops to remove it. ” so, we choose to not to use INCONSISTENT. Peng He 于2022年12月10日周六 08:37写道: > Patch v5 has statistics issues. > > In order to solve this issue, we had a discussion. > > below is the quote of the email. > > ” > A

Re: [ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-12-09 Thread Peng He
22年12月8日周四 18:54写道: > > > On 27 Nov 2022, at 8:28, Peng He wrote: > > > push_dp_ops only handles delete ops errors but ignores the modify > > ops results. It's better to handle all the dp operation errors in > > a consistent way. > > > > We observe in the production

[ovs-dev] [ovs-dev v7 2/3] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-11-26 Thread Peng He
generated the ukey B should take the dump_seq of the replaced ukey A to avoid a same megaflow being revalidated twice in one dump stage. We observe in the production environment, the OpenFlow rules' stats sometimes are amplified compared to the actual value. Signed-off-by: Peng He Acked-by: Eelco

[ovs-dev] [ovs-dev v7 3/3] dpif-netdev: fix the race comments

2022-11-26 Thread Peng He
installed by another threads, through either manually calling dpctl/add-flow or handler thread installing megaflow with pmd-id == PMD_ID_NULL, there are no other threads which would insert datapath flows. Signed-off-by: Peng He --- lib/dpif-netdev.c | 9 - 1 file changed, 4 insertions

[ovs-dev] [ovs-dev v7 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-26 Thread Peng He
into UKEY_EVICTED directly here, because, if we do so, the sweep will remove the ukey alone and leave dp flow alive. Later, the dump will retrieve the dp flow and might even recover it. This will contribute the stats of this dp flow twice. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 34

[ovs-dev] [ovs-dev v6 2/3] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-11-26 Thread Peng He
generated the ukey B should take the dump_seq of the replaced ukey A to avoid a same megaflow being revalidated twice in one dump stage. We observe in the production environment, the OpenFlow rules' stats sometimes are amplified compared to the actual value. Signed-off-by: Peng He Acked-by: Eelco

[ovs-dev] [ovs-dev v6 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-26 Thread Peng He
into UKEY_EVICTED directly here, because, if we do so, the sweep will remove the ukey alone and leave dp flow alive. Later, the dump will retrieve the dp flow and might even recover it. This will contribute the stats of this dp flow twice. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 33

[ovs-dev] [ovs-dev v6 3/3] dpif-netdev: fix the race comments

2022-11-26 Thread Peng He
installed by another threads, through either manually calling dpctl/add-flow or handler thread installing megaflow with pmd-id == PMD_ID_NULL, there are no other threads which would insert datapath flows. Signed-off-by: Peng He --- lib/dpif-netdev.c | 9 - 1 file changed, 4 insertions

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-11-24 Thread Peng He
Eelco Chaudron 于2022年11月24日周四 17:08写道: > > > On 24 Nov 2022, at 10:04, Peng He wrote: > > > Eelco Chaudron 于2022年11月24日周四 16:34写道: > > > >> > >> > >> On 24 Nov 2022, at 1:46, Peng He wrote: > >> > >>> So do we need this p

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-11-24 Thread Peng He
Eelco Chaudron 于2022年11月24日周四 16:34写道: > > > On 24 Nov 2022, at 1:46, Peng He wrote: > > > So do we need this patch (补丁) or not?? > > > > Guessing it's quite rare in the real production environment that we have > > two datapaths at the same time >

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-11-23 Thread Peng He
at the same time Because only when a port is assigned to 2 datapaths at the same time, we should worry about this race Eelco Chaudron 于2022年11月23日周三 23:54写道: > > > On 19 Nov 2022, at 1:46, Peng He wrote: > > > Eelco Chaudron 于2022年11月18日周五 15:38写道: > > > >>

Re: [ovs-dev] [ovs-dev v5 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-23 Thread Peng He
Eelco Chaudron 于2022年11月24日周四 00:08写道: > > > On 22 Nov 2022, at 2:44, Peng He wrote: > > > Hi, > > > > After a second thought, I think maybe keeping INCONSISTENT just for the > > modify (修改) error is a better option. > > > > With current pa

Re: [ovs-dev] [ovs-dev v5 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-21 Thread Peng He
drop INCONSISTENT state, if modify fails, just changes to EVICTING. and let the revalidate or sweep to take care of EVICTING state ukey and initial another dp_ops to remove it. I now prefer the second solution, what do you think? Peng He 于2022年11月22日周二 09:01写道: > > Eelco Chaudron 于2022年11月18日周五

Re: [ovs-dev] [ovs-dev v5 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-21 Thread Peng He
Eelco Chaudron 于2022年11月18日周五 15:35写道: > > > On 18 Nov 2022, at 2:53, Peng He wrote: > > > Eelco Chaudron 于2022年11月16日周三 18:14写道: > > > >> > >> > >> On 6 Nov 2022, at 8:12, Peng He wrote: > >> > >>> push_dp_ops only h

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-11-18 Thread Peng He
Eelco Chaudron 于2022年11月18日周五 15:38写道: > > > On 18 Nov 2022, at 2:57, Peng He wrote: > > > Since there are possible race conditions (between the kernel (内核) > datapath and > > userspace datapath), > > I guess this patch (补丁) is now needed again? But two datapath

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-11-17 Thread Peng He
gt; On 10 Oct 2022, at 9:12, Eelco Chaudron wrote: > > > On 8 Oct 2022, at 5:27, Peng He wrote: > > > >> Hi,Eelco > >> > >> after a second thought, I think this patch is not needed neither, > >> the code here is trying to find a rule which cover th

Re: [ovs-dev] [ovs-dev v5 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-17 Thread Peng He
Eelco Chaudron 于2022年11月16日周三 18:14写道: > > > On 6 Nov 2022, at 8:12, Peng He wrote: > > > push_dp_ops only handles delete ops errors but ignores (忽略) the modify > (修改) > > ops results. It's better to handle all the dp operation errors in > > a consistent way. >

Re: [ovs-dev] dpif-netdev: fix flow allocation size

2022-11-10 Thread Peng He
Simon Horman 于2022年11月9日周三 02:48写道: > On Fri, Nov 04, 2022 at 06:46:05AM +0000, Peng He wrote: > > The tail of the struct dp_netdev_flow contains a whole netdev_flow_key > > struct. > > > > We need to first minus the size of netdev_flow_key then add back > > the

Re: [ovs-dev] dpif-netdev: fix flow allocation size

2022-11-10 Thread Peng He
Mike Pattrick 于2022年11月9日周三 02:09写道: > On Fri, Nov 4, 2022 at 2:46 AM Peng He wrote: > > > > The tail of the struct dp_netdev_flow contains a whole netdev_flow_key > > struct. > > > > We need to first minus the size of netdev_flow_key then add back > >

[ovs-dev] [ovs-dev v5 2/3] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-11-06 Thread Peng He
generated the ukey B should take the dump_seq of the replaced ukey A to avoid a same megaflow being revalidated twice in one dump stage. We observe in the production environment, the OpenFlow rules' stats sometimes are amplified compared to the actual value. Signed-off-by: Peng He Acked-by: Eelco

[ovs-dev] [ovs-dev v5 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-11-06 Thread Peng He
into UKEY_EVICTED directly here, because, if we do so, the sweep will remove the ukey alone and leave dp flow alive. Later, the dump will retrieve the dp flow and might even recover it. This will contribute the stats of this dp flow twice. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 39

Re: [ovs-dev] dpif-netdev: fix flow allocation size

2022-11-06 Thread Peng He
Hi, I have re-runed the test myself, and it passed. Guess this test is a flaky test. Peng He 于2022年11月4日周五 14:46写道: > The tail of the struct dp_netdev_flow contains a whole netdev_flow_key > struct. > > We need to first minus the size of netdev_flow_key then add back >

Re: [ovs-dev] [ovs-build] |fail| pw1699340 dpif-netdev: fix flow allocation size

2022-11-04 Thread Peng He
I've rerun the test 150 in my VM. it runs successfully. Looks like this is a flaky uint test. Peng He 于2022年11月4日周五 17:05写道: > I've rerun the test 150 in my VM. it runs successfully. > Looks like this is a flaky uint test. > > 于2022年11月4日周五 16:24写道: > >> Test-Label:

[ovs-dev] dpif-netdev: fix flow allocation size

2022-11-04 Thread Peng He
The tail of the struct dp_netdev_flow contains a whole netdev_flow_key struct. We need to first minus the size of netdev_flow_key then add back the real size of this netdev_flow_key. Signed-off-by: Peng He --- lib/dpif-netdev.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff

Re: [ovs-dev] [PATCH v4 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-10-19 Thread Peng He
nlock(>mutex); } } Eelco Chaudron 于2022年10月19日周三 18:44写道: > > > On 3 Oct 2022, at 6:02, Peng He wrote: > > > push_dp_ops only handles delete ops errors but ignores the modify > > ops results. It's better to handle all the dp operation errors in &

Re: [ovs-dev] [PATCH] dpif-netdev: fix the race comments

2022-10-19 Thread Peng He
I'll take a look at that! thanks. Eelco Chaudron 于2022年10月19日周三 18:21写道: > > > On 3 Oct 2022, at 6:02, Peng He wrote: > > > The following comments (brought in at 0de8783a9): > > > > /* XXX: There's a race window where a flow covering this packet > > * could

Re: [ovs-dev] [ovs-dev v3 3/4] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-10-07 Thread Peng He
44073707612670 > ./ovs-macros.at:247: hard failure > > I’ll try to dig into this later once I get some time... > > //Eelco > > On 2 Oct 2022, at 8:40, Peng He wrote: > > Hi, > > I have tried test #50 for 200 times, the overflow as well as stats of 0 > did not show

Re: [ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-10-07 Thread Peng He
. but the comments above are really misleading, so I sent a new patch fixing it. Peng He 于2022年10月3日周一 20:41写道: > When PMDs perform upcalls, the newly generated ukey will replace > the old, however, the newly generated mageflow will be discard > to reuse the old one without checking if th

[ovs-dev] [PATCH v4 3/3] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-10-03 Thread Peng He
actions with the actions of ukey, and causes more confusion. Signed-off-by: Peng He --- lib/dpif-netdev.c | 17 - 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index a45b46014..b316e59ef 100644 --- a/lib/dpif-netdev.c +++ b/lib

[ovs-dev] [PATCH v4 2/3] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-10-03 Thread Peng He
generated the ukey B should take the dump_seq of the replaced ukey A to avoid a same megaflow being revalidated twice in one dump stage. We observe in the production environment, the OpenFlow rules' stats sometimes are amplified compared to the actual value. Signed-off-by: Peng He --- ofproto/ofproto

[ovs-dev] [PATCH v4 1/3] ofproto-dpif-upcall: fix push_dp_ops

2022-10-03 Thread Peng He
, and the actions are not matched with the ones in the actual magaflow. By performing a revalidator/purge command, the right actions are set. This patch prevents the inconsistency by considering modify failure in revalidators. Signed-off-by: Peng He --- ofproto/ofproto-dpif-upcall.c | 37

[ovs-dev] [PATCH] dpif-netdev: fix the race comments

2022-10-03 Thread Peng He
calling dpctl/add-flow, there are no other threads which would insert datapath flows. Signed-off-by: Peng He --- lib/dpif-netdev.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index b316e59ef..680321600 100644 --- a/lib/dpif

Re: [ovs-dev] [ovs-dev v3 3/4] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-10-02 Thread Peng He
stsuite and also the missing of the support of NA/ND in kernel datapath. Eelco Chaudron 于2022年9月30日周五 23:47写道: > On 30 Sep 2022, at 17:41, Peng He wrote: > > > It's so easy to reproduce ? > > > > Thanks! then I should have to dig it again. > > It’s been on

Re: [ovs-dev] [ovs-dev v3 3/4] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-10-01 Thread Peng He
priority=1,actions=drop Eelco Chaudron 于2022年9月30日周五 23:47写道: > On 30 Sep 2022, at 17:41, Peng He wrote: > > > It's so easy to reproduce ? > > > > Thanks! then I should have to dig it again. > > It’s been on my to-do for a while but did not get to it. Sometimes it >

Re: [ovs-dev] [ovs-dev v3 4/4] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-09-30 Thread Peng He
Sure, will do that. Eelco Chaudron 于2022年10月1日 周六00:03写道: > > > On 30 Sep 2022, at 17:55, Peng He wrote: > > > Eelco Chaudron 于2022年9月30日 周五23:50写道: > > > >> > >> > >> On 23 Sep 2022, at 18:29, Peng He wrote: > >> > >&

Re: [ovs-dev] [ovs-dev v3 4/4] dpif-netdev: fix inconsistent processing between ukey and megaflow

2022-09-30 Thread Peng He
Eelco Chaudron 于2022年9月30日 周五23:50写道: > > > On 23 Sep 2022, at 18:29, Peng He wrote: > > > When PMDs perform upcalls, the newly generated ukey will replace > > the old, however, the newly generated mageflow will be discard > > to reuse the old one without

Re: [ovs-dev] [ovs-dev v3 3/4] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-09-30 Thread Peng He
thanks a lot, appreciate it! Eelco Chaudron 于2022年9月30日周五 23:47写道: > On 30 Sep 2022, at 17:41, Peng He wrote: > > > It's so easy to reproduce ? > > > > Thanks! then I should have to dig it again. > > It’s been on my to-do for a while but did not get to it. So

Re: [ovs-dev] [ovs-dev v3 3/4] ofproto-dpif-upcall: new ukey needs to take the old ukey's dump seq

2022-09-30 Thread Peng He
can you show me how to reproduce the case? since it is easy to reproduce, and we need openflow stats for billing case, so it's important to keep it accurate. Thanks! Eelco Chaudron 于2022年9月30日周五 23:39写道: > > > On 30 Sep 2022, at 17:26, Peng He wrote: > > > Eelco Chaudron 于20

  1   2   3   >