[NET]: Replace CONFIG_NET_DEBUG with sysctl.

Covert network warning messages from a compile time to runtime choice.
Removes kernel config option and replaces it with new /proc/sys/net/core/warnings.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Stephen Hemminger 2007-03-08 20:41:08 -08:00 коммит произвёл David S. Miller
Родитель ae40eb1ef3
Коммит a2a316fd06
6 изменённых файлов: 25 добавлений и 14 удалений

Просмотреть файл

@ -1421,6 +1421,15 @@ fewer messages that will be written. Message_burst controls when messages will
be dropped. The default settings limit warning messages to one every five
seconds.
warnings
--------
This controls console messages from the networking stack that can occur because
of problems on the network like duplicate address or bad checksums. Normally,
this should be enabled, but if the problem persists the messages can be
disabled.
netdev_max_backlog
------------------

Просмотреть файл

@ -290,6 +290,7 @@ enum
NET_CORE_BUDGET=19,
NET_CORE_AEVENT_ETIME=20,
NET_CORE_AEVENT_RSEQTH=21,
NET_CORE_WARNINGS=22,
};
/* /proc/sys/net/ethernet */

Просмотреть файл

@ -1334,14 +1334,12 @@ extern int sock_get_timestampns(struct sock *, struct timespec __user *);
/*
* Enable debug/info messages
*/
extern int net_msg_warn;
#define NETDEBUG(fmt, args...) \
do { if (net_msg_warn) printk(fmt,##args); } while (0)
#ifdef CONFIG_NETDEBUG
#define NETDEBUG(fmt, args...) printk(fmt,##args)
#define LIMIT_NETDEBUG(fmt, args...) do { if (net_ratelimit()) printk(fmt,##args); } while(0)
#else
#define NETDEBUG(fmt, args...) do { } while (0)
#define LIMIT_NETDEBUG(fmt, args...) do { } while(0)
#endif
#define LIMIT_NETDEBUG(fmt, args...) \
do { if (net_msg_warn && net_ratelimit()) printk(fmt,##args); } while(0)
/*
* Macros for sleeping on a socket. Use them like this:

Просмотреть файл

@ -27,13 +27,6 @@ if NET
menu "Networking options"
config NETDEBUG
bool "Network packet debugging"
help
You can say Y here if you want to get additional messages useful in
debugging bad packets, but can overwhelm logs under denial of service
attacks.
source "net/packet/Kconfig"
source "net/unix/Kconfig"
source "net/xfrm/Kconfig"

Просмотреть файл

@ -136,6 +136,14 @@ ctl_table core_table[] = {
.mode = 0644,
.proc_handler = &proc_dointvec
},
{
.ctl_name = NET_CORE_WARNINGS,
.procname = "warnings",
.data = &net_msg_warn,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = &proc_dointvec
},
{ .ctl_name = 0 }
};

Просмотреть файл

@ -32,6 +32,8 @@
int net_msg_cost = 5*HZ;
int net_msg_burst = 10;
int net_msg_warn = 1;
EXPORT_SYMBOL(net_msg_warn);
/*
* All net warning printk()s should be guarded by this function.