# Attansic L1 NIC keeps stalling/disconnecting

## thubble

I just bought a new motherboard (Asus P5B-Plus) which has an onboard Attansic L1 NIC. I got it to connect using the atl1 driver in kernel 2.6.22. It seems to work OK, and the speed is the same as my old card, but there's a strange problem where under heavy network load it will stall or lock up for a while. It will just slow down to an absolute crawl (running ifconfig repeatedly shows it sends about 1 packet about every 2-3 seconds, and I can't do anything network related. Nothing responds.) If I bring the pppoe interface down and try to reconnect immediately, it will fail, but if I disconnect and wait about 5 minutes it connects again.

Here's some ifconfig output during one of these crashes (is this a lot of collisions compared to TX packets?):

```
eth0      Link encap:Ethernet  HWaddr 00:1A:92:E9:EB:22

          inet addr:192.168.0.10  Bcast:192.168.0.255  Mask:255.255.255.0

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

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

          TX packets:5309 errors:0 dropped:0 overruns:0 carrier:2

          collisions:2035 txqueuelen:1000

          RX bytes:7372925 (7.0 Mb)  TX bytes:586640 (572.8 Kb)
```

and ppp0 (I took this after I reconnected, which is why there are so few TX/RX packets. I'm just including this to show ppp settings. I x'd out my IP, but it was valid.):

```
ppp0      Link encap:Point-to-Point Protocol

          inet addr:xxx.xxx.xxx.xxx  P-t-P:xxx.xxx.xxx.xxx  Mask:255.255.255.255

          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1

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

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

          collisions:0 txqueuelen:3

          RX bytes:492426 (480.8 Kb)  TX bytes:63765 (62.2 Kb)
```

Only thing I could find that looked similar to my problem was this: http://www.ussg.iu.edu/hypermail/linux/kernel/0612.1/0628.html - apparently the atl1 driver has really bad TSO (tcp segmentation offload) support. I've checked and my TSO is off:

```
ethtool -k eth0

Offload parameters for eth0:

Cannot get device udp large send offload settings: Operation not supported

rx-checksumming: on

tx-checksumming: on

scatter-gather: on

tcp segmentation offload: off

udp fragmentation offload: off

generic segmentation offload: off
```

I've tried both building the driver into the kernel and using it as a module.

I'm using the exact same settings/configuration as with my old card (rtl8139) which worked perfectly. Same cable, too, running straight to the DSL modem, no router or firewall. I wish I could try it in Windows, but XP doesn't seem to like switching motherboards without changing the master boot record, and my XP install CD is nowhere to be found.  :Sad: 

Anyone have any suggestions? Thanks in advance.

----------

## didymos

I notice you're using 2.6.22.  Given that that's unstable at the moment, it's possible changes to that driver have been made since 2.6.21 that introduced a bug. Or the bug could be at a lower-level.  You'd have to

check the changelogs at kernel.org

----------

## Conzar

I've noticed that using the nic with DHCP works fine; however, when you set the IP address statically as well as the gateway, that the driver ignores your setting for the gateway and therefore can't get passed the local network.

Any hints on if this is a driver issue?

----------

## didymos

Are you talking about setting the IP and gateway in /etc/conf.d/net?  What's in there currently?

----------

## Conzar

sure am.

I don't have the config in front of me but I think its something like this

```

config_eth1=( "192.168.0.40 netmask 255.255.255.0 brd 192.168.0.255" )

gateways_eth1=( "192.168.0.1" )

```

Note, for some reason, the drive picks eth1 instead of eth0 (so if you do an ifconfig -a it lits eth1 instead of eth0).

----------

## didymos

OK, try this instead:

```

config_eth1=( "192.168.0.40 netmask 255.255.255.0 brd 192.168.0.255" ) 

routes_eth1=( "default via 192.168.0.1" )

```

----------

## didymos

Oh, yeah, that other thing.  Delete the file /etc/udev/rules.d/70-persistent-net.rules and when you reboot the nic should be back to eth0.  Change /etc/conf.d/net before or after; doesn't really matter.

----------

## Conzar

Hey man.  Thanks for the help.  Removing the rules files fixed the eth1/eth0 problem.  I've modified the config to match what you have and I still can't get out of the router.

I've also tried this:

```

routes_eth0=(" default gw 192.168.0.1" )

```

Still no joy.  When I restart the eth0, it does say it adds the gateway route.

Also, my switch that I have this computer plugged into indicates that its not running at GigE, it shows it at 10/100Mb.  Any clue on that either?

Thanks for the help!

----------

## didymos

Not sure about the gigE thing.  I do have another idea that probably won't work.  Let it get the IP address, then do:

```

ip route add default via 192.168.0.1

```

What does the 192.168.0.1 address belong to anyway?

----------

## Conzar

So I don't actually have the 

```
 ip 
```

 command.  This is from the no network install on the 2007.0 live cd.  The address is to my router.  I have other gentoo boxes (with different nics) that work when pointed to the router too.

----------

## didymos

It's part of the iproute2 package.  The ifconfig command comes from net-tools, which is still usable, but pretty old and was last released ages ago.  It appears to have been resurrected,sort of, but no releases yet.

iproute2 however, is quite active and usually pretty up-to-date with respect to the kernel networking features.

----------

## Conzar

I gave up and bought a $10 Gb Nic from New Egg (I know this one works b/c I have it in another machine).  Oh wells.

----------

## thubble

An update: I'm now using moo-sources 2.6.22, which only has the Gentoo and CK patchsets. It has the SD scheduler (was using CFS) before and HZ=1000 (was using 867 before). I'm still having the same problem. This is definitely a driver issue. I wish I could boot into Windows to test the card, but XP bluescreens on startup on this machine.

----------

## pdr

I had the P5V-LM (micro-atx version of P5) that also has the Attansic - before the Attansic driver was in the stable kernel. I too bought a nic at NewEgg (a PCIe card) that works well with the sky2 driver.

I had seen a number of posts like yours complaining about the Attansic stalling, etc - so when I replaced my board with the P5B Deluxe recently, I put my PCIe nic back in - it runs well, was cheap, and runs off the PCIe bus. Works out I don't need it - in the Deluxe the GB nic is a marvell chip (the second port is also a Marvell chip, but it runs off the PCI bus, not PCIe). I left the nic card in..

----------

## thubble

Well, some sort-of good news - I just tried the card in Windows Vista using the default Vista driver, and the same thing happened! So at least it's not the driver. Maybe I got a defective motherboard, or it's just a terrible NIC.

----------

## l05443

hey thubble,

have you got any update on your stall issue? I'm in the same situation. Ran across it, when I was transferring files over FTP.

----------

## thubble

 *l05443 wrote:*   

> hey thubble,
> 
> have you got any update on your stall issue? I'm in the same situation. Ran across it, when I was transferring files over FTP.

 

nope... since it doesn't work in Windows either I guess I either got a defective motherboard or this just isn't a very good ethernet controller. Google doesn't reveal anyone else having this problem. I've given up and installed a PCI network card.

----------

