From owner-freebsd-stable@FreeBSD.ORG Tue Apr 8 18:40:13 2014 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B5FD49B; Tue, 8 Apr 2014 18:40:13 +0000 (UTC) Received: from udns.ultimateDNS.NET (ultimatedns.net [209.180.214.225]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 37B39136C; Tue, 8 Apr 2014 18:40:12 +0000 (UTC) Received: from udns.ultimateDNS.NET (localhost [127.0.0.1]) by udns.ultimateDNS.NET (8.14.5/8.14.5) with ESMTP id s38IhQEo005129; Tue, 8 Apr 2014 11:43:32 -0700 (PDT) (envelope-from bsd-lists@bsdforge.com) Received: (from www@localhost) by udns.ultimateDNS.NET (8.14.5/8.14.5/Submit) id s38IhJem005126; Tue, 8 Apr 2014 11:43:19 -0700 (PDT) (envelope-from bsd-lists@bsdforge.com) Received: from udns.ultimatedns.net ([209.180.214.225]) (UDNSMS authenticated user chrish) by ultimatedns.net with HTTP; Tue, 8 Apr 2014 11:43:21 -0700 (PDT) Message-ID: In-Reply-To: <20140408043848.GA1372@michelle.cdnetworks.com> References: <1396384167.81853.210.camel@revolution.hippie.lan> <41917a9e67d0f4519df4b55f3aa6ebe3.authenticated@ultimatedns.net> <20140402003912.GA2938@michelle.cdnetworks.com> <3f97f5646629043fed5e34a77c9c2f3d.authenticated@ultimatedns.net> <20140402020803.GB2938@michelle.cdnetworks.com> <70cd5de109845e30fcb6516af7a6f9de.authenticated@ultimatedns.net> <20140407015104.GC3543@michelle.cdnetworks.com> <16934e2751614ab9235ac00c6b6bb2d7.authenticated@ultimatedns.net> <20140407060351.GA1357@michelle.cdnetworks.com> <366dff3399e9d5960e5a89902cb81dc3.authenticated@ultimatedns.net> <20140408043848.GA1372@michelle.cdnetworks.com> Date: Tue, 8 Apr 2014 11:43:21 -0700 (PDT) Subject: Re: miibus0: mii_mediachg: can't handle non-zero PHY instance 31 From: "Chris H" To: pyunyh@gmail.com User-Agent: UDNSMS/2.0.3 MIME-Version: 1.0 Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal Cc: freebsd-net , freebsd-stable , Ian Lepore X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Apr 2014 18:40:13 -0000 > On Mon, Apr 07, 2014 at 09:40:53AM -0700, Chris H wrote: >> > On Sun, Apr 06, 2014 at 10:49:27PM -0700, Chris H wrote: >> >> > On Thu, Apr 03, 2014 at 01:18:19PM -0700, Chris H wrote: >> >> >> > On Tue, Apr 01, 2014 at 05:53:51PM -0700, Chris H wrote: >> >> >> >> > On Tue, Apr 01, 2014 at 01:40:58PM -0700, Chris H wrote: >> >> >> >> >> > On Tue, 2014-04-01 at 13:19 -0700, Chris H wrote: >> >> >> >> >> >> [...] >> >> >> >> >> >> miibus0: on nfe0 >> >> >> >> >> >> rlphy0: PHY 0 on miibus0 >> >> >> >> >> >> rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto, auto-flow >> >> >> >> >> >> rlphy1: PHY 1 on miibus0 >> >> >> >> >> > [...]---big-snip--8<--- >> >> >> >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 1 >> >> >> >> >> >> >> >> >> >> >> >> As you can see, it looks much the same. I have no idea what >> >> >> >> >> >> I should do to better inform the driver/kernel how to better >> >> >> >> >> >> handle it. Or is it the driver, itself? >> >> >> >> >> >> >> >> >> >> >> >> Thank you again, for your thoughtful response. >> >> >> >> >> >> >> >> >> >> >> >> --Chris >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> > I think the way to fix a phy that responds at all addresses is to set a >> >> >> >> >> > hint in loader.conf masking out the ones that aren't real, like so: >> >> >> >> >> > >> >> >> >> >> > hint.miibus.0.phymask="1" >> >> >> >> >> > >> >> >> >> >> > You might be able to set ="0x00000001" to make it more clear it's a >> >> >> >> >> > bitmask, but I'm not sure of that. >> >> >> >> >> >> >> >> >> >> Thank you very much for the hint. I'll give it a shot. >> >> >> >> >> Any idea why this is happening? I have 4 other MB's using the Nvidia >> >> >> >> >> chipset, and the nfe(4) driver. But they don't respond this way. >> >> >> >> >> >> >> >> >> > >> >> >> >> > If some nfe(4) variants badly behave in probing stage, this should >> >> >> >> > be handled by driver. We already have too many hints and tunables >> >> >> >> > and I don't think most users know that. In addition, adding >> >> >> >> > additional NIC may change miibus instance number. >> >> >> >> > >> >> >> >> > Could you show me the output of 'kenv | grep smbios'? >> >> >> >> Yes, of course. >> >> >> >> >> >> >> >> Here it is: >> >> >> >> >> >> >> >> smbios.bios.reldate="11/22/2010" >> >> >> >> smbios.bios.vendor="American Megatrends Inc." >> >> >> >> smbios.bios.version="V2.7" >> >> >> >> smbios.chassis.maker="MSI" >> >> >> >> smbios.chassis.serial="To Be Filled By O.E.M." >> >> >> >> smbios.chassis.tag="To Be Filled By O.E.M." >> >> >> >> smbios.chassis.version="2.0" >> >> >> >> smbios.memory.enabled="2097152" >> >> >> >> smbios.planar.maker="MSI" >> >> >> >> smbios.planar.product="K9N6PGM2-V2 (MS-7309)" >> >> >> >> smbios.planar.serial="To be filled by O.E.M." >> >> >> >> smbios.planar.version="2.0" >> >> >> >> smbios.socket.enabled="1" >> >> >> >> smbios.socket.populated="1" >> >> >> >> smbios.system.maker="MSI" >> >> >> >> smbios.system.product="MS-7309" >> >> >> >> smbios.system.serial="To Be Filled By O.E.M." >> >> >> >> smbios.system.uuid="00000000-0000-0000-0000-406186cd4497" >> >> >> >> smbios.system.version="2.0" >> >> >> >> smbios.version="2.6" >> >> >> >> >> >> >> >> Hope this helps, and thank you for all your time, and trouble. >> >> >> >> >> >> >> > >> >> >> > Thanks for the info. Try attached patch and let me know how it >> >> >> > works. Make sure to remove the hint(hint.miibus.0.phymask="1") >> >> >> > set in loader.conf before testing it. >> >> >> >> >> >> Hello, and thanks for all the attention. >> >> >> Sorry for the delay. I chose to perform a dump(8) before attempting >> >> >> the KERn rebuild with the patch. But the kernel threw a read error >> >> >> message on one of the drives. So I had to sort out the problem on >> >> >> the drive before I could complete the dump. Then, of course I had >> >> >> to reslice, and format another drive to replace the ailing one, >> >> >> before I could perform a restore(8), and start the nfe patch; build >> >> >> && install kernel. Weird; the drive had only a few hours on it. >> >> >> Well, anyway. The patch applied cleanly. So I built, and installed >> >> >> a new kernel with it. X's out the hint.miibus.0.phymask="0x00000001" >> >> >> in loader.conf(5), and bounced the box. Bad news: >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 31 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 30 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 29 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 28 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 27 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 26 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 25 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 24 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 23 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 22 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 21 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 20 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 19 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 18 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 17 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 16 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 15 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 14 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 13 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 12 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 11 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 10 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 9 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 8 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 7 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 6 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 5 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 4 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 3 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 2 >> >> >> miibus0: mii_mediachg: can't handle non-zero PHY instance 1 >> >> >> >> >> >> Just as before. In case it should make any difference; I'm >> >> >> going to attach my copy of src/sys/dev/nfe/if_nfe.c in case >> >> >> there are any differences in mine, that do not coincide with >> >> >> your version/copy (I'm on releng_9 - 9.2-STABLE) >> >> >> >> >> >> FreeBSD demon0 9.2-STABLE FreeBSD 9.2-STABLE #0 r263756M: >> >> >> Thu Apr 3 12:42:03 PDT 2014 >> >> >> root@demon0:/usr/obj/usr/src/sys/DEMON0 amd64 >> >> >> >> >> >> Best wishes, and thanks again. >> >> >> >> >> > >> >> > Oops, could you show me the output of "pciconf -lcbv"? >> >> >> >> Yes. Of course. >> >> >> > >> > [...] >> > >> >> nfe0@pci0:0:7:0: class=0x068000 card=0x73091462 chip=0x03ef10de rev=0xa2 hdr=0x00 >> >> vendor = 'nVidia Corporation' >> >> device = 'MCP61 Ethernet' >> >> class = bridge >> >> bar [10] = type Memory, range 32, base 0xdff7d000, size 4096, enabled >> >> bar [14] = type I/O Port, range 32, base 0xe480, size 8, enabled >> >> cap 01[44] = powerspec 2 supports D0 D1 D2 D3 current D0 >> >> cap 05[50] = MSI supports 8 messages, 64 bit, vector masks enabled with 8 messages >> >> cap 08[6c] = HT MSI fixed address window enabled at 0xfee00000 >> > >> > Thanks a lot for the info. It seems I missed there are 4 variants >> > for MCP61. Try attached patch again. >> >> Greetings, and thank you for your continued efforts. >> I just applied the patch, and built/installed a kernel with it. >> The results are in: >> >> /boot/loader.conf: >> loader_logo="beastiebw" >> #hint.miibus.0.phymask="0x00000001" >> >> relevant output from dmesg(8): >> nfe0: port 0xe480-0xe487 mem >> 0xdff7d000-0xdff7dfff >> irq 20 at device 7.0 on pci0 >> nfe0: attempting to allocate 8 MSI vectors (8 supported) >> msi: routing MSI IRQ 257 to local APIC 0 vector 56 >> msi: routing MSI IRQ 258 to local APIC 0 vector 57 >> msi: routing MSI IRQ 259 to local APIC 0 vector 58 >> msi: routing MSI IRQ 260 to local APIC 0 vector 59 >> msi: routing MSI IRQ 261 to local APIC 0 vector 60 >> msi: routing MSI IRQ 262 to local APIC 0 vector 61 >> msi: routing MSI IRQ 263 to local APIC 0 vector 62 >> msi: routing MSI IRQ 264 to local APIC 0 vector 63 >> nfe0: using IRQs 257-264 for MSI >> nfe0: Using 8 MSI messages >> miibus0: on nfe0 >> rlphy0: PHY 0 on miibus0 >> rlphy0: OUI 0x000004, model 0x0020, rev. 1 >> rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto, auto-flow >> nfe0: bpf attached >> nfe0: Ethernet address: 40:61:86:cd:44:97 >> ... >> vlan: initialized, using hash tables with chaining >> ... >> lo0: bpf attached >> ... >> >> Hmmm. I think we have a winner. No? > > Thanks a lot for testing. Thank YOU for working on this! > I'll commit it within a couple of days. Good news. > >> The only thing that I noticed that appeared to be different. >> Is that it takes some 5 seconds to get from: >> >> nfe0: link state changed to DOWN >> nfe0: link state changed to UP >> >> to: >> >> Starting Network: ... >> >> output. I don't know that your patch had anything to do with > > I don't think the patch may result in the change you've seen. > Auto-negotiation may take several seconds and that might be reason > you see the difference. Link up message does not necessarily mean > it resolved speed/duplex of link against link partner. nfe(4) > explicitly checks whether it established a valid link(i.e. link > should be up and speed/duplex also should be resolved). OK. I have 3 others using nfe(4), and they don't take as long. So thought it might be worth mentioning -- no finger pointing, just saying. :) I'll keep an eye on it. I'm guessing it's probably just the difference in version of chip, or something similar. Thanks again. --Chris > >> that. Or it's just another anomaly with the driver/NIC. But it >> was a long enough period/change, that I thought it worth >> mentioning. >> >> Thank you again, for all your time, and efforts. >> >> --Chris >> >> >> > >> > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" >