I have to insmod new kernel module. but for some reason, i can't update
new kernel for embedded board.
So i have to rmmod running built-in kernel-module, and have to insmod new one.
No, you can't do that. For optimization reasons built-in modules are not just built-in modules, but wired up like non-module code.
In some cases it may be possible to load you new module alongside the old code, if they both implement so interface where the kernel can choose from a list. E.g. if the module implements the filesystem driver "yourfs", you could try renaming the filesystem type part to "yourfs2" in your new module to make both compatible, then you have to mount the FS with the new type.
In other cases like hardware drivers this is impossile, because the running code has locked the resources (I/O-ports etc) away and may not be able to bring the device into a hand-over-ready state once it has been grabbed and "driven".
If you again manage to declare the module als completely distinct from the old one _and_ to reboot the device without the old driver grabbing the device, it may be possible.
no
No, you can't do that. For optimization reasons built-in modules are not just built-in modules, but wired up like non-module code.
In some cases it may be possible to load you new module alongside the old code, if they both implement so interface where the kernel can choose from a list. E.g. if the module implements the filesystem driver "yourfs", you could try renaming the filesystem type part to "yourfs2" in your new module to make both compatible, then you have to mount the FS with the new type.
In other cases like hardware drivers this is impossile, because the running code has locked the resources (I/O-ports etc) away and may not be able to bring the device into a hand-over-ready state once it has been grabbed and "driven".
If you again manage to declare the module als completely distinct from the old one _and_ to reboot the device without the old driver grabbing the device, it may be possible.
Thanks, I see. Irrelevant to
Thanks,
I see.
Irrelevant to the problem, i found the solution for it, beside, i think
i can access the kernel source.
so now i can update the kernel source.
:)
TIA