From 1dd7764c9e7b88aac9a6ff18c7b9941f6ecc3fcb Mon Sep 17 00:00:00 2001 From: Utkarsh Saxena Date: Wed, 15 Feb 2017 21:46:17 +0530 Subject: [PATCH] kernel: changes to enable tcpdump in sfe The change includes passing the packet structure to the sfe module which includes functional pointer to tpacket_rcv needed for tcpdump log collection. Change-Id: Icab7663dac3f7b8681386b96945b7e170a4325f3 Acked-by: Rishav LNU Signed-off-by: Utkarsh Saxena --- net/core/dev.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/net/core/dev.c b/net/core/dev.c index 1802dd4aa605..b243f21596dd 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -4731,7 +4731,8 @@ void process_embms_receive_skb(struct sk_buff *skb) } #ifdef CONFIG_ENABLE_SFE -int (*athrs_fast_nat_recv)(struct sk_buff *skb) __rcu __read_mostly; +int (*athrs_fast_nat_recv)(struct sk_buff *skb, + struct packet_type *pt_temp) __rcu __read_mostly; EXPORT_SYMBOL(athrs_fast_nat_recv); #endif @@ -4745,8 +4746,9 @@ static int __netif_receive_skb_core(struct sk_buff **pskb, bool pfmemalloc, bool deliver_exact = false; int ret = NET_RX_DROP; __be16 type; + #ifdef CONFIG_ENABLE_SFE - int (*fast_recv)(struct sk_buff *skb); + int (*fast_recv)(struct sk_buff *skb, struct packet_type *pt_temp); #endif net_timestamp_check(!netdev_tstamp_prequeue, skb); @@ -4824,7 +4826,7 @@ skip_classify: #ifdef CONFIG_ENABLE_SFE fast_recv = rcu_dereference(athrs_fast_nat_recv); if (fast_recv) { - if (fast_recv(skb)) { + if (fast_recv(skb, pt_prev)) { ret = NET_RX_SUCCESS; goto out; }