Message ID | CAKgLnsH09Zuh8vWB5g4SLrBOqPr1rPu7vJFZmaXUUixU3vtS_Q@mail.gmail.com |
---|---|
State | Not Applicable |
Headers | show |
> > Does the following diff work on your system? > > > diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml > index 7797417..4f1cd89 100644 > --- a/ovn/northd/ovn-northd.8.xml > +++ b/ovn/northd/ovn-northd.8.xml > @@ -421,8 +421,8 @@ > > <ul> > <li> > - Priority-100 flows to skip ARP responder if inport is of type > - <code>localnet</code>, and advances directly to the next table. > + Priority-100 flows to skip ARP responder if inport is not > associated > + with a local VIF, and advances directly to the next table. > </li> > > <li> > diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c > index 8c7e80c..bcb9738 100644 > --- a/ovn/northd/ovn-northd.c > +++ b/ovn/northd/ovn-northd.c > @@ -2428,7 +2428,9 @@ build_lswitch_flows(struct hmap *datapaths, struct > hmap *ports, > continue; > } > > - if (!strcmp(op->nbsp->type, "localnet")) { > + /* Skip installing arp responder if the logical switch inport > + * is not associated with a local VIF. */ > + if (strcmp(op->nbsp->type, "")) { > ds_clear(&match); > ds_put_format(&match, "inport == %s", op->json_key); > ovn_lflow_add(lflows, op->od, S_SWITCH_IN_ARP_ND_RSP, 100, Yes, the above works, The above code skips the arp-responder for all non-vif ports (localnet, vtep, router, l2gateway). Is that ok ? My usecase requires to skip the arp-responder for vtep because, multiple hypervisors could respond to an arp from vtep.
diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml index 7797417..4f1cd89 100644 --- a/ovn/northd/ovn-northd.8.xml +++ b/ovn/northd/ovn-northd.8.xml @@ -421,8 +421,8 @@ <ul> <li> - Priority-100 flows to skip ARP responder if inport is of type - <code>localnet</code>, and advances directly to the next table. + Priority-100 flows to skip ARP responder if inport is not associated + with a local VIF, and advances directly to the next table. </li> <li> diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c index 8c7e80c..bcb9738 100644 --- a/ovn/northd/ovn-northd.c +++ b/ovn/northd/ovn-northd.c @@ -2428,7 +2428,9 @@ build_lswitch_flows(struct hmap *datapaths, struct hmap *ports, continue; } - if (!strcmp(op->nbsp->type, "localnet")) { + /* Skip installing arp responder if the logical switch inport + * is not associated with a local VIF. */ + if (strcmp(op->nbsp->type, "")) { ds_clear(&match); ds_put_format(&match, "inport == %s", op->json_key);