Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-02-22 Thread Vishal Deep Ajmera
Hi Flavio,

I have sent a formal patch to mailing list. Sorry for submitting a little late.

Warm Regards,
Vishal Ajmera

-Original Message-
From: ovs-discuss-boun...@openvswitch.org 
[mailto:ovs-discuss-boun...@openvswitch.org] On Behalf Of Vishal Deep Ajmera
Sent: Saturday, January 20, 2018 10:38 AM
To: Flavio Leitner <f...@sysclose.org>
Cc: ovs-discuss@openvswitch.org
Subject: Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

> It looks good to me. I hope it does work for any number of ports
> and doesn't show any errors.  If that's the case, please submit a
> formal patch to ovs-dev@ and don't forget to request to patch 2.9
> (if you need that) as it's branched off at this point.

Ok Flavio. I will send formal patch to ovs-dev mailing list.
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-19 Thread Vishal Deep Ajmera
> It looks good to me. I hope it does work for any number of ports
> and doesn't show any errors.  If that's the case, please submit a
> formal patch to ovs-dev@ and don't forget to request to patch 2.9
> (if you need that) as it's branched off at this point.

Ok Flavio. I will send formal patch to ovs-dev mailing list.
___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-18 Thread Flavio Leitner
On Thu, Jan 18, 2018 at 08:32:03AM +, Vishal Deep Ajmera wrote:
> > OK, what about this patch instead? It should fix the issue without the
> > errors.  I have not tested.
> 
> I tried your patch but it does not re-add the routes. The reason is doing
> $ ifup br0 will not invoke ifup-post since the bridge port is already UP and 
> so 
> $OVSBRIDGECONFIGURED will be 'true'.

Yes, yes, I forgot that when I looked at the DHCP scenario which will
not work in this case then.
> 
> I think instead of doing 'ifup $OVS_BRIDGE', we should run ${OTHERSCRIPT} 
> $OVS_BRIDGE 
> under the mac check. Tried this and it is working.

It looks good to me. I hope it does work for any number of ports
and doesn't show any errors.  If that's the case, please submit a
formal patch to ovs-dev@ and don't forget to request to patch 2.9
(if you need that) as it's branched off at this point.

Thanks for working on this!
fbl

> 
> Updated patch below.
> 
> + BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
>   ovs-vsctl -t ${TIMEOUT} \
>   -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
>   -- add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS \
>   -- set Interface "$DEVICE" type=dpdk ${OVS_EXTRA+-- 
> $OVS_EXTRA}
> + BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
> + # The bridge will change its MAC to be the lower one among all 
> its
> + # ports. Restore the configuration if that happens.
> + if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
> + ${OTHERSCRIPT} "$OVS_BRIDGE"
> + fi




___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-18 Thread Flavio Leitner
On Thu, Jan 18, 2018 at 10:12:40AM +, Vishal Deep Ajmera wrote:
> > BTW, I suggested earlier but maybe I wasn't clear.
> > 
> > Instead of adding networking configuration to the bridge's port, just
> > leave it alone with a name that doesn't bother you.
> > 
> > Then create an internal port with the name and the networking
> > configuration you need. It won't change its MAC and neither lose
> > the routes. They both will be tap devices anyways.
> 
> Issue with assigning IP and routes to a tap port is that this tap port gets
> a random mac address which cannot be guaranteed to be unique
> across multiple nodes. I think that is the reason why bridge is assigned
> same mac address of a physical port (when port is added to a bridge) since 
> physical ports will have unique mac address.

You could use MACADDR= in ifcfg to have a stable MAC if that's only
issue, but yeah, you would have to manage them.

-- 
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-18 Thread Vishal Deep Ajmera
> BTW, I suggested earlier but maybe I wasn't clear.
> 
> Instead of adding networking configuration to the bridge's port, just
> leave it alone with a name that doesn't bother you.
> 
> Then create an internal port with the name and the networking
> configuration you need. It won't change its MAC and neither lose
> the routes. They both will be tap devices anyways.

Issue with assigning IP and routes to a tap port is that this tap port gets
a random mac address which cannot be guaranteed to be unique
across multiple nodes. I think that is the reason why bridge is assigned
same mac address of a physical port (when port is added to a bridge) since 
physical ports will have unique mac address.

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-18 Thread Vishal Deep Ajmera
> OK, what about this patch instead? It should fix the issue without the
> errors.  I have not tested.

I tried your patch but it does not re-add the routes. The reason is doing
$ ifup br0 will not invoke ifup-post since the bridge port is already UP and so 
$OVSBRIDGECONFIGURED will be 'true'.

