Re: Changing sysctl values within the kernel?

From: Alexey Dobriyan
Date: Sun Nov 26 2006 - 15:38:36 EST


On Sat, Nov 25, 2006 at 07:11:48PM +0000, David Johnson wrote:
> I'm working on a kernel module and want to change sysctl values (specifically
> stop-a and printk) in response to a hardware event.
>
> Is there an accepted way of setting sysctl values within the kernel (I can't
> seem to find any other module doing this),

Yes. Next in-kernel module changing sysctls will do it via

stop_a_enabled = 1;
console_loglevel = 8;

(be sure, variables in question are EXPORT_SYMBOL'ed)

> or is it a completely silly idea?

Without more details it's hard to tell.

> Would it perhaps be better to instead create a sysfs node and let a userspace
> daemon worry about setting the sysctl values?

Now _this_ is silly. sysctls already live in /proc/sys/, so you can open(2)
/proc/sys/kernel/printk and write(2) to it.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/