Package: udev
Version: 0.124-5
Severity: normal

While testing with a new USB wlan card, I noticed that its interface wasn't
persistent between reboots, investigating deeper I found that
/etc/udev/rules.d/70-persistent-net.rules didn't pick up the new MAC 
address. Removing the existing /etc/udev/rules.d/70-persistent-net.rules
and trying to regenerate it by rebooting or using 
        /lib/udev/write_net_rules all_interfaces
failed. 

I can confirm this issue on a fresh install with udev 0.124-5 on amd64 and 
i386; it does work with udev 0.114-2 (using z25_persistent-net.rules).

# bash -x /lib/udev/write_net_rules all_interfaces
+ RULES_FILE=/etc/udev/rules.d/70-persistent-net.rules
+ . /lib/udev/hotplug.functions
++ FIRMWARE_DIRS='/lib/firmware /usr/local/lib/firmware 
/usr/lib/hotplug/firmware'
++ EVENTS_DIR=/dev/.events
++ MODPROBE='/sbin/modprobe -s -q'
++ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
++ '[' -e /etc/default/hotplug ']'
++ '[' -x /usr/bin/logger ']'
++ LOGGER=/usr/bin/logger
++ '[' -t 1 -a -z /usr/bin/logger ']'
++ '[' '!' -e /dev/log ']'
++ '[' -t 1 ']'
+ '[' all_interfaces = all_interfaces ']'
+ '[' -e /etc/udev/rules.d/70-persistent-net.rules ']'
+ '[' '!' -e /sys/class/net/ ']'
+ write_all_rules
+ cd /sys/class/net/
+ for INTERFACE in '*'
+ case $INTERFACE in
+ INTERFACE=eth0
+ DEVPATH=/class/net/eth0
+ /lib/udev/write_net_rules
missing valid match
+ true
+ for INTERFACE in '*'
+ case $INTERFACE in
+ INTERFACE=eth1
+ DEVPATH=/class/net/eth1
+ /lib/udev/write_net_rules
missing valid match
+ true
+ for INTERFACE in '*'
+ case $INTERFACE in
+ continue
+ for INTERFACE in '*'
+ case $INTERFACE in
+ INTERFACE=wlan0
+ DEVPATH=/class/net/wlan0
+ /lib/udev/write_net_rules
missing valid match
+ true
+ for INTERFACE in '*'
+ case $INTERFACE in
+ continue
+ exit 0

$ udevinfo -a -p /class/net/eth0/

Udevinfo starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:0a.0/net/eth0':
    KERNEL=="eth0"
    SUBSYSTEM=="net"
    DRIVER==""
    ATTR{addr_len}=="6"
    ATTR{dev_id}=="0x0"
    ATTR{iflink}=="2"
    ATTR{ifindex}=="2"
    ATTR{features}=="0x10029"
    ATTR{type}=="1"
    ATTR{link_mode}=="0"
    ATTR{address}=="00:0f:ea:e9:14:7f"
    ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
    ATTR{carrier}=="1"
    ATTR{dormant}=="0"
    ATTR{operstate}=="unknown"
    ATTR{mtu}=="1500"
    ATTR{flags}=="0x1003"
    ATTR{tx_queue_len}=="1000"

  looking at parent device '/devices/pci0000:00/0000:00:0a.0/net':
    KERNELS=="net"
    SUBSYSTEMS==""
    DRIVERS==""

  looking at parent device '/devices/pci0000:00/0000:00:0a.0':
    KERNELS=="0000:00:0a.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="forcedeth"
    ATTRS{vendor}=="0x10de"
    ATTRS{device}=="0x0057"
    ATTRS{subsystem_vendor}=="0x1458"
    ATTRS{subsystem_device}=="0xe000"
    ATTRS{class}=="0x068000"
    ATTRS{irq}=="21"
    ATTRS{local_cpus}=="00000003"
    ATTRS{local_cpulist}=="0-1"
    ATTRS{modalias}=="pci:v000010DEd00000057sv00001458sd0000E000bc06sc80i00"
    ATTRS{numa_node}=="0"
    ATTRS{broken_parity_status}=="0"
    ATTRS{msi_bus}==""

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

