Messages in this thread | | | Date | Thu, 18 Sep 2008 12:06:22 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] add sysctl from printk_tag |
| |
* Yinghai Lu <yhlu.kernel@gmail.com> wrote:
> under /proc/sys/kernel/printk_tag/ will have acpi, apic, dev, pci
nice!
> Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> > > --- > init/main.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 56 insertions(+) > > Index: linux-2.6/init/main.c > =================================================================== > --- linux-2.6.orig/init/main.c > +++ linux-2.6/init/main.c > @@ -63,6 +63,8 @@ > #include <linux/idr.h> > #include <linux/kmemcheck.h> > #include <linux/ftrace.h> > +#include <linux/sysctl.h> > +#include <linux/proc_fs.h> > > #include <asm/io.h> > #include <asm/bugs.h> > @@ -395,6 +397,60 @@ static int __init quiet_kernel(char *str > early_param("debug", debug_kernel); > early_param("quiet", quiet_kernel); > > +#ifdef CONFIG_SYSCTL > +static struct ctl_table printk_tag_ctl_dir[] = { > + { > + .procname = "printk_tag", > + .mode = 0555, > + }, > + {0, }, > +}; > + > +static struct ctl_table printk_tag_ctl_root[] = { > + { > + .ctl_name = CTL_KERN, > + .procname = "kernel", > + .mode = 0555, > + .child = printk_tag_ctl_dir, > + }, > + {0, }, > +}; > + > +static int __init proc_printk_tag_init(void) > +{ > + int i; > + struct ctl_table *entry; > + char buf[32];
magic constant.
> + strncpy(buf, tag_level[i].name, len - 1); > + entry->procname = kstrdup(buf, GFP_KERNEL); > + entry->data = &tag_level[i].level; > + entry->maxlen = sizeof(tag_level[i].level); > + entry->mode = 0644; > + entry->proc_handler = proc_dointvec; > + entry++; > + }
hm, whitespace damage in every second line.
Ingo
| |