Hi Greg, I have sent the patch in another mail with the suggested changes.
On Tue, May 22, 2018 at 11:36 PM, Gregory Rose <[email protected]> wrote: > On 5/21/2018 11:48 PM, Neelakantam Gaddam wrote: > >> This patch fixes the kernel soft lockup issue with vxlan configuration >> where >> the tunneled packet is sent on the same bridge where vxlan port is >> attched to. >> It detects the loop in vxlan xmit functionb and drops if loop is detected. >> >> Signed-off-by: Neelakantam Gaddam <[email protected]> >> > > The patch has a white space error: > Applying patch #918026 using 'git am' > Description: [ovs-dev] compat: Fix for the packet loop issue in vxlan > Applying: compat: Fix for the packet loop issue in vxlan > /home/gvrose/prj/ovs-experimental/.git/rebase-apply/patch:14: trailing > whitespace. > if ((rt->dst.dev == dev) || > warning: 1 line adds whitespace errors. > > Also, the subject line might be better with "vxlan: Fix for the packet > loop issue in vxlan" > > Other than that seems fine and tested out OK. The maintainer may choose > to ask you to send V2 or > might just fix up the subject line and white space error and commit, > that's their prerogative. > > Tested-by: Greg Rose <[email protected]> > Reviewed-by: Greg Rose <[email protected]> > > > --- >> datapath/linux/compat/vxlan.c | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/datapath/linux/compat/vxlan.c b/datapath/linux/compat/vxlan. >> c >> index d27a5e2..0f4034f 100644 >> --- a/datapath/linux/compat/vxlan.c >> +++ b/datapath/linux/compat/vxlan.c >> @@ -1115,7 +1115,8 @@ static void vxlan_xmit_one(struct sk_buff *skb, >> struct net_device *dev, >> goto tx_error; >> } >> - if (rt->dst.dev == dev) { >> + if ((rt->dst.dev == dev) || >> + (OVS_CB(skb)->input_vport->dev == rt->dst.dev)) { >> netdev_dbg(dev, "circular route to %pI4\n", >> &dst->sin.sin_addr.s_addr); >> dev->stats.collisions++; >> @@ -1174,7 +1175,8 @@ static void vxlan_xmit_one(struct sk_buff *skb, >> struct net_device *dev, >> goto tx_error; >> } >> - if (ndst->dev == dev) { >> + if ((ndst->dev == dev) || >> + (OVS_CB(skb)->input_vport->dev == ndst->dev)) { >> netdev_dbg(dev, "circular route to %pI6\n", >> &dst->sin6.sin6_addr); >> dst_release(ndst); >> > > -- Thanks & Regards Neelakantam Gaddam _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
