Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Jan 2007 20:32:58 +0100
From:      Max Laier <max@love2party.net>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        freebsd-net@freebsd.org
Subject:   Re: slow writes on nfs with bge devices
Message-ID:  <200701212033.34914.max@love2party.net>
In-Reply-To: <20070121215054.C24780@delplex.bde.org>
References:  <20070121155510.C23922@delplex.bde.org> <200701210809.27770.max@love2party.net> <20070121215054.C24780@delplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1595927.pzSa1nX3oL
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Sunday 21 January 2007 13:25, Bruce Evans wrote:
> On Sun, 21 Jan 2007, Max Laier wrote:
> > On Sunday 21 January 2007 07:25, Bruce Evans wrote:
> >> nfs writes much less well with bge NICs than with other NICs (sk,
> >> fxp,
> >
> > Do you use hardware checksumming on the bge?  There is an XXX in
> > bge_start_locked() that looks a bit suspicious to me.
>
> I use the default for that.  Wouldn't checksum problems show up as
> errors somwhere?

Did you look at the code in question?  It is concerned with fragmented=20
packet chains (which NFS over UDP usually generated) and only commits to=20
sending them, if there are enough descriptors available at once.  This=20
can easily explain burstyness.

Can you just try to disable the delayed checksums via "ifconfig -txcsum"? =
=20
Should be an easy enough test.

> >>> [excessive quoting deleted]
>
> tcpdump shows a lot of intervals between nfs write requests of almost
> exactly 10 mS (even with HZ =3D 1000, but more obvious with HZ =3D 100)
> for the broken case, so the problem is apparently related to timeouts,
> or timeouts are masking a larger problem.  (The average interval
> between write requests needs to be about 683 uS to avoid wasting any
> bandwith. fxp <-> fxp on the same network averages 708 uS.  fxp <-> bge
> 5701 averages 3981.)

See above, I really think that there is something about that if_start loop=
=20
that might be causing this.

=2D-=20
/"\  Best regards,                      | mlaier@freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier@EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News

--nextPart1595927.pzSa1nX3oL
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (FreeBSD)

iD8DBQBFs8AOXyyEoT62BG0RAhh5AJ9gf9+sPSC4Eur4cxo3Qnm1xPGmFgCdFZn7
yecaaZcGElSbDiPS6zx3USA=
=4wpX
-----END PGP SIGNATURE-----

--nextPart1595927.pzSa1nX3oL--



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