Am 21.05.2012 12:19, schrieb Cong Wang:
> On 05/21/2012 05:44 PM, Harald Hoyer wrote:
>> Am 21.05.2012 11:31, schrieb Cong Wang:
>>> On 05/21/2012 05:25 PM, Harald Hoyer wrote:
>>>>> - printf 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
>>>>> ATTR{address}=="%s", ATTR{type}=="1", NAME="%s"\n' "$ifname_mac"
>>>>> "$ifname_if"
>>>>> + #Hack: vlan device has the same mac address with its physical
>>>>> device
>>>>> + [ -e /tmp/vlan.info ]&& source /tmp/vlan.info
>>>>> + if [ "$ifname_if" != "$vlanname" ]; then
>>>>> + printf 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
>>>>> ATTR{address}=="%s", ATTR{type}=="1", NAME="%s"\n' "$ifname_mac"
>>>>> "$ifname_if"
>>>>> + fi
>>>>> done
>>>>>
>>>>> # Rename non named interfaces out of the way for named ones.
>>>>
>>>> Maybe one of the /sys attributes indicate, that it is a vlan interface?
>>>
>>> Hmm... I tried DRIVERS!="8021q", then I got:
>>>
>>> SUBSYSTEM=="net", ACTION=="add", DRIVERS!="8021q", ATTR{address}=="%s",
>>> ATTR{type}=="1" NAME="eth0"
>>>
>>> SUBSYSTEM=="net", ACTION=="add", DRIVERS!="8021q", ATTR{address}=="%s",
>>> ATTR{type}=="1" NAME="eth0.2"
>>>
>>> So, eth0 will be still renamed to eth0.2. :(
>>
>>
>> DEVPATH!="*/virtual/*" should help
>
> The problem is not in udev rules themselves, the problem is we generate two
> same
> lines for eth0 and eth0.2, even with DEVPATH!="*/virtual/*" we will have:
>
> SUBSYSTEM=="net", ACTION=="add", DEVPATH!="*/virtual/*", ATTR{address}=="%s",
> ATTR{type}=="1" NAME="eth0"
>
> SUBSYSTEM=="net", ACTION=="add", DEVPATH!="*/virtual/*", ATTR{address}=="%s",
> ATTR{type}=="1" NAME="eth0.2"
>
> eth0 will be still override. Thus, we should only generate one line for eth0,
> and let ip/vconfig to name the eth0.2 upon eth0.
>
> The reason why we have two lines is that I passed two ifname= cmdline, one for
> eth0 and the other for eth0.2, this is required by ip=, all interfaces in ip=
> should be passed in ifname= too.
>
>
> Thanks!
it would skip eth0.2, because its DEVPATH contains "virtual" and the rule is
never matched
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html