I think instead of doing 'ifup $OVS_BRIDGE', we should run ${OTHERSCRIPT} 
$OVS_BRIDGE 
under the mac check. Tried this and it is working.

Updated patch below.

+   BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
ovs-vsctl -t ${TIMEOUT} \
-- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
-- add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS \
-- set Interface "$DEVICE" type=dpdk ${OVS_EXTRA+-- 
$OVS_EXTRA}
+   BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
+   # The bridge will change its MAC to be the lower one among all 
its
+   # ports. Restore the configuration if that happens.
+   if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
+   ${OTHERSCRIPT} "$OVS_BRIDGE"
+   fi

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-17 Thread Flavio Leitner
On Wed, Jan 17, 2018 at 09:17:07PM -0200, Flavio Leitner wrote:
> On Wed, Jan 17, 2018 at 04:35:01PM +, Vishal Deep Ajmera wrote:
> > > What happens if you have two or more bonds or if we fix dpdk port too, 
> > > what happens when you have more than one? 
> > >  I think you will see errors/failures.
> > 
> > I tried with two dpdk ports and I do see following print on console though 
> > it seem harmless and does not impact route table. Also, this happens only 
> > when bridge mac was unchanged by addition of new DPDK port. 
> > 
> > RTNETLINK answers: File exists
> > RTNETLINK answers: File exists
> > RTNETLINK answers: File exists
> 
> OK, what about this patch instead? It should fix the issue without the
> errors.  I have not tested.

BTW, I suggested earlier but maybe I wasn't clear.

Instead of adding networking configuration to the bridge's port, just
leave it alone with a name that doesn't bother you.

Then create an internal port with the name and the networking
configuration you need. It won't change its MAC and neither lose
the routes. They both will be tap devices anyways.

fbl


> 
> diff --git a/rhel/etc_sysconfig_network-scripts_ifup-ovs 
> b/rhel/etc_sysconfig_network-scripts_ifup-ovs
> index b95220a7f..b455e356e 100755
> --- a/rhel/etc_sysconfig_network-scripts_ifup-ovs
> +++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs
> @@ -167,10 +167,17 @@ case "$TYPE" in
>   ;;
>   OVSDPDKPort)
>   ifup_ovs_bridge
> + BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
>   ovs-vsctl -t ${TIMEOUT} \
>   -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
>   -- add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS \
>   -- set Interface "$DEVICE" type=dpdk ${OVS_EXTRA+-- 
> $OVS_EXTRA}
> + BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
> + # The bridge will change its MAC to be the lower one among all 
> its
> + # ports. Restore the configuration if that happens.
> + if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
> + OVSINTF=${DEVICE} /sbin/ifup "$OVS_BRIDGE"
> + fi
>   ;;
>   OVSDPDKRPort)
>   ifup_ovs_bridge
> @@ -196,12 +203,19 @@ case "$TYPE" in
>   ;;
>   OVSDPDKBond)
>   ifup_ovs_bridge
> + BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
>   for _iface in $BOND_IFACES; do
>   IFACE_TYPES="${IFACE_TYPES} -- set interface ${_iface} 
> type=dpdk"
>   done
>   ovs-vsctl -t ${TIMEOUT} \
>   -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
>   -- add-bond "$OVS_BRIDGE" "$DEVICE" ${BOND_IFACES} 
> $OVS_OPTIONS ${IFACE_TYPES} ${OVS_EXTRA+-- $OVS_EXTRA}
> + BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
> + # The bridge will change its MAC to be the lower one among all 
> its
> + # ports. Restore the configuration if that happens.
> + if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
> + OVSINTF=${DEVICE} /sbin/ifup "$OVS_BRIDGE"
> + fi
>   ;;
>   *)
>   echo $"Invalid OVS interface type $TYPE"
> 
> -- 
> Flavio

-- 
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-17 Thread Flavio Leitner
On Wed, Jan 17, 2018 at 04:35:01PM +, Vishal Deep Ajmera wrote:
> > What happens if you have two or more bonds or if we fix dpdk port too, 
> > what happens when you have more than one? 
> >  I think you will see errors/failures.
> 
> I tried with two dpdk ports and I do see following print on console though 
> it seem harmless and does not impact route table. Also, this happens only 
> when bridge mac was unchanged by addition of new DPDK port. 
> 
> RTNETLINK answers: File exists
> RTNETLINK answers: File exists
> RTNETLINK answers: File exists