$ find /sys/class/net/eth0/ -maxdepth 1 -type f -exec grep -H . {} \;
/sys/class/net/eth0/uevent:INTERFACE=eth0
/sys/class/net/eth0/uevent:IFINDEX=2
/sys/class/net/eth0/addr_len:6
/sys/class/net/eth0/dev_id:0x0
/sys/class/net/eth0/iflink:2
/sys/class/net/eth0/ifindex:2
/sys/class/net/eth0/features:0x10029
/sys/class/net/eth0/type:1
/sys/class/net/eth0/link_mode:0
/sys/class/net/eth0/address:00:0f:ea:e9:14:7f
/sys/class/net/eth0/broadcast:ff:ff:ff:ff:ff:ff
/sys/class/net/eth0/carrier:1
/sys/class/net/eth0/dormant:0
/sys/class/net/eth0/operstate:unknown
/sys/class/net/eth0/mtu:1500
/sys/class/net/eth0/flags:0x1003
/sys/class/net/eth0/tx_queue_len:1000

Regards
        Stefan Lippers-Hollmann

-- Package-specific info:
-- /etc/udev/rules.d/:
/etc/udev/rules.d/:
insgesamt 172
lrwxrwxrwx 1 root root    19 21. Okt 2007  025_libgphoto2.rules -> 
../libgphoto2.rules
lrwxrwxrwx 1 root root    22 21. Okt 2007  025_logitechmouse.rules -> 
../logitechmouse.rules
-rw-r--r-- 1 root root   210  1. Dez 2007  45-hplip.rules
-rw-r--r-- 1 root root  3472 20. Jul 19:24 50-udev.rules
-rw-r--r-- 1 root root   980 21. Apr 14:42 55-hpmud.rules
-rw-r--r-- 1 root root  1543  8. Jul 17:24 60-persistent-input.rules
-rw-r--r-- 1 root root  4365  8. Jul 17:24 60-persistent-storage.rules
-rw-r--r-- 1 root root  1582 11. Jul 15:54 60-persistent-storage-tape.rules
-rw-r--r-- 1 root root   523  8. Jul 17:24 60-persistent-v4l.rules
-rw-r--r-- 1 root root  1642 23. Jul 23:50 70-persistent-cd.rules
-rw-r--r-- 1 root root   452  8. Jul 17:24 75-cd-aliases-generator.rules
-rw-r--r-- 1 root root  3110 20. Jul 19:24 75-persistent-net-generator.rules
-rw-r--r-- 1 root root  2282 19. Jul 02:09 80-drivers.rules
-rw-r--r-- 1 root root  4247 20. Jul 19:24 91-permissions.rules
-rw-r--r-- 1 root root   592  8. Jul 17:24 95-late.rules
lrwxrwxrwx 1 root root    16 29. Jun 03:36 libmtp7.rules -> ../libmtp7.rules
lrwxrwxrwx 1 root root    15 23. Jan 23:33 libnjb.rules -> ../libnjb.rules
lrwxrwxrwx 1 root root    19 21. Okt 2007  z60_alsa-utils.rules -> 
../alsa-utils.rules
lrwxrwxrwx 1 root root    15 21. Okt 2007  z60_hdparm.rules -> ../hdparm.rules
-rw-r--r-- 1 root root  2656  1. Jan 2008  z60_libpisock9.rules
-rw-r--r-- 1 root root 14883  1. Mär 15:59 z60_libsane-extras.rules
-rw-r--r-- 1 root root 72908 22. Jul 23:20 z60_libsane.rules
-rw-r--r-- 1 root root    80 20. Okt 2007  z60_virtualbox-ose.rules
-rw-r--r-- 1 root root  6661  2. Dez 2007  z60_xserver-xorg-input-wacom.rules
lrwxrwxrwx 1 root root    12 16. Jun 21:07 z99_hal.rules -> ../hal.rules

