Date: Sat, 1 Nov 1997 01:58:46 +0900 (JST) From: greg@greg.rim.or.jp To: FreeBSD-gnats-submit@FreeBSD.ORG Cc: greg@greg.rim.or.jp Subject: kern/4909: de ethernet driver is crazy on 100base Message-ID: <199710311658.BAA01018@izanami.greg.rim.or.jp> Resent-Message-ID: <199710311730.JAA21581@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 4909 >Category: kern >Synopsis: de ethernet driver is crazy on 100base >Confidential: yes >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Oct 31 09:30:01 PST 1997 >Last-Modified: >Originator: Kensaku Masuda >Organization: >Release: FreeBSD 2.2.5-RELEASE i386 >Environment: I use DEC-21140 based ether net card for 100BASE-FX. And kernel configuration file is so ... # # Generic machine information # machine "i386" cpu "I486_CPU" cpu "I586_CPU" cpu "I686_CPU" ident APOLLON maxusers 20 # # System configuration # options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device options BOUNCE_BUFFERS #include support for DMA bounce buffers options UCONSOLE #Allow users to grab the console options "NCONS=6" # 5 virtual consoles and 1 X console options USER_LDT options SYSVSHM options SYSVSEM options SYSVMSG options PROBE_VERBOSE options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c options INCLUDE_CONFIG_FILE # # Network configuration # options INET #InterNETworking options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] # # File system configuration # options FFS # Berkeley Fast File System options MFS # Memory File System options NFS # Network File System options KERNFS options PROCFS # # Kernel configuration # config kernel root on sd0 # # Bus Contoroler configuration # controller isa0 controller pci0 # # On-board device configuration # device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr device npx0 at isa? port "IO_NPX" irq 13 vector npxintr device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr device lpt0 at isa? port "IO_LPT1" tty irq 7 vector lptintr controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr # # ISA Add on card configuration # controller snd0 options "SBC_IRQ=5" options "SBC_BASE=0x220" options "SBC_DMA=1" options "__SGNXPRO__" device sb0 at isa? port "SBC_BASE" irq 5 drq 1 vector sbintr device opl0 at isa? port 0x388 # # PCI Add on card configuration # controller bt0 # PCI SCSI host adapter controller bt1 # PCI SCSI host adapter controller ncr0 # PCI SCSI host adapter controller ncr1 # PCI SCSI host adapter device de0 # PCI Ethernet adapter device de1 # PCI Ethernet adapter # # SCSI configuration # controller scbus0 at bt0 controller scbus1 at ncr0 # Fixed Disk drive device sd0 device sd1 device sd2 device sd3 device sd4 device sd5 device sd6 device sd7 # Optical Disk drive #device od0 # Tape drive device st0 # CDROM drive device cd0 # # Other device configuration # disk fd0 at fdc0 drive 0 # # Pseudo Device configuration # pseudo-device loop pseudo-device ether pseudo-device log pseudo-device pty 32 pseudo-device speaker pseudo-device gzip # Exec gzipped a.out's pseudo-device bpfilter 4 pseudo-device vn pseudo-device ccd 4 #Concatenated disk driver >Description: The ethernet driver look like sending broken packet(So, aliment error/CRC error). Becouse, other machine look and report to me. >How-To-Repeat: Connect 100BASE-FX ethernet port and 100/10BASE switching hub, Like this, Machine-A Machine-B Machine-C | | | +---+---------------+----+ +----------------+ | 100BASE-FX dam hub | | 10BASE dam hub | +----------+-------------+ +--------+-------+ | +--------------------------+ | +-------| 100/10BASE switching hub |-----+ Segment-A +--------------------------+ Segment-B 1st, Machine-A send a large packet into machine-B. Case of 50% ? packet is OK, But some packet look like broken for Machine-B/Switching Hub. >Fix: This patch is stoping these BUG. --- if_de.c.orig Fri Oct 31 20:52:47 1997 +++ if_de.c Sat Nov 1 01:29:45 1997 @@ -946,6 +946,16 @@ } static void +tulip_21140_smc9332_media_select( + tulip_softc_t * const sc) +{ + sc->tulip_cmdmode |= TULIP_CMD_STOREFWD|TULIP_CMD_MUSTBEONE + |TULIP_CMD_BACKOFFCTR; + sc->tulip_flags |= TULIP_LINKUP; + tulip_media_select(sc); +} + +static void tulip_21040_mediainfo_init( tulip_softc_t * const sc, tulip_media_t media) @@ -1742,7 +1752,7 @@ static const tulip_boardsw_t tulip_21140_smc9332_boardsw = { TULIP_21140_SMC_9332, tulip_21140_smc9332_media_probe, - tulip_media_select, + tulip_21140_smc9332_media_select, tulip_null_media_poll, tulip_2114x_media_preset, }; >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710311658.BAA01018>