OK, what about this patch instead? It should fix the issue without the
errors.  I have not tested.

diff --git a/rhel/etc_sysconfig_network-scripts_ifup-ovs 
b/rhel/etc_sysconfig_network-scripts_ifup-ovs
index b95220a7f..b455e356e 100755
--- a/rhel/etc_sysconfig_network-scripts_ifup-ovs
+++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs
@@ -167,10 +167,17 @@ case "$TYPE" in
;;
OVSDPDKPort)
ifup_ovs_bridge
+   BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
ovs-vsctl -t ${TIMEOUT} \
-- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
-- add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS \
-- set Interface "$DEVICE" type=dpdk ${OVS_EXTRA+-- 
$OVS_EXTRA}
+   BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
+   # The bridge will change its MAC to be the lower one among all 
its
+   # ports. Restore the configuration if that happens.
+   if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
+   OVSINTF=${DEVICE} /sbin/ifup "$OVS_BRIDGE"
+   fi
;;
OVSDPDKRPort)
ifup_ovs_bridge
@@ -196,12 +203,19 @@ case "$TYPE" in
;;
OVSDPDKBond)
ifup_ovs_bridge
+   BRIDGE_MAC_ORIG=$(get_hwaddr $OVS_BRIDGE)
for _iface in $BOND_IFACES; do
IFACE_TYPES="${IFACE_TYPES} -- set interface ${_iface} 
type=dpdk"
done
ovs-vsctl -t ${TIMEOUT} \
-- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
-- add-bond "$OVS_BRIDGE" "$DEVICE" ${BOND_IFACES} 
$OVS_OPTIONS ${IFACE_TYPES} ${OVS_EXTRA+-- $OVS_EXTRA}
+   BRIDGE_MAC=$(get_hwaddr $OVS_BRIDGE)
+   # The bridge will change its MAC to be the lower one among all 
its
+   # ports. Restore the configuration if that happens.
+   if [ "$BRIDGE_MAC_ORIG" != "$BRIDGE_MAC" ]; then
+   OVSINTF=${DEVICE} /sbin/ifup "$OVS_BRIDGE"
+   fi
;;
*)
echo $"Invalid OVS interface type $TYPE"

-- 
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-17 Thread Flavio Leitner
On Wed, Jan 17, 2018 at 10:25:36AM +, Vishal Deep Ajmera wrote:
> Hi Flavio,
> 
> I tried to look closer into ifup-ovs script particularly for OVSDPDKPort & 
> OVSDPDKBOND cases. 
> With the change given below (git diff) at the end OVSDPDKBOND case, I see 
> that the routes 
> are getting installed again after adding dpdkbond port to the bridge. Perhaps 
> the same fix 
> needs to be done for OVSDPDKPort case as well. I think we need to invoke 
> $OTHERSCRIPT
> (ifup-eth) for the bridge in each of the above cases.
> 
> Does this fix in ifup-ovs script makes sense ?  If you agree, I will post a 
> patch for review on 
> ovs-dev list.

What happens if you have two or more bonds or if we fix dpdk port too,
what happens when you have more than one?  I think you will see
errors/failures.

> 
> diff --git a/rhel/etc_sysconfig_network-scripts_ifup-ovs 
> b/rhel/etc_sysconfig_network-scripts_ifup-ovs
> index b95220a..132ed29 100755
> --- a/rhel/etc_sysconfig_network-scripts_ifup-ovs
> +++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs
> @@ -202,6 +202,7 @@ case "$TYPE" in
> ovs-vsctl -t ${TIMEOUT} \
> -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
> -- add-bond "$OVS_BRIDGE" "$DEVICE" ${BOND_IFACES} 
> $OVS_OPTIONS ${IFACE_TYPES} ${OVS_EXTRA+-- $OVS_EXTRA}
> +   ${OTHERSCRIPT} $OVS_BRIDGE
> ;;
> *)
> echo $"Invalid OVS interface type $TYPE"
> 

-- 
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-17 Thread Vishal Deep Ajmera
Hi Flavio,

I tried to look closer into ifup-ovs script particularly for OVSDPDKPort & 
OVSDPDKBOND cases. 
With the change given below (git diff) at the end OVSDPDKBOND case, I see that 
the routes 
are getting installed again after adding dpdkbond port to the bridge. Perhaps 
the same fix 
needs to be done for OVSDPDKPort case as well. I think we need to invoke 
$OTHERSCRIPT
(ifup-eth) for the bridge in each of the above cases.

