ipw3945 Wireless Daemon

Alexander E. Patrakov patrakov at ums.usu.ru
Thu Jan 4 21:35:43 PST 2007

Dan Nicholson wrote:
> On boot, the daemon never gets started. I've been using the following
> udev rule which I copied from suse:
> SUBSYSTEM=="drivers", ACTION=="add",
> DEVPATH=="/bus/pci/drivers/ipw3945", RUN+="ipw3945d.sh start"

In your script, you have:

> LOG=/var/tmp/ipw$$.log

> The rule and script work on suse. When I boot this system, the above
> rule never seems to be executed because I have the script send some
> output to a temporary file which never shows up.

Why should it? /var/log is mounted read-only. /var/run is read-only, too. 
Thus, your script cannot log, and (speculating!) the already-running 
detection logic in the daemon may be screwed.

Suggestions so far:

1) Is the module mentioned in /etc/sysconfig/modules? It should not be 
there, you should rely upon udev to load it. The problem is that udevtrigger 
doesn't scan the "drivers" subsystem and can't replay the uevent. You have 
to get the real uevent.

2) Move the log file into /dev, as that's the only place where you can write 
at this early stage.

3) If the log reveals some other failure, make the script fail the entire 
uevent (i.e.: exit with non-zero status) without running the daemon. This 
way, it will be retried later, when you have write access to evrywhere.

Disclaimer: this mail is written from Debian Etch, without udev installed, 
and without any wireless card. It may be a complete nonsense.

Alexander E. Patrakov

More information about the lfs-support mailing list