- this change was submitted by ecelca@yahoo.com and turned into a patch

by Bryce.  For ecelca@yahoo it fixes ping packet loss, but for Psyon
  it causes 100% packet loss.
This commit is contained in:
Bryce Denney 2001-08-10 17:19:18 +00:00
parent ccb7ac407f
commit d3417529f3

View File

@ -0,0 +1,46 @@
----------------------------------------------------------------------
Patch name: patch.ne2k-start-bit
Author: ece lca <ecelca@yahoo.com>
Date: Wed, 8 Aug 2001 17:53:06 -0700 (PDT)
RCS Id: $Id: patch.ne2k-start-bit,v 1.1 2001-08-10 17:19:18 bdenney Exp $
Detailed description:
I compiled Bochs on Linux and installed a linux
in it, but when I ping a machine on my LAN, I get
packet loss. Sometimes as much as 70% is lost.
So I read ne2k.cc, Linux 8390 driver and 8390 chip
specification. I find that 8390 command register START
bit is misused in ne2k.cc. According to the chip
specification, even if START=0, the chip does not stop
working.
Patch was created with:
cvs diff -c
Apply patch to what version:
CVS
Instructions:
To patch, go to main bochs directory.
Type "patch -p0 < THIS_PATCH_FILE".
----------------------------------------------------------------------
RCS file: /cvsroot/bochs/bochs/iodev/ne2k.cc,v
retrieving revision 1.18
diff -c -r1.18 ne2k.cc
*** iodev/ne2k.cc 2001/06/27 20:27:49 1.18
--- iodev/ne2k.cc 2001/08/10 17:15:45
***************
*** 1063,1069 ****
BX_DEBUG(("rx_frame with length %d", io_len));
! if ((BX_NE2K_THIS s.CR.start == 0) ||
(BX_NE2K_THIS s.page_start == 0) ||
(BX_NE2K_THIS s.TCR.loop_cntl != 0)) {
return;
--- 1063,1069 ----
BX_DEBUG(("rx_frame with length %d", io_len));
! if ((BX_NE2K_THIS s.CR.stop == 0) ||
(BX_NE2K_THIS s.page_start == 0) ||
(BX_NE2K_THIS s.TCR.loop_cntl != 0)) {
return;