# SIOCSIFFLAGS: Device or resource busy

## Stanley56

Okay, now I have something really strange.

I'm having trouble setting up my network card (3c509)

the error message is:

```
 * Bringing eth0 up (192.168.10.1)...

SIOCSIFFLAGS: Device or resource busy                                       [ !! ]
```

now i've been digging a bit and a budy noticed that my irq sharing wasn't enabled   :Embarassed: 

```
...

Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled

...
```

so far, not really a problem   :Rolling Eyes: 

but when i want to compile the option in my kernel (gentoo-dev-sources-2.6.7-r14), it isn't shown in the menu (make menuconfig, under Processor type and features  --->)

and when i look at the config itself, i get:

```
CONFIG_IDEPCI_SHARE_IRQ=y
```

so what is hapening? and if it is set to yes, why isn't it compiled into my kernel?

----------

## NeddySeagoon

Stanley56

Those IRQ sharing options are for two differnt aspects of the system CONFIG_IDEPCI_SHARE_IRQ=y allows The IDE ports to share interrupts, which on the PCI bus is OK.

 *Quote:*   

> Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled

  means that serial ports are not permitted to share interrupts, mostly because they don't work properly that way.

Anyway, none of this relates to your network problem.

Please post your ifconfig output, your lspci output and your lsmod output.

----------

## Stanley56

Thanks for you reply...   :Very Happy: 

ifconfig

```
lo        Link encap:Local Loopback

          inet addr:127.0.0.1  Mask:255.0.0.0

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:74 errors:0 dropped:0 overruns:0 frame:0

          TX packets:74 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:3700 (3.6 Kb)  TX bytes:3700 (3.6 Kb)

 

ppp0      Link encap:Point-to-Point Protocol

          inet addr:80.200.73.188  P-t-P:80.200.73.1  Mask:255.255.255.255

          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1

          RX packets:243 errors:0 dropped:0 overruns:0 frame:0

          TX packets:220 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:3

          RX bytes:240844 (235.1 Kb)  TX bytes:17211 (16.8 Kb)
```

lspci

```
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 03)

        Subsystem: ABIT Computer Corp. KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard

        Flags: bus master, medium devsel, latency 8

        Memory at e0000000 (32-bit, prefetchable) [size=64M]

        Capabilities: [a0] AGP version 2.0

        Capabilities: [c0] Power Management version 2

 

00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (prog-if 00 [Normal decode])

        Flags: bus master, 66Mhz, medium devsel, latency 0

        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0

        Memory behind bridge: e4000000-e5ffffff

        Prefetchable memory behind bridge: d0000000-dfffffff

        Capabilities: [80] Power Management version 2

 

00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 40)

        Subsystem: ABIT Computer Corp.: Unknown device 0000

        Flags: bus master, stepping, medium devsel, latency 0

        Capabilities: [c0] Power Management version 2

 

00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06) (prog-if 8a [Master SecP PriP])

        Subsystem: VIA Technologies, Inc. VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE

        Flags: bus master, medium devsel, latency 32

        I/O ports at d000 [size=16]

        Capabilities: [c0] Power Management version 2

 

00:07.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 16) (prog-if 00 [UHCI])

        Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller

        Flags: bus master, medium devsel, latency 32, IRQ 11

        I/O ports at d400 [size=32]

        Capabilities: [80] Power Management version 2

 

00:07.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 16) (prog-if 00 [UHCI])

        Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller

        Flags: bus master, medium devsel, latency 32, IRQ 11

        I/O ports at d800 [size=32]

        Capabilities: [80] Power Management version 2

 

00:07.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev 40)

        Subsystem: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]

        Flags: medium devsel, IRQ 11

        Capabilities: [68] Power Management version 2

 

00:09.0 Multimedia audio controller: Ensoniq 5880 AudioPCI (rev 02)

        Subsystem: Ensoniq Creative Sound Blaster AudioPCI128

        Flags: bus master, slow devsel, latency 32, IRQ 10

        I/O ports at dc00 [size=64]

        Capabilities: [dc] Power Management version 1

 

00:0d.0 Communication controller: Lucent Microelectronics 56k WinModem (rev 01)

        Subsystem: Lucent Microelectronics LT WinModem 56k Data+Fax+Voice+Dsvd

        Flags: bus master, medium devsel, latency 0, IRQ 10

        Memory at e6000000 (32-bit, non-prefetchable) [size=256]

        I/O ports at e000 [size=8]

        I/O ports at e400 [size=256]

        Capabilities: [f8] Power Management version 2

 

01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 MX 440] (rev a3) (prog-if 00 [VGA])

        Flags: bus master, 66Mhz, medium devsel, latency 248, IRQ 11

        Memory at e4000000 (32-bit, non-prefetchable) [size=16M]

        Memory at d0000000 (32-bit, prefetchable) [size=128M]

        Memory at d8000000 (32-bit, prefetchable) [size=512K]

        Expansion ROM at <unassigned> [disabled] [size=128K]

        Capabilities: [60] Power Management version 2

        Capabilities: [44] AGP version 2.0
```

