From 26c35ba5cf7c650d24bd85d1fd83eadbf6995db7 Mon Sep 17 00:00:00 2001 From: Patrick McHardy Date: Thu, 3 May 2007 03:27:01 -0700 Subject: [PATCH] --- yaml --- r: 53464 b: refs/heads/master c: 188ccb5583b8f501e1d0f5ba4f056afa141694e7 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/netlink/af_netlink.c | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 1e0236e4c099..58f5bb8070a0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3f660d66dfbc13ea4b61d3865851b348444c24b4 +refs/heads/master: 188ccb5583b8f501e1d0f5ba4f056afa141694e7 diff --git a/trunk/net/netlink/af_netlink.c b/trunk/net/netlink/af_netlink.c index 7fc6b4da4f02..ac1ceadf4ed3 100644 --- a/trunk/net/netlink/af_netlink.c +++ b/trunk/net/netlink/af_netlink.c @@ -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;