kern/154076: recent alc driver locks computer
Chester Lee Schmaltz
clschmaltz at gmail.com
Mon Jan 17 10:40:12 UTC 2011
>Number: 154076
>Category: kern
>Synopsis: recent alc driver locks computer
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Mon Jan 17 10:40:11 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Chester Lee Schmaltz
>Release: modified 8.1-RELEASE amd64, also on ordinary 8.2-RC2 for i386 & amd64
>Organization:
>Environment:
FreeBSD 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Sun Jan 16 22:39:49 CST 2011 root at n7010.local.xxx:/usr/obj/usr/src/sys/GENERICpatch amd64
>Description:
I'm having problems with getting the wired Atheros network card working on my new laptop (Dell N7010). The pciconf output says the device ID is 0x2060, which from the dev/alc/if_alcreg.h on the CVSweb browser indicates it is an AR8152.
I'm running 8.1-RELEASE but its version of alc doesn't support this card. So I grabbed the version of if_alc.c, if_alcreg.h, and if_alcvar.h from Aug. 20th 2010 which added support, but now after using dhclient or manually assigning an IP my computer completely locks up. A message about the interface going down, and then a second one about it coming back up are the last things I see. No error messages come up nor are written to /var/log/messages.
I also tried even more recent versions from the RELENG_8_2 branch and had to update some files in dev/mii and sys/net/if_media.h but... same results.
I have an Intel i5 processor and I'm using the amd64 architecture. GENERIC kernel or a modified one to remove unneeded stuff makes no difference.
Here is the pciconf output after updating alc:
alc0 at pci0:4:0:0: class=0x020000 card=0x04571028 chip=0x20601969 rev=0xc1 hdr=0x00
vendor = 'Attansic (Now owned by Atheros)'
class = network
subclass = ethernet
bar [10] = type Memory, range 64, base 0xf0400000, size 262144, enabled
bar [18] = type I/O Port, range 32, base 0x2000, size 128, enabled
cap 01[40] = powerspec 3 supports D0 D3 current D0
cap 05[48] = MSI supports 1 message, 64 bit enabled with 1 message
cap 10[58] = PCI-Express 1 endpoint max data 128(4096) link x1(x1)
cap 03[6c] = VPD
with plain 8.1-RELEASE it's similar but with none3@" replacing
"alc0@" and the cap 05 line doesn't say "enabled with 1 message".
The ifconfig output (with the newer driver) is:
alc0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=c3198<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MCAST,WOL_MAGIC,VLAN_HWTSO,LINKSTATE>
ether f0:4d:a2:56:b9:48
media: Ethernet autoselect
I also tried both the i386 and amd64 bootonly CD's for 8.2-RC2 and the same thing still happens if I give an IP address to alc0 with ifconfig at the holographic shell prompt.
For reference, in Linux the driver atl1c is working for it just fine.
Linux's lspci -vvv seems to git a lot more info, here it is:
04:00.0 Ethernet controller: Attansic Technology Corp. Device 2060 (rev c1)
Subsystem: Dell Device 0457
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 43
Region 0: Memory at f0400000 (64-bit, non-prefetchable) [size=256K]
Region 2: I/O ports at 2000 [size=128]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [48] MSI: Enable+ Count=1/1 Maskable- 64bit+
Address: 00000000fee0f00c Data: 4191
Capabilities: [58] Express (v1) Endpoint, MSI 00
DevCap: MaxPayload 4096 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
ExtTag- AttnBtn+ AttnInd+ PwrInd+ RBE+ FLReset-
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr+ UncorrErr+ FatalErr- UnsuppReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 unlimited, L1 unlimited
ClockPM+ Surprise- LLActRep- BwNot-
LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- Retrain- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
Capabilities: [6c] Vital Product Data
Not readable
Capabilities: [100] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP+ BadDLLP+ Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 14, GenCap+ CGenEn- ChkCap+ ChkEn-
Capabilities: [180] Device Serial Number ff-56-b9-48-f0-4d-a2-ff
Kernel driver in use: atl1c
Thanks.
>How-To-Repeat:
Use the alc driver after Aug. 30 2010, Dell N7010 laptop, Attansic/Atheros device 2060 (rev c1) wired network card.
and then run:
ifconfig alc0 192.168.100.3
(or any other IP) or
dhclient alc0
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list