lsmod

```
Module                  Size  Used by

ppp_deflate             4452  -

zlib_deflate           20984  -

zlib_inflate           20900  -

bsd_comp                5060  -

speedtch               13392  -

nvidia               4819028  -

pppoatm                 4388  -

atm                    36532  -
```

I thought it was kernel related because when I boot with my 2.4 kernel it comes up just fine...

Thanks in advance   :Wink: 

----------

## NeddySeagoon

Stanley56,

OK - I misread your first post. You have an ISA 3c509  installed.

ISA stuff can be trying to make work. You need to know the IRQ number, I/O Port and DMA (if any) and pass the info to the 3c509 module when it loads.

Do you have the 3c509 driver built as a module, or into the kernel?

Its not in your lsmod, so if its modular, its not yet loaded.

If your NIC has been used with Windows, it will be stuck in Plug and Pray mode. You need the DOS utility from 3com to configure it manually before you load the module with the correct params.

If you can't find the utility, I'm sure I have it somewhere.

----------

## Stanley56

 *NeddySeagoon wrote:*   

> Do you have the 3c509 driver built as a module, or into the kernel?
> 
> Its not in your lsmod, so if its modular, its not yet loaded.

 

Its compiled into my kernel.   :Cool: 

 *NeddySeagoon wrote:*   

> You need to know the IRQ number, I/O Port and DMA (if any) and pass the info to the 3c509 module when it loads.

 

Where can I get this information, and how do I pass it over to 3c509 when its compiled in my kernel?  :Rolling Eyes: 

So if I get it right I should give it a static IRQ for both win (using the 3com utility) as lin (?). But how can I know if the IRQ isn't used by another card?

Thx for you help   :Wink: 

----------

## NeddySeagoon

Stanley56,

You can pass options to built in modules by adding them to the kernel command line in your grub.conf. This makes testing take a long time because you need to reboot every time. I reccomend that you rebuild your kernel with the 3c509 as a module. Then you can modprobe it in and out as fast as you can type.

To avoid a clash of IRQs I/O ports and DMAs, you must go into your BIOS and reserve the required resources for use by the ISA bus. Then windows will not try to reallocate them either. To make life easy, first look to see what resources windows uses for the NIC and use those. Windows may still work that way with the resources statically allocated, or yo umay need to force windows to use the statically allocated resources.

Linux will also respect these reserved resources.

Look at the files in /proc to see what is currently used.

/proc/interrups, /proc/ioports and /proc/dma

Now set the NIC up with the 3com utility for the IRQ, I/O and so on. Set the media type manually too, if you have a card that can connect to more than one type of network cable.

With 3c509 build as a module

```
 /sbin/modinfo 3c509
```

will tell you what module parameters 3c5409 takes, or you can read /usr/src/linux/Documentation/networking/3c509.txt

----------

## Stanley56

Sorry for the late responds, been away for a week   :Rolling Eyes: 

Tried changing irq in bios, all i can do is reserve an irq for isa

and apperantly the 3com util tries to turn of pnp but i think windows eneables it again

Isn't there a way i can make it work without touching win/bios. I imagine that the problem still is in the kernel config cuz it works with the 2.4 wich was genkernel compiled.

There must be a way to get IRQ sharing to be eneabled...

----------

## NeddySeagoon

Stanley56,

Does this box have to dual boot ?

----------

## Stanley56

Euhm yes, (i'm not the only one who uses it)

----------

## NeddySeagoon

Stanley56,

Thats a bummer. You have three choices:-

1. Make ISA Plug and Pray work in Linux, so its like Windows.

2. Make the IRQ etc assignments static in Windows, so its the same as Linux.

3. Use a PCI NIC (that could involve spending money) so thats a poor third.

I've never had to get Linux Plug and Pray working, my oler boxes are fully static everything (386SX).

I can help with 2. but its a long time since Iv'e done it.

----------

## Stanley56

Yes   :Very Happy: 

ISA Plug and Pray, that did the trick.

Why didn't i think of that in the first place  :Confused: 

Thanks man   :Wink: 

----------

