kernel: bump 4.19 to 4.19.84
[openwrt/openwrt.git] / target / linux / generic / backport-4.19 / 370-netfilter-nf_flow_table-fix-offloaded-connection-tim.patch
index 64eda532957dc98960327ca445b787f916847e58..7c10f6f1897e1bab8fa3679ecfb9573084d2ad4a 100644 (file)
@@ -54,7 +54,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                                nf_ct_gc_expired(tmp);
 --- a/net/netfilter/nf_flow_table_core.c
 +++ b/net/netfilter/nf_flow_table_core.c
-@@ -183,6 +183,24 @@ static const struct rhashtable_params nf
+@@ -183,10 +183,29 @@ static const struct rhashtable_params nf
        .automatic_shrinking    = true,
  };
  
@@ -79,15 +79,12 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  int flow_offload_add(struct nf_flowtable *flow_table, struct flow_offload *flow)
  {
        int err;
-@@ -203,6 +221,7 @@ int flow_offload_add(struct nf_flowtable
-               return err;
-       }
  
 +      nf_ct_offload_timeout(flow);
        flow->timeout = (u32)jiffies + NF_FLOW_TIMEOUT;
-       return 0;
- }
-@@ -316,6 +335,8 @@ static int nf_flow_offload_gc_step(struc
+       err = rhashtable_insert_fast(&flow_table->rhashtable,
+@@ -317,6 +336,8 @@ static int nf_flow_offload_gc_step(struc
        rhashtable_walk_start(&hti);
  
        while ((tuplehash = rhashtable_walk_next(&hti))) {
@@ -96,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                if (IS_ERR(tuplehash)) {
                        err = PTR_ERR(tuplehash);
                        if (err != -EAGAIN)
-@@ -328,9 +349,13 @@ static int nf_flow_offload_gc_step(struc
+@@ -329,9 +350,13 @@ static int nf_flow_offload_gc_step(struc
  
                flow = container_of(tuplehash, struct flow_offload, tuplehash[0]);