Strange networking problem on SPARC64

Pyun YongHyeon yongari at kt-is.co.kr
Mon Jul 12 19:48:04 PDT 2004


On Tue, Jul 13, 2004 at 01:03:17AM +0200, Marius Strobl wrote:
 > On Mon, Jul 12, 2004 at 08:18:07PM +0900, Pyun YongHyeon wrote:
 > > On Mon, Jul 12, 2004 at 07:04:44PM +0800, Xin LI wrote:
 > >  > Hi, folks,
 > >  > 
 > >  > My friend at Nankai University has a problem with Networking subsystem on
 > >  > FreeBSD/SPARC64. With a heavy FTP load, ipkterr raises rapidly.
 > >  > 
 > >  > As I don't have sparc64 based hardware at hand, I send this mail on behalf
 > >  > of him with a hope that someone can give him some hints to figure out what
 > >  > is happening. Please fell free if I have missed some information and I will
 > >  > forward these to him.
 > >  > 
 > >  > Hope we have provided useful information :-) fell free to ask us for more if
 > >  > necessary.
 > >  > 
 > >  > Upgrading to -CURRENT does not solved the problem. After some experiences
 > >  > we believe that this is not due to a networking hardware/device error. Same
 > >  > hardware works well under other operating system.
 > >  > 
 > >  > Here comes some detailed information:
 > >  > 
 > > ...
 > >  > hme0: <Sun HME 10/100 Ethernet> mem 0x8000-0xffff at device 1.1 on pci0
 > >  > hme0: Ethernet address: 08:00:20:e6:8a:f0
 > >  > miibus0: <MII bus> on hme0
 > >  > nsphy0: <DP83840 10/100 media interface> on miibus0
 > >             ^^^^^^^
 > >  > nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 > > ...
 > >  > /var: superblock summary recomputed
 > >  > hme0: invalid packet size 8422; dropping
 > >  > hme0: invalid packet size 7; dropping
 > >  > hme0: invalid packet size 7; dropping
 > >  > hme0: invalid packet size 7; dropping
 > >  > hme0: invalid packet size 7; dropping
 > >          ^^^^^^^^^^^^^^^^^^^^^^
 > > See the commit log(if_hme.c rev 1.27) of marius.
 > > Or see
 > > http://marc.theaimsgroup.com/?l=freebsd-sparc64&m=108942881831209&w=2
 > > 
 > 
 > Does reverting to 1.26 of if_hme.c really fix the problem or is it
 > just a workaround because auto-negotation then establishes a 100mbit
 > full-duplex link, i.e. is it also gone with 1.26 when using a half-
 > duplex link?
 > 

On hme with DP83840 PHY(SBus Ultra2),
rev. 1.26:
 - auto-negotiation works ok. Everthing seems to normal.
   (I didn't try to set 'half-duplex' mode though.)

rev. 1.27:
 - auto-negotiation fails and I always see somthing like:
      "hme0: invalid packet size 8192; dropping"
 - "ifconfig hme0 media 100baseTX mediaopt full-duplex" corrects
    the negotiation problem only.(The switch is Intel Express 460T
    and the link was fixed to full-duplex in the switch menu.)
 - When I try to send files with ftp I see the following message in
   ftp client.
  "425 Can't create data socket (xxx.xxx.xxx.xxx,20): Can't assign requested address."
   (Because ssh works well, I guess it is related with bind problem with
     hme's IP address. As you know, ssh binds with INADDR_ANY. I wonder
     how this can happen and have no idea. :-( )
   But when I set to "half-duplex"(i.e. without setting mediaopt in
   rc.conf file), sending files via ftp are ok.
 
I guess there is another problem with ifconfig mediaopt command in
addition to lack of auto-negotiation. The only way I can make hme
work correctly was to patch the source and revive the commented code
in order not to invoke ifconfig mediaopt command.

However, the method I taken has a problem too. When the system
boots hme(4)'s auto-negotiation seems to take a quite long time.
So I see "no carrier" message during the boot and my ntp configuration
doesn't work. But after a few seconds later, all seems to work ok
incling ftp transfers.

Regards,
Pyun YongHyeon
-- 
Pyun YongHyeon <http://www.kr.freebsd.org/~yongari>


More information about the freebsd-sparc64 mailing list