Does this fix in ifup-ovs script makes sense ?  If you agree, I will post a 
patch for review on 
ovs-dev list.


diff --git a/rhel/etc_sysconfig_network-scripts_ifup-ovs 
b/rhel/etc_sysconfig_network-scripts_ifup-ovs
index b95220a..132ed29 100755
--- a/rhel/etc_sysconfig_network-scripts_ifup-ovs
+++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs
@@ -202,6 +202,7 @@ case "$TYPE" in
ovs-vsctl -t ${TIMEOUT} \
-- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" \
-- add-bond "$OVS_BRIDGE" "$DEVICE" ${BOND_IFACES} 
$OVS_OPTIONS ${IFACE_TYPES} ${OVS_EXTRA+-- $OVS_EXTRA}
+   ${OTHERSCRIPT} $OVS_BRIDGE
;;
*)
echo $"Invalid OVS interface type $TYPE"

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-15 Thread Vishal Deep Ajmera
Hi Flavio,

Thanks for looking into this issue. I believe the order of initialization does 
not matter. 
Just an FYI: I tried with your suggestion of renaming the bridge name to zbr0 
but it did 
not solve the issue. In my opinion the issue is with networking scripts which 
is not 
triggering route addition again for the bridge LOCAL port. Let me explain it a 
little more.

As you see in the steps I followed, first we add the bridge br0 ($ifup br0). At 
this time the 
bridge LOCAL interface gets a random MAC address. Once the interface is 
configured, the 
networking service gets to see a new interface and invokes the route addition 
(due to 
presence of file route-br0) via ifup-eth/ifup-post script.

Next when we add dpdk-bond ports ($ifup dpdkbond0), the bridge LOCAL interface 
is 
reconfigured with MAC address of one of the dpdk ports (since these are 
physical ports). 
At this time OVS only makes IOCTL calls for setting device flags to DOWN and UP.
Once the device flag is set to UP again, I was assuming that ifup-eth/ifup-post 
script should get 
invoked again but it did not happen. Thus all the routes for br0 interface did 
not get added 
again.

I hope this clarifies the issue.

Warm Regards,
Vishal Ajmera

-Original Message-
From: Flavio Leitner [mailto:f...@sysclose.org] 
Sent: Tuesday, January 16, 2018 9:17 AM
To: Vishal Deep Ajmera <vishal.deep.ajm...@ericsson.com>
Cc: ovs-discuss@openvswitch.org
Subject: Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

On Tue, Dec 26, 2017 at 08:31:49AM +, Vishal Deep Ajmera wrote:
> Hi,
> 
> On Red-Hat, kernel IP Routes are getting deleted whenever a dpdk-bond 
> port is added to "netdev" type bridge.  I understand that when a DPDK 
> port is added to ovs, the bridge port (LOCAL) is reconfigured with MAC 
> address which requires IOCTL calls to bring the device down and up. 
> This causes kernel to remove the routes.
> 
> Can someone please have a look and let me know what am I missing here ?

Hi Vishal,

I think when the interface goes down to change the MAC address, the routes will 
go away.  The only way to to make sure the routes will be restored is to change 
the initialization order.

In your case, br0 is initialized first, then dpdkbond0 which will cause the 
issue.

The order is alphabetical, so try renaming br0 to something like
zbr0 to see if the bridge is reconfigured with the routes.

fbl

> Steps to reproduce the issue:
> 
> # Create the bridge in OVS.
> $ ifup br0
> 
> # Dump the routes
> $ ip route
> 11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
> 100.100.100.10 via 11.2.0.202 dev br0
> 100.100.100.20 via 11.2.0.201 dev br0
> 169.254.0.0/16 dev br0 scope link metric 1036
> 
> # Add DPDK Bond to bridge br0
> $ ifup dpdkbond0
> 
> # Dump the routes
> $ ip route
> 11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
> --> Other routes for br0 are missing.
> 
> Here are the ifcfg files for the bridge BR0 and DPDKBOND0 port along 
> with static routes.
> =
> $ cat ifcfg-br0
> DEVICE=br0
> ONBOOT=yes
> HOTPLUG=no
> NM_CONTROLLED=no
> PEERDNS=no
> DEVICETYPE=ovs
> TYPE=OVSUserBridge
> BOOTPROTO=static
> IPADDR=11.2.0.26
> NETMASK=255.255.255.0
> OVS_EXTRA="set bridge br0 fail_mode=standalone"
> 
> $ cat ifcfg-dpdkbond0
> DEVICE=dpdkbond0
> ONBOOT=yes
> HOTPLUG=no
> NM_CONTROLLED=no
> PEERDNS=no
> DEVICETYPE=ovs
> TYPE=OVSDPDKBond
> OVS_BRIDGE=br0
> BOND_IFACES="dpdk0 dpdk1"
> OVS_OPTIONS="bond_mode=balance-tcp other_config:lacp-time=fast lacp=passive"
> 
> $ cat route-br0
> 100.100.100.10 via 11.2.0.201 dev br0
> 100.100.100.20 via 11.2.0.202 dev br0
> 
> =
> 
> Warm Regards,
> Vishal
> 

