Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c274e40 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "net: Kernel changes for Generic Software Bridge(GSB)"

parents 24c27436 bd4ebaaa
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -3689,6 +3689,9 @@ static bool skb_pfmemalloc_protocol(struct sk_buff *skb)
	}
}

int (*gsb_nw_stack_recv)(struct sk_buff *skb) __rcu __read_mostly;
EXPORT_SYMBOL(gsb_nw_stack_recv);

int (*athrs_fast_nat_recv)(struct sk_buff *skb,
			   struct packet_type *pt_temp) __rcu __read_mostly;
EXPORT_SYMBOL(athrs_fast_nat_recv);
@@ -3705,6 +3708,7 @@ static int __netif_receive_skb_core(struct sk_buff *skb, bool pfmemalloc)
	bool deliver_exact = false;
	int ret = NET_RX_DROP;
	__be16 type;
	int (*gsb_ns_recv)(struct sk_buff *skb);
	int (*fast_recv)(struct sk_buff *skb, struct packet_type *pt_temp);
	int (*embms_recv)(struct sk_buff *skb);

@@ -3752,6 +3756,14 @@ another_round:
	}

skip_taps:
	gsb_ns_recv = rcu_dereference(gsb_nw_stack_recv);
	if (gsb_ns_recv) {
		if (gsb_ns_recv(skb)) {
			ret = NET_RX_SUCCESS;
			goto out;
		}
	}

	fast_recv = rcu_dereference(athrs_fast_nat_recv);
	if (fast_recv) {
		if (fast_recv(skb, pt_prev)) {