if_em and if_vlan

Jon Otterholm jon.otterholm at ide.resurscentrum.se
Wed Sep 26 07:57:49 PDT 2007


Hi.

I get "Device busy" when trying to change VLAN-id on a sub-if to em0:

[root at host /home/user]# ifconfig vlan100 vlan 100 vlandev em0
ifconfig: SIOCSETVLAN: Device busy

[root at host /home/user]# dmesg | grep em0
em0: <Intel(R) PRO/1000 Network Connection Version - 6.2.9> port 
0x4000-0x401f mem 0xee200000-0xee21ffff irq 16 at device 0.0 on pci9

[root at host /home/user]# pciconf -vl
em0 at pci9:0:0:   class=0x020000 card=0x108c15d9 chip=0x108c8086 rev=0x03 
hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'PRO/1000 PM'
    class      = network
    subclass   = ethernet

[root at host /home/user]# uname -a
FreeBSD host 6.2-STABLE FreeBSD 6.2-STABLE #1: Tue Sep 25 22:29:05 CEST 
2007     user at host:/usr/obj/usr/src/sys/host  i386

It works if I create a new interface like:

[root at host /home/user]# ifconfig vlan100 create

and setting the vid and vlandev:

[root at host /home/user]# ifconfig vlan100 vlan 100 vlandev em0

But when I try to change the setting:

[root at host /home/user]# ifconfig vlan100 vlan 100 vlandev em1
ifconfig: SIOCSETVLAN: Device busy

Even if I destroy the interface and create it again I get "Device busy":

[root at host /home/user]# ifconfig vlan100 destroy
[root at host /home/user]# ifconfig vlan100 create
[root at host /home/user]# ifconfig vlan100 vlan 100 vlandev em1
ifconfig: SIOCSETVLAN: Device busy

Motherboard is Supermicro PDSMi-LN4+ with four em-interfaces.

How do I solve this?

//Jon


More information about the freebsd-net mailing list