> ___
> discuss mailing list
> disc...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


--
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-15 Thread Flavio Leitner
On Tue, Dec 26, 2017 at 08:31:49AM +, Vishal Deep Ajmera wrote:
> Hi,
> 
> On Red-Hat, kernel IP Routes are getting deleted whenever a dpdk-bond port is
> added to "netdev" type bridge.  I understand that when a DPDK port is added to
> ovs, the bridge port (LOCAL) is reconfigured with MAC address which requires
> IOCTL calls to bring the device down and up. This causes kernel to remove the
> routes.
> 
> Can someone please have a look and let me know what am I missing here ?

Hi Vishal,

I think when the interface goes down to change the MAC address, the
routes will go away.  The only way to to make sure the routes will
be restored is to change the initialization order.

In your case, br0 is initialized first, then dpdkbond0 which will
cause the issue.

The order is alphabetical, so try renaming br0 to something like
zbr0 to see if the bridge is reconfigured with the routes.

fbl

> Steps to reproduce the issue:
> 
> # Create the bridge in OVS.
> $ ifup br0
> 
> # Dump the routes
> $ ip route
> 11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
> 100.100.100.10 via 11.2.0.202 dev br0
> 100.100.100.20 via 11.2.0.201 dev br0
> 169.254.0.0/16 dev br0 scope link metric 1036
> 
> # Add DPDK Bond to bridge br0
> $ ifup dpdkbond0
> 
> # Dump the routes
> $ ip route
> 11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
> --> Other routes for br0 are missing.
> 
> Here are the ifcfg files for the bridge BR0 and DPDKBOND0 port along with
> static routes.
> =
> $ cat ifcfg-br0
> DEVICE=br0
> ONBOOT=yes
> HOTPLUG=no
> NM_CONTROLLED=no
> PEERDNS=no
> DEVICETYPE=ovs
> TYPE=OVSUserBridge
> BOOTPROTO=static
> IPADDR=11.2.0.26
> NETMASK=255.255.255.0
> OVS_EXTRA="set bridge br0 fail_mode=standalone"
> 
> $ cat ifcfg-dpdkbond0
> DEVICE=dpdkbond0
> ONBOOT=yes
> HOTPLUG=no
> NM_CONTROLLED=no
> PEERDNS=no
> DEVICETYPE=ovs
> TYPE=OVSDPDKBond
> OVS_BRIDGE=br0
> BOND_IFACES="dpdk0 dpdk1"
> OVS_OPTIONS="bond_mode=balance-tcp other_config:lacp-time=fast lacp=passive"
> 
> $ cat route-br0
> 100.100.100.10 via 11.2.0.201 dev br0
> 100.100.100.20 via 11.2.0.202 dev br0
> 
> =
> 
> Warm Regards,
> Vishal
> 

> ___
> discuss mailing list
> disc...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


-- 
Flavio

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-09 Thread Vishal Deep Ajmera
Haven't received any suggestions yet and not able to fix the issue. The only 
workaround that resolved the issue was to restart the OVS.

Did anyone else face the same issue as described below ?

Warm Regards,
Vishal Ajmera

From: ovs-discuss-boun...@openvswitch.org 
[mailto:ovs-discuss-boun...@openvswitch.org] On Behalf Of Vishal Deep Ajmera
Sent: Tuesday, January 02, 2018 3:43 PM
To: ovs-discuss@openvswitch.org
Subject: Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

Can someone help with route issue below ?

Warm Regards,
Vishal

From: 
ovs-discuss-boun...@openvswitch.org<mailto:ovs-discuss-boun...@openvswitch.org> 
[mailto:ovs-discuss-boun...@openvswitch.org] On Behalf Of Vishal Deep Ajmera
Sent: Tuesday, December 26, 2017 2:02 PM
To: ovs-discuss@openvswitch.org<mailto:ovs-discuss@openvswitch.org>
Subject: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

Hi,

