mirror of https://gitee.com/openkylin/linux.git
printk: add and use LOGLEVEL_<level> defines for KERN_<LEVEL> equivalents
Use #defines instead of magic values. Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jason Baron <jbaron@akamai.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
f80e696854
commit
a39d4a857d
|
@ -188,7 +188,7 @@ int usb_stor_dbg(const struct us_data *us, const char *fmt, ...)
|
||||||
|
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
|
|
||||||
r = dev_vprintk_emit(7, &us->pusb_dev->dev, fmt, args);
|
r = dev_vprintk_emit(LOGLEVEL_DEBUG, &us->pusb_dev->dev, fmt, args);
|
||||||
|
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
|
||||||
|
|
|
@ -22,4 +22,17 @@
|
||||||
*/
|
*/
|
||||||
#define KERN_CONT ""
|
#define KERN_CONT ""
|
||||||
|
|
||||||
|
/* integer equivalents of KERN_<LEVEL> */
|
||||||
|
#define LOGLEVEL_SCHED -2 /* Deferred messages from sched code
|
||||||
|
* are set to this special level */
|
||||||
|
#define LOGLEVEL_DEFAULT -1 /* default (or last) loglevel */
|
||||||
|
#define LOGLEVEL_EMERG 0 /* system is unusable */
|
||||||
|
#define LOGLEVEL_ALERT 1 /* action must be taken immediately */
|
||||||
|
#define LOGLEVEL_CRIT 2 /* critical conditions */
|
||||||
|
#define LOGLEVEL_ERR 3 /* error conditions */
|
||||||
|
#define LOGLEVEL_WARNING 4 /* warning conditions */
|
||||||
|
#define LOGLEVEL_NOTICE 5 /* normal but significant condition */
|
||||||
|
#define LOGLEVEL_INFO 6 /* informational */
|
||||||
|
#define LOGLEVEL_DEBUG 7 /* debug-level messages */
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -62,9 +62,6 @@ int console_printk[4] = {
|
||||||
CONSOLE_LOGLEVEL_DEFAULT, /* default_console_loglevel */
|
CONSOLE_LOGLEVEL_DEFAULT, /* default_console_loglevel */
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Deferred messaged from sched code are marked by this special level */
|
|
||||||
#define SCHED_MESSAGE_LOGLEVEL -2
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Low level drivers may need that to know if they can schedule in
|
* Low level drivers may need that to know if they can schedule in
|
||||||
* their unblank() callback or not. So let's export it.
|
* their unblank() callback or not. So let's export it.
|
||||||
|
@ -1259,7 +1256,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
|
||||||
int do_syslog(int type, char __user *buf, int len, bool from_file)
|
int do_syslog(int type, char __user *buf, int len, bool from_file)
|
||||||
{
|
{
|
||||||
bool clear = false;
|
bool clear = false;
|
||||||
static int saved_console_loglevel = -1;
|
static int saved_console_loglevel = LOGLEVEL_DEFAULT;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
error = check_syslog_permissions(type, from_file);
|
error = check_syslog_permissions(type, from_file);
|
||||||
|
@ -1316,15 +1313,15 @@ int do_syslog(int type, char __user *buf, int len, bool from_file)
|
||||||
break;
|
break;
|
||||||
/* Disable logging to console */
|
/* Disable logging to console */
|
||||||
case SYSLOG_ACTION_CONSOLE_OFF:
|
case SYSLOG_ACTION_CONSOLE_OFF:
|
||||||
if (saved_console_loglevel == -1)
|
if (saved_console_loglevel == LOGLEVEL_DEFAULT)
|
||||||
saved_console_loglevel = console_loglevel;
|
saved_console_loglevel = console_loglevel;
|
||||||
console_loglevel = minimum_console_loglevel;
|
console_loglevel = minimum_console_loglevel;
|
||||||
break;
|
break;
|
||||||
/* Enable logging to console */
|
/* Enable logging to console */
|
||||||
case SYSLOG_ACTION_CONSOLE_ON:
|
case SYSLOG_ACTION_CONSOLE_ON:
|
||||||
if (saved_console_loglevel != -1) {
|
if (saved_console_loglevel != LOGLEVEL_DEFAULT) {
|
||||||
console_loglevel = saved_console_loglevel;
|
console_loglevel = saved_console_loglevel;
|
||||||
saved_console_loglevel = -1;
|
saved_console_loglevel = LOGLEVEL_DEFAULT;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
/* Set level of messages printed to console */
|
/* Set level of messages printed to console */
|
||||||
|
@ -1336,7 +1333,7 @@ int do_syslog(int type, char __user *buf, int len, bool from_file)
|
||||||
len = minimum_console_loglevel;
|
len = minimum_console_loglevel;
|
||||||
console_loglevel = len;
|
console_loglevel = len;
|
||||||
/* Implicitly re-enable logging to console */
|
/* Implicitly re-enable logging to console */
|
||||||
saved_console_loglevel = -1;
|
saved_console_loglevel = LOGLEVEL_DEFAULT;
|
||||||
error = 0;
|
error = 0;
|
||||||
break;
|
break;
|
||||||
/* Number of chars in the log buffer */
|
/* Number of chars in the log buffer */
|
||||||
|
@ -1629,8 +1626,8 @@ asmlinkage int vprintk_emit(int facility, int level,
|
||||||
/* cpu currently holding logbuf_lock in this function */
|
/* cpu currently holding logbuf_lock in this function */
|
||||||
static volatile unsigned int logbuf_cpu = UINT_MAX;
|
static volatile unsigned int logbuf_cpu = UINT_MAX;
|
||||||
|
|
||||||
if (level == SCHED_MESSAGE_LOGLEVEL) {
|
if (level == LOGLEVEL_SCHED) {
|
||||||
level = -1;
|
level = LOGLEVEL_DEFAULT;
|
||||||
in_sched = true;
|
in_sched = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1695,8 +1692,9 @@ asmlinkage int vprintk_emit(int facility, int level,
|
||||||
const char *end_of_header = printk_skip_level(text);
|
const char *end_of_header = printk_skip_level(text);
|
||||||
switch (kern_level) {
|
switch (kern_level) {
|
||||||
case '0' ... '7':
|
case '0' ... '7':
|
||||||
if (level == -1)
|
if (level == LOGLEVEL_DEFAULT)
|
||||||
level = kern_level - '0';
|
level = kern_level - '0';
|
||||||
|
/* fallthrough */
|
||||||
case 'd': /* KERN_DEFAULT */
|
case 'd': /* KERN_DEFAULT */
|
||||||
lflags |= LOG_PREFIX;
|
lflags |= LOG_PREFIX;
|
||||||
}
|
}
|
||||||
|
@ -1710,7 +1708,7 @@ asmlinkage int vprintk_emit(int facility, int level,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (level == -1)
|
if (level == LOGLEVEL_DEFAULT)
|
||||||
level = default_message_loglevel;
|
level = default_message_loglevel;
|
||||||
|
|
||||||
if (dict)
|
if (dict)
|
||||||
|
@ -1788,7 +1786,7 @@ EXPORT_SYMBOL(vprintk_emit);
|
||||||
|
|
||||||
asmlinkage int vprintk(const char *fmt, va_list args)
|
asmlinkage int vprintk(const char *fmt, va_list args)
|
||||||
{
|
{
|
||||||
return vprintk_emit(0, -1, NULL, 0, fmt, args);
|
return vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, 0, fmt, args);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(vprintk);
|
EXPORT_SYMBOL(vprintk);
|
||||||
|
|
||||||
|
@ -1842,7 +1840,7 @@ asmlinkage __visible int printk(const char *fmt, ...)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
r = vprintk_emit(0, -1, NULL, 0, fmt, args);
|
r = vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, 0, fmt, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
|
@ -2631,7 +2629,7 @@ int printk_deferred(const char *fmt, ...)
|
||||||
|
|
||||||
preempt_disable();
|
preempt_disable();
|
||||||
va_start(args, fmt);
|
va_start(args, fmt);
|
||||||
r = vprintk_emit(0, SCHED_MESSAGE_LOGLEVEL, NULL, 0, fmt, args);
|
r = vprintk_emit(0, LOGLEVEL_SCHED, NULL, 0, fmt, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
|
|
||||||
__this_cpu_or(printk_pending, PRINTK_PENDING_OUTPUT);
|
__this_cpu_or(printk_pending, PRINTK_PENDING_OUTPUT);
|
||||||
|
|
|
@ -576,7 +576,7 @@ void __dynamic_dev_dbg(struct _ddebug *descriptor,
|
||||||
} else {
|
} else {
|
||||||
char buf[PREFIX_SIZE];
|
char buf[PREFIX_SIZE];
|
||||||
|
|
||||||
dev_printk_emit(7, dev, "%s%s %s: %pV",
|
dev_printk_emit(LOGLEVEL_DEBUG, dev, "%s%s %s: %pV",
|
||||||
dynamic_emit_prefix(descriptor, buf),
|
dynamic_emit_prefix(descriptor, buf),
|
||||||
dev_driver_string(dev), dev_name(dev),
|
dev_driver_string(dev), dev_name(dev),
|
||||||
&vaf);
|
&vaf);
|
||||||
|
@ -605,7 +605,7 @@ void __dynamic_netdev_dbg(struct _ddebug *descriptor,
|
||||||
if (dev && dev->dev.parent) {
|
if (dev && dev->dev.parent) {
|
||||||
char buf[PREFIX_SIZE];
|
char buf[PREFIX_SIZE];
|
||||||
|
|
||||||
dev_printk_emit(7, dev->dev.parent,
|
dev_printk_emit(LOGLEVEL_DEBUG, dev->dev.parent,
|
||||||
"%s%s %s %s%s: %pV",
|
"%s%s %s %s%s: %pV",
|
||||||
dynamic_emit_prefix(descriptor, buf),
|
dynamic_emit_prefix(descriptor, buf),
|
||||||
dev_driver_string(dev->dev.parent),
|
dev_driver_string(dev->dev.parent),
|
||||||
|
|
Loading…
Reference in New Issue