What is listed in /sys/module?

From: Jean Delvare
Date: Wed May 29 2013 - 04:27:54 EST


Hi Greg, Rusty,

I have a question related to /sys/module and can't seem to find the
answer by myself so I hope you can explain.

I noticed that /sys/module contains more than /proc/modules. At first I
thought that any potentially modular piece of code would show up
in /sys/module, so /sys/module would include both actual modules and
"built-in modules".

However I then noticed that some built-in modules do _not_ show up
in /sys/module. For example, I have USB and I2C core support built into
my 3.9.4 kernel, /sys/module/usbcore exists but /sys/module/i2c_core
does not. CONFIG_SENSORS_W83795=y did not give me /sys/module/w83795
either.

So my questions are:
1* What exactly is supposed to show up in /sys/module?
Documentation/ABI/stable/sysfs-module says:

/sys/module/MODULENAME
The name of the module that is in the kernel. This
module name will show up either if the module is built
directly into the kernel, or if it is loaded as a
dynamic module.

But my tests above contradict this statement.

And more precisely:
2* For what reason do some built-in modules show up in /sys/module and
others do not? Is it a bug?

Thanks,
--
Jean Delvare
--
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/