|
@@ -549,8 +549,10 @@ static int __udpv6_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
|
|
|
{
|
|
|
int rc;
|
|
|
|
|
|
- if (!ipv6_addr_any(&inet6_sk(sk)->daddr))
|
|
|
+ if (!ipv6_addr_any(&inet6_sk(sk)->daddr)) {
|
|
|
sock_rps_save_rxhash(sk, skb);
|
|
|
+ sk_mark_napi_id(sk, skb);
|
|
|
+ }
|
|
|
|
|
|
rc = sock_queue_rcv_skb(sk, skb);
|
|
|
if (rc < 0) {
|
|
@@ -844,7 +846,6 @@ int __udp6_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
|
|
|
if (sk != NULL) {
|
|
|
int ret;
|
|
|
|
|
|
- sk_mark_napi_id(sk, skb);
|
|
|
ret = udpv6_queue_rcv_skb(sk, skb);
|
|
|
sock_put(sk);
|
|
|
|