Loading net/netlink/af_netlink.c +2 −4 Original line number Diff line number Diff line Loading @@ -1246,16 +1246,14 @@ static int netlink_recvmsg(struct kiocb *kiocb, struct socket *sock, siocb->scm = &scm; } siocb->scm->creds = *NETLINK_CREDS(skb); if (flags & MSG_TRUNC) copied = skb->len; skb_free_datagram(sk, skb); if (nlk->cb && atomic_read(&sk->sk_rmem_alloc) <= sk->sk_rcvbuf / 2) netlink_dump(sk); scm_recv(sock, msg, siocb->scm, flags); if (flags & MSG_TRUNC) copied = skb->len; out: netlink_rcv_wake(sk); return err ? : copied; Loading Loading
net/netlink/af_netlink.c +2 −4 Original line number Diff line number Diff line Loading @@ -1246,16 +1246,14 @@ static int netlink_recvmsg(struct kiocb *kiocb, struct socket *sock, siocb->scm = &scm; } siocb->scm->creds = *NETLINK_CREDS(skb); if (flags & MSG_TRUNC) copied = skb->len; skb_free_datagram(sk, skb); if (nlk->cb && atomic_read(&sk->sk_rmem_alloc) <= sk->sk_rcvbuf / 2) netlink_dump(sk); scm_recv(sock, msg, siocb->scm, flags); if (flags & MSG_TRUNC) copied = skb->len; out: netlink_rcv_wake(sk); return err ? : copied; Loading