-- /sys/:
/sys/block/dm-0/dev
/sys/block/dm-1/dev
/sys/block/dm-2/dev
/sys/block/dm-3/dev
/sys/block/fd0/dev
/sys/block/hda/dev
/sys/block/hda/hda1/dev
/sys/block/hdc/dev
/sys/block/hdd/dev
/sys/block/ram0/dev
/sys/block/ram10/dev
/sys/block/ram11/dev
/sys/block/ram12/dev
/sys/block/ram13/dev
/sys/block/ram14/dev
/sys/block/ram15/dev
/sys/block/ram1/dev
/sys/block/ram2/dev
/sys/block/ram3/dev
/sys/block/ram4/dev
/sys/block/ram5/dev
/sys/block/ram6/dev
/sys/block/ram7/dev
/sys/block/ram8/dev
/sys/block/ram9/dev
/sys/block/sda/dev
/sys/block/sda/sda1/dev
/sys/block/sdb/dev
/sys/block/sdb/sdb1/dev
/sys/block/sdb/sdb2/dev
/sys/block/sdb/sdb3/dev
/sys/class/drm/card0/dev
/sys/class/dvb/dvb0.demux0/dev
/sys/class/dvb/dvb0.dvr0/dev
/sys/class/dvb/dvb0.frontend0/dev
/sys/class/dvb/dvb0.net0/dev
/sys/class/graphics/fb0/dev
/sys/class/hidraw/hidraw0/dev
/sys/class/input/input0/event0/dev
/sys/class/input/input0/mouse0/dev
/sys/class/input/input1/event1/dev
/sys/class/input/input3/event2/dev
/sys/class/input/input3/mouse1/dev
/sys/class/input/input4/event3/dev
/sys/class/input/input5/event4/dev
/sys/class/input/input6/event5/dev
/sys/class/input/input7/event6/dev
/sys/class/input/mice/dev
/sys/class/misc/cpu_dma_latency/dev
/sys/class/misc/device-mapper/dev
/sys/class/misc/fuse/dev
/sys/class/misc/hpet/dev
/sys/class/misc/mcelog/dev
/sys/class/misc/network_latency/dev
/sys/class/misc/network_throughput/dev
/sys/class/misc/psaux/dev
/sys/class/misc/rtc/dev
/sys/class/misc/snapshot/dev
/sys/class/ppdev/parport0/dev
/sys/class/printer/lp0/dev
/sys/class/sound/adsp/dev
/sys/class/sound/audio/dev
/sys/class/sound/controlC0/dev
/sys/class/sound/dsp/dev
/sys/class/sound/mixer/dev
/sys/class/sound/pcmC0D0c/dev
/sys/class/sound/pcmC0D0p/dev
/sys/class/sound/pcmC0D1c/dev
/sys/class/sound/pcmC0D2p/dev
/sys/class/sound/seq/dev
/sys/class/sound/sequencer2/dev
/sys/class/sound/sequencer/dev
/sys/class/sound/timer/dev
/sys/class/usb_device/usbdev1.1/dev
/sys/class/usb_device/usbdev1.3/dev
/sys/class/usb_device/usbdev2.1/dev
/sys/class/usb_endpoint/usbdev1.1_ep00/dev
/sys/class/usb_endpoint/usbdev1.1_ep81/dev
/sys/class/usb_endpoint/usbdev1.3_ep00/dev
/sys/class/usb_endpoint/usbdev1.3_ep81/dev
/sys/class/usb_endpoint/usbdev2.1_ep00/dev
/sys/class/usb_endpoint/usbdev2.1_ep81/dev
/sys/class/usbmon/usbmon0/dev
/sys/class/usbmon/usbmon1/dev
/sys/class/usbmon/usbmon2/dev
/sys/class/video4linux/vbi0/dev
/sys/class/video4linux/video0/dev
/sys/devices/pci0000:00/0000:00:02.0/usb1/1-9/dev
/sys/devices/pci0000:00/0000:00:02.0/usb1/dev
/sys/devices/pci0000:00/0000:00:02.1/usb2/dev
/sys/devices/pci0000:00/0000:00:09.0/0000:01:0a.0/fw0/dev

-- Kernel configuration:
 isapnp_init not present.


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.25-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages udev depends on:
ii  debconf [debconf-2.0]         1.5.23     Debian configuration management sy
ii  libc6                         2.7-12     GNU C Library: Shared libraries
ii  libselinux1                   2.0.65-2   SELinux shared libraries
ii  libvolume-id0                 0.124-5    libvolume_id shared library
ii  lsb-base                      3.2-15     Linux Standard Base 3.2 init scrip

udev recommends no packages.

udev suggests no packages.

-- debconf information:
  udev/new_kernel_needed: false
  udev/reboot_needed:

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to