> Hello,
> I am expiriancing a problem with FTP. I have read the thread
> "ftp-transfer runs with 16kb/s on a 100mbit lan" and I have implemented
> the fix as described by setting all network adapters on the internal lan
> to half duplex. It does work, but now here is the problem. Has
> full-duplex transfers been broken in FBSD4.4? There is NO mismatch
> between half duplex and full duplex because the switch states that all
> connected ports are running 100mbps at full duplex. I never had this
> problem under 4.2 using 100mbps at full duplex. This just started with
> 4.4. Even the two Winblows machines where having trouble with it
> FreeBSD machines although between themselves, the file transfers IS
> close to 100mbps because the transfers are happening at roughly at 10-12
> MegaBytes/sec using the same NICs as the FreeBSD machines. Gee, it
> looks like Microshaft actually did something right for a change. Any
> suggestions as to what is causing this and how to fix it? Has a bug
> report been submitted to GNATS?
> --
> Daniel Rudy
> Reply to dcrudy at aol dot com.
> *!*!* DO NOT HIT REPLY *!*!*
> ALL EMAIL SENT TO REPLY ADDRESS WILL BE DELETED!
Here's an update as to what the problem is. I have confirmed that it IS
a bug in the sis device driver. When I comment out a secion of the code
that resets the NIC, the transfers become blazingly fast. Here's the
info:
static void sis_reset(sc)
struct sis_softc *sc;
{
register int i;
SIS_SETBIT(sc, SIS_CSR, SIS_CSR_RESET);
for (i = 0; i < SIS_TIMEOUT; i++) {
if (!(CSR_READ_4(sc, SIS_CSR) & SIS_CSR_RESET))
break;
}
if (i == SIS_TIMEOUT)
printf("sis%d: reset never completed\n", sc->sis_unit);
/* Wait a little while for the chip to get its brains in order.
*/
DELAY(1000);
/*
* If this is a NetSemi chip, make sure to clear
* PME mode.
*/
/* if (sc->sis_type == SIS_TYPE_83815) {
CSR_WRITE_4(sc, NS_CLKRUN, NS_CLKRUN_PMESTS);
CSR_WRITE_4(sc, NS_CLKRUN, 0);
}
commented out due for testing pourposes */
return;
Quote:}
That peice that I commented out seems to be the cause of the slow to a
crawl and quit problem. Now I can transfer files 40MB or more at full
speed (I used a 46MB tar file for test pourposes.) It also has fixed
the NFS problem that I was having as well. PME mode is Power Management
Event as per the National Semiconductor datasheet. Credit goes to some
helpfull soul on the freebsd-questions list for pointing out this little
bit of code.
--
Daniel Rudy
Reply to dcrudy at aol dot com.
*!*!* DO NOT HIT REPLY *!*!*
ALL EMAIL SENT TO REPLY ADDRESS WILL BE DELETED!