diff --git a/SOURCES/openvswitch-2.13.0.patch b/SOURCES/openvswitch-2.13.0.patch
index 13d593b..fc0cf4d 100644
--- a/SOURCES/openvswitch-2.13.0.patch
+++ b/SOURCES/openvswitch-2.13.0.patch
@@ -1613,10 +1613,44 @@ index eda42ac823..a468c3e6bc 100644
  
      if (src->wscale & CT_WSCALE_FLAG
 diff --git a/datapath-windows/ovsext/Conntrack.c b/datapath-windows/ovsext/Conntrack.c
-index ba5611697a..55917c43ff 100644
+index ba5611697a..4d24706915 100644
 --- a/datapath-windows/ovsext/Conntrack.c
 +++ b/datapath-windows/ovsext/Conntrack.c
-@@ -753,6 +753,9 @@ OvsProcessConntrackEntry(OvsForwardingContext *fwdCtx,
+@@ -491,15 +491,32 @@ static __inline NDIS_STATUS
+ OvsDetectCtPacket(OvsForwardingContext *fwdCtx,
+                   OvsFlowKey *key)
+ {
++    NDIS_STATUS status = NDIS_STATUS_SUCCESS;
++    OvsFlowKey  newFlowKey = { 0 };
++
+     switch (ntohs(key->l2.dlType)) {
+     case ETH_TYPE_IPV4:
+         if (key->ipKey.nwFrag != OVS_FRAG_TYPE_NONE) {
+-            return OvsProcessIpv4Fragment(fwdCtx->switchContext,
++            status = OvsProcessIpv4Fragment(fwdCtx->switchContext,
+                                           &fwdCtx->curNbl,
+                                           fwdCtx->completionList,
+                                           fwdCtx->fwdDetail->SourcePortId,
+                                           &fwdCtx->layers,
+                                           key->tunKey.tunnelId);
++            if (status == NDIS_STATUS_SUCCESS) {
++                 /* After the Ipv4 Fragment is reassembled, update flow key as
++                   L3 and L4 headers are not correct */
++                 status =
++                      OvsExtractFlow(fwdCtx->curNbl, fwdCtx->srcVportNo,
++                                     &newFlowKey, &fwdCtx->layers,
++                                     fwdCtx->tunKey.dst != 0 ? &fwdCtx->tunKey : NULL);
++                if (status != NDIS_STATUS_SUCCESS) {
++                     OVS_LOG_ERROR("Extract flow failed Nbl %p", fwdCtx->curNbl);
++                     return status;
++                 }
++                *key = newFlowKey;
++            }
++            return status;
+         }
+         if (key->ipKey.nwProto == IPPROTO_TCP
+             || key->ipKey.nwProto == IPPROTO_UDP
+@@ -753,6 +770,9 @@ OvsProcessConntrackEntry(OvsForwardingContext *fwdCtx,
                  return NULL;
              }
              break;
diff --git a/SPECS/openvswitch2.13.spec b/SPECS/openvswitch2.13.spec
index c4fcfce..b8aac4c 100644
--- a/SPECS/openvswitch2.13.spec
+++ b/SPECS/openvswitch2.13.spec
@@ -59,7 +59,7 @@ Summary: Open vSwitch
 Group: System Environment/Daemons daemon/database/utilities
 URL: http://www.openvswitch.org/
 Version: 2.13.0
-Release: 137%{?commit0:.%{date}git%{shortcommit0}}%{?commit1:dpdk%{shortcommit1}}%{?dist}
+Release: 138%{?commit0:.%{date}git%{shortcommit0}}%{?commit1:dpdk%{shortcommit1}}%{?dist}
 
 # Nearly all of openvswitch is ASL 2.0.  The bugtool is LGPLv2+, and the
 # lib/sflow*.[ch] files are SISSL
@@ -712,6 +712,12 @@ exit 0
 %endif
 
 %changelog
+* Mon Nov 15 2021 Open vSwitch CI <ovs-ci@redhat.com> - 2.13.0-138
+- Merging upstream branch-2.13 [RH git: 424b25f9ca]
+    Commit list:
+    85358e0a9f datapath-windows: Reset flow key after Ipv4 fragments are reassembled
+
+
 * Thu Oct 28 2021 Open vSwitch CI <ovs-ci@redhat.com> - 2.13.0-137
 - Merging upstream branch-2.13 [RH git: f86ccc67c2]
     Commit list: