forked from luck/tmp_suning_uos_patched
[PATCH] remove the syslog interface when printk is disabled
Attempts to read() from the non-existent dmesg buffer will return zero and userspace tends to get stuck in a busyloop. So just remove /dev/kmsg altogether if CONFIG_PRINTK=n. Signed-off-by: Mike Galbraith <efault@gmx.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
44ddc4f567
commit
c36264dfb2
|
@ -8,8 +8,9 @@ proc-y := nommu.o task_nommu.o
|
||||||
proc-$(CONFIG_MMU) := mmu.o task_mmu.o
|
proc-$(CONFIG_MMU) := mmu.o task_mmu.o
|
||||||
|
|
||||||
proc-y += inode.o root.o base.o generic.o array.o \
|
proc-y += inode.o root.o base.o generic.o array.o \
|
||||||
kmsg.o proc_tty.o proc_misc.o
|
proc_tty.o proc_misc.o
|
||||||
|
|
||||||
proc-$(CONFIG_PROC_KCORE) += kcore.o
|
proc-$(CONFIG_PROC_KCORE) += kcore.o
|
||||||
proc-$(CONFIG_PROC_VMCORE) += vmcore.o
|
proc-$(CONFIG_PROC_VMCORE) += vmcore.o
|
||||||
proc-$(CONFIG_PROC_DEVICETREE) += proc_devtree.o
|
proc-$(CONFIG_PROC_DEVICETREE) += proc_devtree.o
|
||||||
|
proc-$(CONFIG_PRINTK) += kmsg.o
|
||||||
|
|
|
@ -696,9 +696,11 @@ void __init proc_misc_init(void)
|
||||||
proc_symlink("mounts", NULL, "self/mounts");
|
proc_symlink("mounts", NULL, "self/mounts");
|
||||||
|
|
||||||
/* And now for trickier ones */
|
/* And now for trickier ones */
|
||||||
|
#ifdef CONFIG_PRINTK
|
||||||
entry = create_proc_entry("kmsg", S_IRUSR, &proc_root);
|
entry = create_proc_entry("kmsg", S_IRUSR, &proc_root);
|
||||||
if (entry)
|
if (entry)
|
||||||
entry->proc_fops = &proc_kmsg_operations;
|
entry->proc_fops = &proc_kmsg_operations;
|
||||||
|
#endif
|
||||||
create_seq_entry("devices", 0, &proc_devinfo_operations);
|
create_seq_entry("devices", 0, &proc_devinfo_operations);
|
||||||
create_seq_entry("cpuinfo", 0, &proc_cpuinfo_operations);
|
create_seq_entry("cpuinfo", 0, &proc_cpuinfo_operations);
|
||||||
#ifdef CONFIG_BLOCK
|
#ifdef CONFIG_BLOCK
|
||||||
|
|
|
@ -631,12 +631,7 @@ EXPORT_SYMBOL(vprintk);
|
||||||
|
|
||||||
asmlinkage long sys_syslog(int type, char __user *buf, int len)
|
asmlinkage long sys_syslog(int type, char __user *buf, int len)
|
||||||
{
|
{
|
||||||
return 0;
|
return -ENOSYS;
|
||||||
}
|
|
||||||
|
|
||||||
int do_syslog(int type, char __user *buf, int len)
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void call_console_drivers(unsigned long start, unsigned long end)
|
static void call_console_drivers(unsigned long start, unsigned long end)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user