corrections - a couple of typos in previous mails: > I use both elf_x86_64 binaries, which link to /usr/lib64, and elf_i386 binaries, > which link to /lib64 ^- should be '32' Final scriptlet: #!/bin/bash logger "FIRMWARE: $1 $2" if ! echo "$1" | egrep -q '^--firmware' ; then logger "FIRMWARE: bad firmware arg: $1"; exit 1; elif ! echo "$2" | egrep -q '^--devpath' ; then logger "FIRMWARE: bad devpath arg: $2"; exit 1; fi firmware=$1 firmware=${firmware#--firmware=} devpath=$2 devpath=${devpath#--devpath=} if [ ! -f /sys/${devpath}/loading ] ; then logger "FIRMWARE: no loading: /sys/${devpath}/loading"; exit 1; fi if [ ! -f /sys/${devpath}/data ] ; then logger "FIRMWARE: no data: /sys/${devpath}/data"; exit 1; fi echo 1 > /sys/${devpath}/loading cat /lib64/firmware/${firmware} > /sys/${devpath}/data; # ^-- not 'cp -fp', though this works too status=$?; echo 0 > /sys/${devpath}/loading logger "FIRMWARE: copied /lib64/firmware/$firmware to /sys/${devpath}/loading OK: $status" exit $status; # That libusb message arose when this script was just : /lib64/udev/firmware.bin "$1" "$2" >/tmp/FW 2>&1; status=$?; logger "FIRMWARE STATUS: $status - $(cat /tmp/FW) - LOADING : $(ls -l /sys/devices/pci0000:00/0000:00:06.0/0000:30:00.0/ssb0:0/firmware/ssb0:0/loading)"; rm -f /tmp/FW || : ; The first time udev calls this with the correct udev arguments, the first line of a message containing the text "libusb main.c:" is emitted. Then it is called once every 10 seconds or so with NO arguments for around 5 minutes because the binary executable fails . That's OK, I've submitted a patch to remove the firmware binary and replace with the above script on all udev builds on my system - I just thought I should let you know and potentially help others with the same issue . Thanks & Regards, Jason -- To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html