summaryrefslogtreecommitdiff
path: root/drivers/rmnet/shs/rmnet_shs_main.c
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2020-06-22 02:06:40 -0700
committerLinux Build Service Account <lnxbuild@localhost>2020-06-22 02:06:40 -0700
commit5020d900b1c4d4cd4064d36a0f39d778d87f601e (patch)
tree415afdafaaeac654214f5223bbfbca4e27b1b533 /drivers/rmnet/shs/rmnet_shs_main.c
parent45239d04df6d53d1cd02677275aceedbaed7eb93 (diff)
parentc2621585f4cd96e5965099eb975c156328775481 (diff)
downloaddata-kernel-5020d900b1c4d4cd4064d36a0f39d778d87f601e.tar.gz
Merge c2621585f4cd96e5965099eb975c156328775481 on remote branch
Change-Id: Iaeef7c1bdc0a6c5a8b0b21653a69e498c3ddf3cc
Diffstat (limited to 'drivers/rmnet/shs/rmnet_shs_main.c')
-rwxr-xr-xdrivers/rmnet/shs/rmnet_shs_main.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/rmnet/shs/rmnet_shs_main.c b/drivers/rmnet/shs/rmnet_shs_main.c
index dec38c4..36ba75d 100755
--- a/drivers/rmnet/shs/rmnet_shs_main.c
+++ b/drivers/rmnet/shs/rmnet_shs_main.c
@@ -1012,6 +1012,8 @@ void rmnet_shs_flush_node(struct rmnet_shs_skbn_s *node, u8 ctext)
skb_bytes_delivered += skb->len;
if (segs_per_skb > 0) {
+ if (node->skb_tport_proto == IPPROTO_UDP)
+ rmnet_shs_crit_err[RMNET_SHS_UDP_SEGMENT]++;
rmnet_shs_deliver_skb_segmented(skb, ctext,
segs_per_skb);
} else {
@@ -1511,7 +1513,7 @@ int rmnet_shs_drop_backlog(struct sk_buff_head *list, int cpu)
return 0;
}
-
+/* This will run in process context, avoid disabling bh */
static int rmnet_shs_oom_notify(struct notifier_block *self,
unsigned long emtpy, void *free)
{
@@ -1520,7 +1522,6 @@ static int rmnet_shs_oom_notify(struct notifier_block *self,
struct sk_buff_head *process_q;
struct sk_buff_head *input_q;
- local_bh_disable();
for_each_possible_cpu(cpu) {
process_q = &GET_PQUEUE(cpu);
@@ -1541,7 +1542,6 @@ static int rmnet_shs_oom_notify(struct notifier_block *self,
(*nfree)++;
}
}
- local_bh_enable();
return 0;
}