diff --git a/[refs] b/[refs] index 96ba294bf5b4..94e30cf8ae38 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cd562c9859f648d78224e9fc0dafa5a3d5000fdb +refs/heads/master: 2a0c6c980d209827e5d69017fa736f107a744d1d diff --git a/trunk/net/ipv4/udp.c b/trunk/net/ipv4/udp.c index 28355350fb62..69d4bd10f9c6 100644 --- a/trunk/net/ipv4/udp.c +++ b/trunk/net/ipv4/udp.c @@ -505,6 +505,8 @@ static int udp_push_pending_frames(struct sock *sk) out: up->len = 0; up->pending = 0; + if (!err) + UDP_INC_STATS_USER(UDP_MIB_OUTDATAGRAMS, up->pcflag); return err; } @@ -693,10 +695,8 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, ip_rt_put(rt); if (free) kfree(ipc.opt); - if (!err) { - UDP_INC_STATS_USER(UDP_MIB_OUTDATAGRAMS, is_udplite); + if (!err) return len; - } /* * ENOBUFS = no kernel mem, SOCK_NOSPACE = no sndbuf space. Reporting * ENOBUFS might not be good (it's not tunable per se), but otherwise