Hi Aruna Thanks a lot! I changed the Kconfig to tristate and set the config_INET=m. I also needed to add "depends on CONFIG_INET" to other config options those depend on INET. I could build it. But when I reboot, I got the following error and it doesn't boot. Giving up :-( error getting socket: Address family not supported by protocol error initializing udev control socket I'm trying to write a Media-friendly TCP (by implementing a new option). Please let me know if you have any suggestion. Many thanks Tamim On Mon, Nov 14, 2016 at 7:17 AM, Aruna Hewapathirane <aruna.hewapathirane@gmail.com> wrote:
Currently TCP is statically linked to the kernel.
Correct, so how is this done and where ? Once you figure that part out you have what you need to do what you want to :)
How can I make it a loadable module?
Change into your source tree, look for this file: linux-4.7.2/linux-4.7.2/net/Kconfig
Kconfig is used by the KBuild system that menuconfig uses.
Look for the section: config INET bool "TCP/IP networking" <-- change bool to tristate, save and run make menuconfig.
Now you can ask menuconfig to build TCP as a module.
But... it may be better to if you can use: https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt
One last thing, heed the warnings in Kconfig they are there for a reason.
Good luck and what exactly are you trying to do ? Am curious.
Aruna ( Shrugs and gets ready to duck a flying trout Valdis may send my way :)
-- Tamim PhD Student/Graduate Assistant CS Department, Kent State University Kent, OH 44240 http://web.cs.kent.edu/~mislam4/