rmnet_core: CIWLAN HW Low-Latency Path
* Call hook to determine LL SKB Change-Id: Id0686774a2faec227cb5fa9ac733023a69cfcdae Signed-off-by: Elmer Melendez <quic_emelende@quicinc.com>
This commit is contained in:

committed by
Subash Abhinov Kasiviswanathan

parent
7e90328aee
commit
8638373d04
@@ -57,6 +57,10 @@ typedef int (*rmnet_aps_post_queue_t)(struct net_device *dev,
|
||||
rmnet_aps_post_queue_t rmnet_aps_post_queue __read_mostly;
|
||||
EXPORT_SYMBOL(rmnet_aps_post_queue);
|
||||
|
||||
typedef void (*rmnet_wlan_ll_tuple_hook_t)(struct sk_buff *skb);
|
||||
rmnet_wlan_ll_tuple_hook_t rmnet_wlan_ll_tuple_hook __rcu __read_mostly;
|
||||
EXPORT_SYMBOL(rmnet_wlan_ll_tuple_hook);
|
||||
|
||||
/* RX/TX Fixup */
|
||||
|
||||
void rmnet_vnd_rx_fixup(struct net_device *dev, u32 skb_len)
|
||||
@@ -96,6 +100,7 @@ static netdev_tx_t rmnet_vnd_start_xmit(struct sk_buff *skb,
|
||||
unsigned int len;
|
||||
rmnet_perf_tether_egress_hook_t rmnet_perf_tether_egress;
|
||||
rmnet_aps_post_queue_t aps_post_queue;
|
||||
rmnet_wlan_ll_tuple_hook_t rmnet_wlan_ll_tuple;
|
||||
bool low_latency = false;
|
||||
bool need_to_drop = false;
|
||||
|
||||
@@ -120,6 +125,11 @@ static netdev_tx_t rmnet_vnd_start_xmit(struct sk_buff *skb,
|
||||
rmnet_perf_tether_egress(skb);
|
||||
}
|
||||
|
||||
rmnet_wlan_ll_tuple = rcu_dereference(rmnet_wlan_ll_tuple_hook);
|
||||
if (rmnet_wlan_ll_tuple) {
|
||||
rmnet_wlan_ll_tuple(skb);
|
||||
}
|
||||
|
||||
qmi_rmnet_get_flow_state(dev, skb, &need_to_drop, &low_latency);
|
||||
if (unlikely(need_to_drop)) {
|
||||
this_cpu_inc(priv->pcpu_stats->stats.tx_drops);
|
||||
|
Reference in New Issue
Block a user