|
@@ -109,6 +109,7 @@
|
|
|
#include <trace/events/udp.h>
|
|
|
#include <linux/static_key.h>
|
|
|
#include <trace/events/skb.h>
|
|
|
+#include <net/ll_poll.h>
|
|
|
#include "udp_impl.h"
|
|
|
|
|
|
struct udp_table udp_table __read_mostly;
|
|
@@ -1709,7 +1710,10 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
|
|
|
sk = __udp4_lib_lookup_skb(skb, uh->source, uh->dest, udptable);
|
|
|
|
|
|
if (sk != NULL) {
|
|
|
- int ret = udp_queue_rcv_skb(sk, skb);
|
|
|
+ int ret;
|
|
|
+
|
|
|
+ sk_mark_ll(sk, skb);
|
|
|
+ ret = udp_queue_rcv_skb(sk, skb);
|
|
|
sock_put(sk);
|
|
|
|
|
|
/* a return value > 0 means to resubmit the input, but
|