summaryrefslogtreecommitdiff
path: root/drivers/rmnet/shs/rmnet_shs_wq.c
diff options
context:
space:
mode:
authorSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>2020-05-30 11:07:06 -0700
committerSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>2020-06-01 15:12:11 -0700
commitc2621585f4cd96e5965099eb975c156328775481 (patch)
tree415afdafaaeac654214f5223bbfbca4e27b1b533 /drivers/rmnet/shs/rmnet_shs_wq.c
parent7c43f1d0486aeaa238eed84527eaf2c979b56ffb (diff)
downloaddata-kernel-c2621585f4cd96e5965099eb975c156328775481.tar.gz
drivers: rmnet_shs: Reset hstat node correctly
Previously hstat node was not being cleared correctly. This change correctly resets segmentation field to prevent the stale field from being used on a recycle. CRs-Fixed: 2699690 Change-Id: Ie9d6b5f64d2e94d8a8c3fb99fdcee1b13ae2ec6d Acked-by: Raul Martinez <mraul@qti.qualcomm.com> Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Diffstat (limited to 'drivers/rmnet/shs/rmnet_shs_wq.c')
-rw-r--r--drivers/rmnet/shs/rmnet_shs_wq.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/rmnet/shs/rmnet_shs_wq.c b/drivers/rmnet/shs/rmnet_shs_wq.c
index 6b2a31e..3445519 100644
--- a/drivers/rmnet/shs/rmnet_shs_wq.c
+++ b/drivers/rmnet/shs/rmnet_shs_wq.c
@@ -296,6 +296,7 @@ void rmnet_shs_wq_hstat_reset_node(struct rmnet_shs_wq_hstat_s *hnode)
hnode->hash = 0;
hnode->suggested_cpu = 0;
hnode->current_cpu = 0;
+ hnode->segs_per_skb = 0;
hnode->skb_tport_proto = 0;
hnode->stat_idx = -1;
INIT_LIST_HEAD(&hnode->cpu_node_id);
@@ -409,7 +410,8 @@ void rmnet_shs_wq_create_new_flow(struct rmnet_shs_skbn_s *node_p)
node_p->hstats->skb_tport_proto = node_p->skb_tport_proto;
node_p->hstats->current_cpu = node_p->map_cpu;
node_p->hstats->suggested_cpu = node_p->map_cpu;
-
+ /* Set egmentation off by default */
+ node_p->hstats->segs_per_skb = 0;
/* Start TCP flows with segmentation if userspace connected */
if (rmnet_shs_userspace_connected &&
node_p->hstats->skb_tport_proto == IPPROTO_TCP)