tech-net archive

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

Re: PCN0 problem


On 2021/07/29 23:55, David Brownlee wrote:
On Thu, 29 Jul 2021 at 15:38, T <> wrote:

On Sat, 26 Jun 2021 21:42:48 -0000 (UTC), T wrote:

I have a problem with the pcn0 NIC on the following machine: The integrated pcn0
causes the machine to become unresponsive if interacting with it through
NetBSD. Two specific examples I can think of are:
1) When I originally obtained the system, I used the firmware net boot
functionality to load the sysinst image over the network and tried to
install packages from a NFS share. This would initiate and load into
sysinst, but then the system would become completely unresponsive during
the unpacking phase of the install, as in the screen would become frozen
on output related to unpacking the sets. Pressing the NUM_lock key would
not toggle the keyboard LED for it and no user interaction seemed to
work (remote ping, SSH, keyboard, debugger key sequence). I started
using NetBSD with this machine with one of the later version 7 releases,
from which this example originates.

2) Currently, with 9.2_STABLE, I can reproduce this problem by just
calling 'dhcpcd pcn0', which will cause the same unresponsive behavior
as mentioned above. I have worked around this issue by using an
alternative add-on NIC, but interacting with the integrated pcn NIC has
always been an issue since the original example.

The system firmware does not seem to have any problems with the NIC when
using built-in device tests or net boot functionality.

I was wondering if anyone else has had issues with this driver (likely
being used on a different port) and if the problem is likely not a
driver issue, but specific to port-prep? It has been mentioned to me on
IRC that I might need to use something like KGDB to troubleshoot the
issue, but that would need to be added to the port, because it does not
currently exist.

I did some additional testing using the firmware net boot functionality
to test sysinst.fs images for 6.2, 7.0, 7.1, 7.2, 8.0, 8.1, and 8.2 .
These all appeared to work fine when using the installer "configure
network" utility menu option and ping utility. The 9.0 sysinst.fs is too
large to work on this system so I had to switch over to the smaller
sysinst_small.fs image. This version did not work like the others, and
had a noticeable problem with the "configure network" option in the
utility menu. Attempting to select a NIC "media" would not accept values.
In prior versions, this had a populated default of (autoconfigure), but
was missing for 9.0 . Trying the sysinst_small.fs image for 8.2 worked
fine and appeared to function the same as the regular sysinst.fs image.

Some random thoughts:

- It sounds like the pcn has issues with all versions, but its much
more serious with NetBSD 9.x?
- Is there any version which works reliably (maybe boot earlier
sysinst.fs, nfs mount a remote share and tar tzf the images to try to
- Could it be related to a combination of pcn and other (eg disk)
activity - so tar tzf may not trigger but extracting would
- Does a current sysinst image from also show the
- If there is an earlier version that works 100% I'd suggest checking
the difference in dmesg between that and the first version to show the

(1) VirtualBox can optionally emulate Am79c970A, and it works fine as
    far as I can see with NetBSD/amd64-current:

pcn0 at pci0 dev 3 function 0: AMD PCnet-PCI Ethernet
pcn0: Am79c970A PCnet-PCI II rev 0, Ethernet address 08:00:27:7f:3d:2e
pcn0: interrupting at ioapic0 pin 19
pcn0: 10base5, 10base5-FDX, 10baseT, 10baseT-FDX, auto, auto-FDX

    Full dmesg is provided here:

(2) I have an Am79c971-based PCI NIC. This card works fine on a
    powerpc/ibm4xx machine running NetBSD/evbppc 9.99.86:

pcn0 at pci0 dev 3 function 0: AMD PCnet-PCI Ethernet
pcn0: Am79c971 PCnet-FAST rev 6, Ethernet address 00:06:29:ac:a5:f8
pcn0: interrupting at irq 30
nsphy0 at pcn0 phy 1: DP83840 10/100 media interface, rev. 1
nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
ukphy0 at pcn0 phy 31: Advanced Micro Devices Am79C972 internal 10BASE-T interface (OUI 0x000058, model 0x0001), rev. 1
ukphy0: 10baseT, 10baseT-FDX, auto

    I'm not sure why two MIIs are attached here, but it is linked up as
    100baseTX-FDX and scores ~20Mbps (RX) / ~30Mbps (TX) for iperf3:

# ifconfig -v pcn0
        address: 00:06:29:ac:a5:f8
        media: Ethernet autoselect (100baseTX full-duplex)
        status: active
        input: 39837 packets, 29957040 bytes, 2593 multicasts, 1695 errors
        output: 37320 packets, 41695557 bytes, 5 multicasts
        inet6 fe80::206:29ff:feac:a5f8%pcn0/64 flags 0 scopeid 0x2
        inet broadcast flags 0

    Full dmesg is uploaded here:


Home | Main Index | Thread Index | Old Index