Greg KH wrote:
On Fri, Nov 11, 2005 at 08:32:20AM -0700, Tom Rini wrote:
On 2.6.14, and probably newer, a system where CONFIG_MODULES=n
/sys/module/foo/parameters/param fails:
# cat /sys/module/tcp_bic/parameters/low_window
cat: /sys/module/tcp_bic/parameters/low_window: Permission denied
But just changing MODULES to y:
# cat /sys/module/tcp_bic/parameters/low_window
14
Is this intentional or fixable? Just an observation right now, thanks.
Not intentional at all. Did this work before 2.6.14?
thanks,
greg k-h
I am not sure when it stopped working.
I recommend the attached patch to kernel/params.c All the work was done
to setup the file and maintain the file handles but the access functions
were zeroed out due to the #ifdef. Removing the #ifdef allows full
access to all the parameters when CONFIG_MODULES=n.
signed off: Jason Wessel <[email protected]>
Thanks,
Jason.
Index: linux-2.6.14/kernel/params.c
===================================================================
--- linux-2.6.14.orig/kernel/params.c 2005-11-11 08:40:03.456317256 -0800
+++ linux-2.6.14/kernel/params.c 2005-11-12 11:43:00.439765632 -0800
@@ -618,8 +618,6 @@ static void __init param_sysfs_builtin(v
/* module-related sysfs stuff */
-#ifdef CONFIG_MODULES
-
#define to_module_attr(n) container_of(n, struct module_attribute, attr);
#define to_module_kobject(n) container_of(n, struct module_kobject, kobj);
@@ -676,13 +674,6 @@ static struct sysfs_ops module_sysfs_ops
.store = module_attr_store,
};
-#else
-static struct sysfs_ops module_sysfs_ops = {
- .show = NULL,
- .store = NULL,
-};
-#endif
-
static struct kobj_type module_ktype = {
.sysfs_ops = &module_sysfs_ops,
};
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]