Subject: kern/15182: le 'device timeout' as guest OS under VMware
To: None <gnats-bugs@gnats.netbsd.org>
From: None <inoue@soum.co.jp>
List: netbsd-bugs
Date: 01/08/2002 08:28:05
>Number:         15182
>Category:       kern
>Synopsis:       le 'device timeout' as guest OS under VMware
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          support
>Submitter-Id:   net
>Arrival-Date:   Tue Jan 08 08:28:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     INOUE Kiyoshi
>Release:        1.5.2
>Organization:
SOUM Corporation
>Environment:
NetBSD yuki2vmn.soum.co.jp 1.5.2 NetBSD 1.5.2 (S8670P_vmware_ipsec) #3: Tue Jan  8 15:08:46 JST 2002     root@yuki2vmn.soum.co.jp:/usr/src/sys/arch/i386/compile/S8670P_vmware_ipsec i386
>Description:
When NetBSD is running as guest OS under the VMware,
'device timeout' error was occured on LANCE(le) ethernet interface.
>How-To-Repeat:
everytime
>Fix:
patch for /usr/src/sys/dev/ic/am79900.c as follows
(anout this patch, I referred to "http://www.citi.umich.edu/u/rees/openbsd/am7990.diff".):

*** am79900.c	2002/01/08 06:04:25	1.1
--- am79900.c	2002/01/08 06:06:21
***************
*** 372,381 ****
  #endif
  	if ((isr & LE_C0_INTR) == 0)
  		return (0);
  
- 	(*sc->sc_wrcsr)(sc, LE_CSR0,
- 	    isr & (LE_C0_INEA | LE_C0_BABL | LE_C0_MISS | LE_C0_MERR |
- 		   LE_C0_RINT | LE_C0_TINT | LE_C0_IDON));
  	if (isr & LE_C0_ERR) {
  		if (isr & LE_C0_BABL) {
  #ifdef LEDEBUG
--- 372,380 ----
  #endif
  	if ((isr & LE_C0_INTR) == 0)
  		return (0);
+         (*sc->sc_wrcsr)(sc, LE_CSR0, isr & ~LE_C0_INEA);
+         (*sc->sc_wrcsr)(sc, LE_CSR0, LE_C0_INEA);
  
  	if (isr & LE_C0_ERR) {
  		if (isr & LE_C0_BABL) {
  #ifdef LEDEBUG
>Release-Note:
>Audit-Trail:
>Unformatted: