Re: replace in-memory rules array with match/action token list

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 23, 2008 at 18:10, Alan Jenkins <alan-jenkins@xxxxxxxxxxxxxx> wrote:
> Kay Sievers wrote:
>> On Thu, Oct 23, 2008 at 16:16, Alan Jenkins <alan-jenkins@xxxxxxxxxxxxxx> wrote:
>>> Kay Sievers wrote:
>>>> On Thu, Oct 23, 2008 at 13:34, Alan Jenkins <alan-jenkins@xxxxxxxxxxxxxx> wrote:
>>>>> Alan Jenkins wrote:
>>>>>
>>>>>>> The in-memory rule array of a common desktop distro install took:
>>>>>>>   1151088 bytes
>>>>>>> with the token list:
>>>>>>>   109232 bytes tokens (6827 * 16 bytes), 71302 bytes buffer
>>>>>>>
>>>>>> Sounds great from a performance point of view.

> There's also a call usleep() in rename_netif().
> Perhaps this error message is significant:
>
>    "error changing netif name ath0 to ath1: Device or resource busy"
>
> It only happens with the bad version.  The good version doesn't try to
> rename the interface from "ath0".  I've attached my rules file.
>
> But this error should cause rename_netif() to return without calling
> usleep().

> And anticipating your next question:
>
>    # grep WAIT /etc/udev/rules.d/*
>    /etc/udev/rules.d/05-udev-early.rules:ACTION=="add",
> KERNEL=="[0-9]*:[0-9]*", SUBSYSTEM=="scsi", WAIT_FOR_SYSFS="ioerr_cnt"

Yeah, this is no longer needed with recent kernels, and I don't have
it, so I didn't notice the wrong ordering.

>  1)  The attached rules are being interpreted differently, changing the
> name of the device.

> # PCI device 0x168c:0x001c (ath_pci)
> SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:15:af:87:43:9f", ATTRS{type}=="1", NAME="ath0"

> # PCI device 0x168c:0000:01:00.0 (ath5k_pci)
> SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:af:87:43:9f", ATTR{type}=="1", KERNEL=="ath*", NAME="ath1"

For some reason you have duplicated MAC addresses here, which must not
happen. Might becaused by something like this bug:
  http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=9bdca442ef3f7d54cea9827605ec635712009735

The new rule engine, does not special-case NAME=, so the last
assignment wins. Only NAME:= would prevent later changes as usual.

Thanks,
Kay
--
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

[Index of Archives]     [Linux Kernel]     [Linux DVB]     [Asterisk Internet PBX]     [DCCP]     [Netdev]     [X.org]     [Util Linux NG]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux