Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Apr 1997 21:46:45 +0900
From:      NISHIO Shuichi <nishio@caleche.kecl.ntt.co.jp>
To:        freebsd-smp@FreeBSD.org
Subject:   Tyan ATX1668 problem -- success
Message-ID:  <19970425214645B.nishio@elysium.kecl.ntt.co.jp>

next in thread | raw e-mail | index | archive | help
Hello,

Early in this month, I asked about the problem with the 5th PCI slot
on Tyan S1668, which was not recognized correctly when using APIC_IO.
Someone (Mr. Steve Passe <smp@csn.net>? I've lost most of my mails due 
to disk crashes) sent me a patch to fix this, but I could not try this
until last Sunday.


This is the suggested fix in i386/i386/mp_machdep.c
--- start ---
#define TYAN_S1668_ROGUE

#if defined( TYAN_S1668_ROGUE )
/** NOTE: this might be some other #, we are guessing... */
#define TYAN_S1668_SLOT5_IRQ    16

int
get_pci_apic_irq( int pciBus, int pciDevice, int pciInt )
{
    int intr;

  if ( (pciBus == 0) && (pciDevice == 10) ){
    return TYAN_S1668_SLOT5_IRQ;
  }
#else
int
get_pci_apic_irq( int pciBus __attribute__ ((unused)),
                  int pciDevice, int pciInt )
{
    int intr;
#endif
    /**
     * FIXME: how do we associate a SPECIFIC PCI bus with a unique bus ID???
     */

--- end ---

So, last Sunday, I cvsup'ed the SMP code and the entire current, did a
'make World', and tried the SMP kernel with this fix and APIC_IO. 

I tried defining TYAN_S1668_SLOT5_IRQ as 16 and 20, but only as 16 
did the 5th PCI card (DEC FastEtherworks) got recognized.
(16 is the one for the 1st slot)

However, there still was some problems.

1. /bin/ps -a sometimes freezes
	sometimes, when I tried to see root processes with 'ps -a',
	it just freezes. The system keeps on running, but I couldn't
	kill the 'ps' process.

2. panic on heavy traffic
	This could be easily reproduced by transfering large files
	simultaneously on 2 network interfaces using ftp or NFS.
	(this system is connected to one 10BaseT and one 100BaseTX net)

I also experienced crashes on dumping filesystems to DAT, but this
might be due to the problem with the AIC driver.


Last evening, I tried a kernel with XFAST_IPI32 defined (and also the
latest current), and these problems seems to go away: 
I tried
	making kernel with -j8
	'put'ting a 180MB file from FreeBSD to SGI O2 on 100BaseTX
	'get'ting a 60MB file from O2 to FreeBSD
	dumping /home to DAT

simultaneously, but it went through, without going panic.

Additionaly, I don't know why, but the network transfer rate seems to
have raised to 55Mb/s after defining XFAST_IPI32, from 45Mb/s with the
previous kernel.

So, in summary, the recent fix including XFAST_IPI32 seems to be
working very fine here.

Thank you very much.


Nishio Shuichi



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970425214645B.nishio>