On Red-Hat, kernel IP Routes are getting deleted whenever a dpdk-bond port is
added to "netdev" type bridge.  I understand that when a DPDK port is added to
ovs, the bridge port (LOCAL) is reconfigured with MAC address which requires
IOCTL calls to bring the device down and up. This causes kernel to remove the
routes.

Can someone please have a look and let me know what am I missing here ?
Steps to reproduce the issue:

# Create the bridge in OVS.
$ ifup br0

# Dump the routes
$ ip route
11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
100.100.100.10 via 11.2.0.202 dev br0
100.100.100.20 via 11.2.0.201 dev br0
169.254.0.0/16 dev br0 scope link metric 1036

# Add DPDK Bond to bridge br0
$ ifup dpdkbond0

# Dump the routes
$ ip route
11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
--> Other routes for br0 are missing.

Here are the ifcfg files for the bridge BR0 and DPDKBOND0 port along with
static routes.
=
$ cat ifcfg-br0
DEVICE=br0
ONBOOT=yes
HOTPLUG=no
NM_CONTROLLED=no
PEERDNS=no
DEVICETYPE=ovs
TYPE=OVSUserBridge
BOOTPROTO=static
IPADDR=11.2.0.26
NETMASK=255.255.255.0
OVS_EXTRA="set bridge br0 fail_mode=standalone"

$ cat ifcfg-dpdkbond0
DEVICE=dpdkbond0
ONBOOT=yes
HOTPLUG=no
NM_CONTROLLED=no
PEERDNS=no
DEVICETYPE=ovs
TYPE=OVSDPDKBond
OVS_BRIDGE=br0
BOND_IFACES="dpdk0 dpdk1"
OVS_OPTIONS="bond_mode=balance-tcp other_config:lacp-time=fast lacp=passive"

$ cat route-br0
100.100.100.10 via 11.2.0.201 dev br0
100.100.100.20 via 11.2.0.202 dev br0

=

Warm Regards,
Vishal

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss


Re: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

2018-01-02 Thread Vishal Deep Ajmera
Can someone help with route issue below ?

Warm Regards,
Vishal

From: ovs-discuss-boun...@openvswitch.org 
[mailto:ovs-discuss-boun...@openvswitch.org] On Behalf Of Vishal Deep Ajmera
Sent: Tuesday, December 26, 2017 2:02 PM
To: ovs-discuss@openvswitch.org
Subject: [ovs-discuss] REDHAT: Route issue with dpdk-bond ports

Hi,

On Red-Hat, kernel IP Routes are getting deleted whenever a dpdk-bond port is
added to "netdev" type bridge.  I understand that when a DPDK port is added to
ovs, the bridge port (LOCAL) is reconfigured with MAC address which requires
IOCTL calls to bring the device down and up. This causes kernel to remove the
routes.

Can someone please have a look and let me know what am I missing here ?
Steps to reproduce the issue:

# Create the bridge in OVS.
$ ifup br0

# Dump the routes
$ ip route
11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
100.100.100.10 via 11.2.0.202 dev br0
100.100.100.20 via 11.2.0.201 dev br0
169.254.0.0/16 dev br0 scope link metric 1036

# Add DPDK Bond to bridge br0
$ ifup dpdkbond0

# Dump the routes
$ ip route
11.2.0.0/24 dev br0 proto kernel scope link src 11.2.0.26
--> Other routes for br0 are missing.

Here are the ifcfg files for the bridge BR0 and DPDKBOND0 port along with
static routes.
=
$ cat ifcfg-br0
DEVICE=br0
ONBOOT=yes
HOTPLUG=no
NM_CONTROLLED=no
PEERDNS=no
DEVICETYPE=ovs
TYPE=OVSUserBridge
BOOTPROTO=static
IPADDR=11.2.0.26
NETMASK=255.255.255.0
OVS_EXTRA="set bridge br0 fail_mode=standalone"

$ cat ifcfg-dpdkbond0
DEVICE=dpdkbond0
ONBOOT=yes
HOTPLUG=no
NM_CONTROLLED=no
PEERDNS=no
DEVICETYPE=ovs
TYPE=OVSDPDKBond
OVS_BRIDGE=br0
BOND_IFACES="dpdk0 dpdk1"
OVS_OPTIONS="bond_mode=balance-tcp other_config:lacp-time=fast lacp=passive"

$ cat route-br0
100.100.100.10 via 11.2.0.201 dev br0
100.100.100.20 via 11.2.0.202 dev br0

=

Warm Regards,
Vishal

___
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss