initrd error - "error inserting'/lib/uhci-hcd.ko' : -1 Unknown symbol in module"
I am a newbie to this group and forum as well as linux. I am trying to understand how initrd creates character devices, loads all the modules, functionalities of pivot_root and chroot system call, by writing my own utilities. I have written my own shell which calls custom cat, echo, mount, unmount, mknod, chmod, rm, mv, cd, ls, pivot_root and chroot. I havenot done the insmod part.
Now I have unzipped the initrd-2.6.21-1.3194.fc7.cpio.gz from the /boot/ and done cpio -iv<initrd-2.6.21-1.3194.fc7.cpio to get all the files extracted. I have replaced the init file with my custom shell. So ideally, after booting, the control goes to my shell. From here I am manually adding devices. Everything happens fine till creating the devices.
When it comes to insmod, it is throwing up the following error.
"error inserting'/lib/uhci-hcd.ko' : -1 Unknown symbol in module"
I have some doubts.
1. What is the function of hotplug and mkblkdevs commands?
2. Is hotplug utility and mkblkdevs implemented for executing these commands or are they available anywhere else that I should call them from?
3. Can I use the insmod given in the bin folder and integrate it with my custom shell?
Awaiting your reply,