Hi all,

I'm using ovs-dpdk in version 2.17.1

Now I found a bug that "Can't add megaflow again after run ovs-appctl
dpctl/del-flows".

Detail is:
```
### 1. run command

ovs-appctl dpctl/del-flows

### 2. check ovs-vswitchd.log

2023-12-26T07:04:01.523Z|37317|dpif_netdev(pmd-c11/id:22)|DBG|ovs-netdev:
miss upcall:
skb_priority(0),skb_mark(0),ct_state(0x62),ct_zone(0x16),ct_mark(0),ct_label(0),ct_tuple4(src=10.244.0.5,dst=10.244.0.4,proto=1,tp_src=8,tp_dst=0),recirc_id(0x67),dp_hash(0),in_port(9),packet_type(ns=0,id=0),eth(src=0a:58:0a:f4:00:05,dst=0a:58:0a:f4:00:04),eth_type(0x0800),ipv4(src=10.244.0.5,dst=10.244.0.4,proto=1,tos=0,ttl=64,frag=no),icmp(type=8,code=0)
icmp,vlan_tci=0x0000,dl_src=0a:58:0a:f4:00:05,dl_dst=0a:58:0a:f4:00:04,nw_src=10.244.0.5,nw_dst=10.244.0.4,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
icmp_csum:ce1f
2023-12-26T07:04:01.523Z|37318|flow(pmd-c11/id:22)|DBG|Flow is not TCP/UDP.
2023-12-26T07:04:01.523Z|37319|flow(pmd-c11/id:22)|DBG|Flow can't be
offloaded due to missing mandatory fields required by hardware.
# then log is loop again, which is "DBG|ovs-netdev: miss upcall:"

### 3. compare with normal log is

2023-12-26T07:51:09.920Z|00250|dpif_netdev(pmd-c11/id:22)|DBG|ovs-netdev:
miss upcall:
skb_priority(0),skb_mark(0),ct_state(0x21),ct_zone(0xfa00),ct_mark(0),ct_label(0),ct_tuple4(src=122.199.77.62,dst=122.199.77.157,proto=6,tp_src=41562,tp_dst=10250),recirc_id(0x1),dp_hash(0),in_port(3),packet_type(ns=0,id=0),eth(src=f4:84:8d:8a:08:e9,dst=00:0a:35:0e:55:6b),eth_type(0x0800),ipv4(src=122.199.77.62,dst=122.199.77.157,proto=6,tos=0,ttl=64,frag=no),tcp(src=41562,dst=10250),tcp_flags(syn)
tcp,vlan_tci=0x0000,dl_src=f4:84:8d:8a:08:e9,dl_dst=00:0a:35:0e:55:6b,nw_src=122.199.77.62,nw_dst=122.199.77.157,nw_tos=0,nw_ecn=0,nw_ttl=64,tp_src=41562,tp_dst=10250,tcp_flags=syn
tcp_csum:82d9
2023-12-26T07:51:09.920Z|00251|flow(pmd-c11/id:22)|DBG|Flow can't be
offloaded due to extra field beyond the capability of hardware.
2023-12-26T07:51:09.920Z|00253|dpif_netdev(pmd-c11/id:22)|DBG|flow_add:
ysk2_flag:0 ufid:8fdd240f-df01-45c4-8e46-c2aa1dba1fd5
mega_ufid:58c1ff52-d061-4c72-ab9b-f9ebf761d9ec
ct_state(-est-rel+trk),ct_mark(0),recirc_id(0x1),in_port(3),packet_type(ns=0,id=0),eth(src=f4:84:8d:8a:08:e9,dst=00:0a:35:0e:55:6b),eth_type(0x0800),ipv4(src=122.199.77.62,dst=122.199.77.157,proto=6,frag=no),tcp(src=41562,dst=10250),
actions:2
2023-12-26T07:51:09.920Z|00254|dpif_netdev(pmd-c11/id:22)|DBG|flow match:
recirc_id=0x1,ct_state=-est-rel+trk,ct_mark=0,eth,tcp,vlan_tci=0x0000/0x1fff,dl_src=f4:84:8d:8a:08:e9,dl_dst=00:0a:35:0e:55:6b,nw_src=122.199.77.62,nw_dst=122.199.77.157,nw_frag=no,tp_src=41562,tp_dst=10250
```

I found the cause is:
```
if (upcall.ukey && !ukey_install(udpif, upcall.ukey)) {
failed
```

and the log is :
```
WARN|upcall_cb failure: ukey installation fails
```

My question is:
1. Is this a fixed bug? If it is, which commit?
2. Is this a bug shoulf fix?

Thanks~

----
Simon Jones
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to