Thou shalt not install kernel modules on USB storage
|Reported by:||wrosner@…||Owned by:||developers|
|Priority:||low||Milestone:||Barrier Breaker 14.07|
|Keywords:||usb serial modules opkg destination mount opt stick boot||Cc:|
Not a question, but an answer:
It is a risky thing to have kernel modules installed with opkg -d on eg. USB sticks.
I tried this on a test setup (bleeding edge, r29631 on TL 3220) and it yielded me a night and day learning experience.
The stick is mounted:
/dev/sda1 on /opt type ext3
Although I did relink the modules to the standard locations, like
/lib/modules/184.108.40.206/ch341.ko -> /opt/lib/modules/220.127.116.11/ch341.ko
this does not work at boot time.
As a consequence, all the nice auto loading mimics for USB modules at the boot process is broken.
e.g for serial adaptors, I have to manually load
insmod usbserial insmod pl2303 insmod cp210x insmod ark3116
to have serial devices /dev/ttyUSB0 etc coming up and down on plugging / unplugging the adaptors.
I tried many things like edting /etc/modules.d/* , tweaking boot scripts, inserting sleep counts etc - nothing helped.
Until I relocated my modules to their genuine places in flash.
I would have been glad to have read on this issue e.g. on
I don't like to interfere in other people's writing.
But when I finished my test setup, i'll anyway collect my experience for my own purpose. I could share this, e.g. a recipe "setting up a experimental prototype box" here http://wiki.openwrt.org/doc/start#recipes
What is the procedure to do that?
Are there any obligations afterwards, like answering complaints of people bricked their box?
In the long run, it would be nice to sequence the booting process so that mounting the stick is safely finished before further drivers are configured.