I've got the pcmcia_core and yenta_socket already built into my kernel, so they don't need loaded by the /etc/init.d/pcmcia script, though its cardmgr is still needed. This script only checks the modules though: if [ -z `fgrep "ds " /proc/modules | head -n1 | cut -c1` ] ; then Since its builtin, it won't show up in the modules list so i always get these warnings: ewarn "'modprobe ${PCIC}' failed" ewarn "Trying alternative PCIC driver: ${PCIC_ALT}" Not sure what the best method would be for knowing that these are already there. Perhaps a grep on /proc/devices for "pcmcia" or [ -e /proc/bus/pccard ]. Either way... It would be nice to get rid of these inappropriate warnings.
If you see the comment in /etc/conf.d/pcmcia, or if you notice the line in the init script where it does: if [ -n "$PCIC" ]; then foo then you'll see you can stop part of this behavior by setting PCIC="" As for the other two, i'll see what can be more easily done to prevent this.
/proc/bus/pccard is created in the ds.c: ds.c: proc_pccard = proc_mkdir("pccard", proc_bus); Therefore, if that exists, no matter whether its builtin or was already loaded by hand/script/hotplug/whatever then we know that "ds" is in memory and since that has a dependancy on yenta_socket or whatever else already being in memory. So, we can then skip over trying to load these as modules. And if down the road someone decides to try running pcmcia as a module, so that test would fail and it would try to load them as modules, and that eliminates the chance of forgetting to uncomment some setting - it'd just plain work, and without ugly error messages in both cases. [ -e /proc/bus/pccard ] || if [ -z `fgrep "ds " /proc/modules | head -n1 | cut -c1` ] ; then For that matter, with that logic holding true, there may not even be a need to grep /proc/modules at all. /sys/bus/pcmcia or /sys/class/pcmcia_socket would probably be just as effective.
Okay, sorry for the delay. Just got this commited. Much prettier now. (: Please re-emerge pcmcia-cs and test away.
This is actually causing ds to _never_ get modprobed on my laptop, which results in failure of pcmcia to start.
Created attachment 30873 [details] kernel config