Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 02 Apr 1999 17:14:45 -0800
From:      jbarbee@singular.com (John Barbee)
To:        Bill Paul <wpaul@skynet.ctr.columbia.edu>
Cc:        questions@freebsd.org
Subject:   Re: !!! pn0: watchdog timeout
Message-ID:  <4.1.19990402171046.00a3b700@server7.singular.com>
In-Reply-To: <199904022046.PAA13721@skynet.ctr.columbia.edu>
References:  <4.1.19990402095653.00a3ab20@server7.singular.com>

next in thread | previous in thread | raw e-mail | index | archive | help
OK, the new driver seems to have fixed it.  I didn't even have to try out
store 
and forward mode.  I got some errors when I took LeechFTP up to 17 sessions
but they seem to be more ftp related.  Transferring files via SMB went through
without errors.

Thank you so very much Bill for the new drivers.

Has anyone noticed a latency on these cards?  On both the FreeBSD and
redhat machine I having trouble pinging a number of hosts on our network
right when these machines start up.  The ping either hangs or says sendto:
host is down, or something like that.  After about 30 - 60 seconds things
seems to be ok.  Strange, but at least it works after not too long.

john.


At 03:46 PM 4/2/99 -0500, Bill Paul wrote:
>Of all the gin joints in all the towns in all the world, John Barbee had 
>to walk into mine and say:
>
>> At 09:17 PM 4/1/99 -0500, Bill Paul wrote:
>> 
>> >First of all, you didn't tell me what version of FreeBSD you have, you
>> >didn't say in what kind of machine the card is installed, and you didn't
>> >say exactly what brand/model of ethernet card you have. It's important 
>> >that you do so because I can't see your machine from here. The
>> >cause of the errors could be one of a few things:
>> 
>> Sorry.  Allow me go describe the situation.
>[chop]
>
>Okay. Let's try this. I have made some changes to the PNIC driver since
>FreeBSD 3.1-RELEASE. For one thing, I changed the TX queuing mechanism
>a little bit. (There are also some changes to make it work on FreeBSD/alpha
>but you shouldn't notice them when compiling on FreeBSD/i386.) You can
>get the new driver in one of two ways (the files at both locations should
>be identical):
>
>- FTP to ftp.freebsd.org:/pub/FreeBSD/FreeBSD-current/src/sys/pci
>  and download if_pn.c and if_pnreg.h.
>
>- Use fetch(1) or a web browser to go to 
>  http://www.freebsd.org/~wpaul/PNIC/3.0 and download if_pn.c and if_pnreg.h
>  from there instead. NOTE: if you download with Netscape or Internet
>  Explorer, check that the files aren't littered with ^Ms. If they are,
>  strip them out otherwise they'll confuse the compiler.
>
>The revision string in the code should say:
>	$Id: if_pn.c,v 1.10 1999/03/30 19:33:47 wpaul Exp $
>
>Copy the new if_pn.c and if_pnreg.h to /sys/pci on your machine and
>compile a new kernel. (If you already have a build directory in
>/sys/compile/YOURKERNEL then it should be enough to just cd to
>/sys/compile/YOURKERNEL and type make. If you want to recompile from
>scratch though, go right ahead.)
>
>You can also attempt to change the transmit threshold. In if_pn.c, there
>is a function called pn_init() which initializes the PNIC chip. There
>you'll see the following line of code:
>
>        PN_CLRBIT(sc, PN_NETCFG, PN_NETCFG_STORENFWD);
>
>Changes this to:
>
>        PN_SETBIT(sc, PN_NETCFG, PN_NETCFG_STORENFWD);
>
>This will turn on store and forward mode, which is the slowest operating
>mode but the most reliable. I don't think it will make a tremendous
>difference in terms of speed since you're using 10Mbps. The difference
>is more pronounced at 100Mbps.
>
>You can also experiment with increasing the threshold instead of turning
>it off entirely. In the same function, you'll see this:
>
>        PN_SETBIT(sc, PN_NETCFG, PN_TXTHRESH_72BYTES);
>
>You can try changing this to PN_TXTHRESH_96BYTES, PN_TXTHRESH_128BYTES
>or PN_TXTHRESH_160BYTES.
>
>Just so you know, the transmit threshold is used by the NIC to decide
>when to begin transmitting onto the wire. If you turn on store and
>forward mode, the chip waits until the entire packet has been loaded
>into its internal SRAM before doing a transmission. When store and
>forward mode is turned off, it will wait until a certain number of bytes
>have been transfered into its memory before starting to transmit. This
>certain number of bytes is controller by the threshold value above.
>
>-Bill
>
>-- 
>=============================================================================
>-Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
>Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
>Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
>=============================================================================
> "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness"
>=============================================================================



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




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