NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/51924: makphy @ wm on Lenovo T400s no longer works properly



The following reply was made to PR kern/51924; it has been noted by GNATS.

From: Masanobu SAITOH <msaitoh%execsw.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, kern-bug-people%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc: msaitoh%execsw.org@localhost
Subject: Re: kern/51924: makphy @ wm on Lenovo T400s no longer works properly
Date: Mon, 30 Jan 2017 13:16:06 +0900

 On 2017/01/29 21:35, jarle%uninett.no@localhost wrote:
 >> Number:         51924
 >> Category:       kern
 >> Synopsis:       makphy @ wm on Lenovo T400s no longer works properly
 >> Confidential:   no
 >> Severity:       serious
 >> Priority:       medium
 >> Responsible:    kern-bug-people
 >> State:          open
 >> Class:          sw-bug
 >> Submitter-Id:   net
 >> Arrival-Date:   Sun Jan 29 12:35:00 +0000 2017
 >> Originator:     Jarle Greipsland
 >> Release:        NetBSD 7.99.59
 >> Organization:
 > 	
 >> Environment:
 > 	
 > 	
 > System: NetBSD singsaker.uninett.no 7.99.59 NetBSD 7.99.59 (GENERIC) #4: Sun Jan 29 00:15:29 CET 2017  jarle%singsaker.uninett.no@localhost:/usr/obj/sys/arch/i386/compile/GENERIC i386
 > Architecture: i386
 > Machine: i386
 >> Description:
 > I have just booted a -current i386 GENERIC kernel on my Lenovo
 > T400s laptop (userland is of 7.99.32 vintage).  There seems to be
 > something strange going on with regards to the carrier status for
 > the built in wm0 network interface.  When left unconfigured, it
 > reports 'active' as its status.  As soon as I bring the interface
 > up with ifconfig, the status changes to 'no carrier'.  However,
 > the interface will acquire an IPv6 address through SLAAC, so
 > something is working.  But the
 >
 >   'dhcpcd -6 --nodhcp6 wm0'
 >
 > command that would normally solicit a default route from the network hangs
 > waiting for carrier on the interface.  If I instead enter a static IPv6
 > default route, things behave as normal (sort of).
 >
 > # ifconfig wm0
 > wm0: flags=0x8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
 >         capabilities=7ff80<TSO4,IP4CSUM_Rx,IP4CSUM_Tx,TCP4CSUM_Rx>
 >         capabilities=7ff80<TCP4CSUM_Tx,UDP4CSUM_Rx,UDP4CSUM_Tx,TCP6CSUM_Rx>
 >         capabilities=7ff80<TCP6CSUM_Tx,UDP6CSUM_Rx,UDP6CSUM_Tx,TSO6>
 >         enabled=0
 >         ec_capabilities=7<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU>
 >         ec_enabled=0
 >         address: 00:11:22:33:44:55
 >         media: Ethernet autoselect (none)
 >         status: no carrier
 >         inet6 fe80::0211:22ff:fe33:4455%wm0 prefixlen 64 detached scopeid 0x2
 >         inet6 xxxx::0211:22ff:fe33:4455 prefixlen 64 autoconf
 >
 > This used to work just fine with a 7.99.32 kernel.  The interface is
 > autoconfigured as:
 >
 > wm0 at pci0 dev 25 function 0: 82801I mobile (AMT) LAN Controller (rev. 0x03)
 > wm0: interrupting at msi0 vec 0
 > wm0: PCI-Express bus
 > wm0: 2048 words FLASH
 > wm0: Ethernet address 00:11:22:33:44:55
 > makphy0 at wm0 phy 2: Marvell 88E1149 Gigabit PHY, rev. 1
 > makphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 >
 > I think I have identified where the regression was introduced, and the
 > culprit is -r1.428 to sys/dev/pci/if_wm.c.  If I revert that commit, a
 > -current kernel boots fine, and wm0 behaves as expected.
 
   Could you apply the following diff? Linux and FreeBSD define the device's macro
 as "E1000_DEV_ID_ICH9_IGP_M_AMT" but it's not IGP but BM.
 
 Index: if_wm.c
 ===================================================================
 RCS file: /cvsroot/src/sys/dev/pci/if_wm.c,v
 retrieving revision 1.470
 diff -u -p -r1.470 if_wm.c
 --- if_wm.c	27 Jan 2017 05:04:47 -0000	1.470
 +++ if_wm.c	30 Jan 2017 04:12:27 -0000
 @@ -8684,6 +8684,7 @@ wm_gmii_mediainit(struct wm_softc *sc, p
   		break;
   	case PCI_PRODUCT_INTEL_82801H_82567V_3:
   	case PCI_PRODUCT_INTEL_82801I_BM:
 +	case PCI_PRODUCT_INTEL_82801I_IGP_M_AMT: /* This is not IGP but BM */
   	case PCI_PRODUCT_INTEL_82801J_R_BM_LM:
   	case PCI_PRODUCT_INTEL_82801J_R_BM_LF:
   	case PCI_PRODUCT_INTEL_82801J_D_BM_LM:
 
 
 
 
 
 >> How-To-Repeat:
 > 	
 >> Fix:
 > 	
 > Revert -r1.428?
 >
 >> Unformatted:
 >  	
 >  	
 >
 
 
 -- 
 -----------------------------------------------
                  SAITOH Masanobu (msaitoh%execsw.org@localhost
                                   msaitoh%netbsd.org@localhost)
 


Home | Main Index | Thread Index | Old Index