Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Nov 2010 17:40:22 -0800
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Rick Macklem <rmacklem@uoguelph.ca>
Cc:        alc@freebsd.org, freebsd-current@freebsd.org
Subject:   Re: re(4) driver dropping packets when reading NFS files
Message-ID:  <20101108014022.GG1279@michelle.cdnetworks.com>
In-Reply-To: <74999496.222044.1289178871881.JavaMail.root@erie.cs.uoguelph.ca>
References:  <20101108002601.GC1279@michelle.cdnetworks.com> <74999496.222044.1289178871881.JavaMail.root@erie.cs.uoguelph.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 07, 2010 at 08:14:31PM -0500, Rick Macklem wrote:
> > 
> > If that made difference, all other ethernet controllers would have
> > suffered from the similar issues.
> > 
> Well, some commit done between June 7 and June 15 made a difference,
> but I have no idea what or why.
> 
> Also, I had a report of very poor read rate from someone using a bge(4)
> interface, but I have no reason to believe it is because of the same
> issue.
> 
> > 
> > If you have some spare time please try attach one. I guess fast
> > ethernet controller has smaller FIFO size than that of GigE
> > controller so it is frequently triggered the issue on fast ethernet
> > controller than GigE controllers. I still guess that there are
> > cases that an interrupt is not correctly served such that driver
> > missed a lot of frames.
> > 
> Patch didn't help. If anything it degrading things a bit (stats are
> attached).
> 

By chance, how about disabling RX early interrupt?
You can add the following 3 lines of code into re_init_locked().

2710         /*
2711          * Set the initial RX configuration.
2712          */
2713         re_set_rxmode(sc);
2714 
2715         /* Disable RX early interrupt. */
2716         cfg = CSR_READ_2(sc, RL_MULTIINTR);
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2717         cfg &= 0xF000;
             ^^^^^^^^^^^^^^
2718         CSR_WRITE_2(sc, RL_MULTIINTR, cfg);
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2719 
2720 #ifdef DEVICE_POLLING



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