diff --git a/[refs] b/[refs] index c602bfc54a82..ebc0a40769ff 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 50b1a782f845140f4138f14a1ce8a4a6dd0cc82f +refs/heads/master: 53eecb1be5ae499d399d2923933937a9ea1a284f diff --git a/trunk/net/tipc/socket.c b/trunk/net/tipc/socket.c index 1ea64f09cc45..22bfbc33a8ac 100644 --- a/trunk/net/tipc/socket.c +++ b/trunk/net/tipc/socket.c @@ -1322,8 +1322,10 @@ static u32 dispatch(struct tipc_port *tport, struct sk_buff *buf) if (!sock_owned_by_user(sk)) { res = filter_rcv(sk, buf); } else { - sk_add_backlog(sk, buf); - res = TIPC_OK; + if (sk_add_backlog_limited(sk, buf)) + res = TIPC_ERR_OVERLOAD; + else + res = TIPC_OK; } bh_unlock_sock(sk);