summaryrefslogtreecommitdiffstats
path: root/net/socket.c
diff options
context:
space:
mode:
authorAkinobu Mita <mita@miraclelinux.com>2006-09-01 00:21:50 +0200
committerDavid S. Miller <davem@davemloft.net>2006-09-01 00:21:50 +0200
commit5991c84421f3ea1e281954610a39e4993e5c39e4 (patch)
treece8ea8b89cf4f0a98322c117214b980cb055bad5 /net/socket.c
parent[IPV6]: Fix kernel OOPs when setting sticky socket options. (diff)
downloadlinux-5991c84421f3ea1e281954610a39e4993e5c39e4.tar.xz
linux-5991c84421f3ea1e281954610a39e4993e5c39e4.zip
[NET]: Rate limiting for socket allocation failure messages.
This patch limits the warning messages when socket allocation failures happen. It happens under memory pressure. Signed-off-by: Akinobu Mita <mita@miraclelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--net/socket.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/socket.c b/net/socket.c
index b4848ce0d6ac..6d261bf206fc 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -1178,7 +1178,8 @@ static int __sock_create(int family, int type, int protocol, struct socket **res
*/
if (!(sock = sock_alloc())) {
- printk(KERN_WARNING "socket: no more sockets\n");
+ if (net_ratelimit())
+ printk(KERN_WARNING "socket: no more sockets\n");
err = -ENFILE; /* Not exactly a match, but its the
closest posix thing */
goto out;