Subject: Re: 10x kernel slowdown in less than a week?
To: David Gilbert <dgilbert@jaywon.pci.on.ca>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: port-sparc
Date: 02/28/1996 19:31:40
On Wed, 28 Feb 1996 20:19:07 -0500 (EST) 
 David Gilbert <dgilbert@jaywon.pci.on.ca> wrote:

 > 	I don't know what people have been doing, but now, using the
 > same config file as a week ago, I get a kernel that is nearly 10x
 > slower for disk operations.
 > 
 > 	My Sun4/260 usually takes about 5 minutes to fsck it's 5 disks
 > (5 partitions, 2 of the disks are one ccd).  With Monday's Sup, it's
 > taking nearly 45 minutes.  The whole thing 'in use' is slow, too --- X
 > and launching applications is noticably slower.

It turns out this is my fault.  The MI 5380 code did something I didn't 
really expect to force *polling* (i.e. non-interrupt driven I/O) during 
regular operation.  The change I made to keep the si driver from using 
DVMA during a crash dump worked on my system, because I use 
interrupt-driver I/O, but according to your kernel config, you do not.

I've backed out the offending change.

Sorry 'bout that.

(*sigh*  I'll have to come up with another way to deal with that...)

BTW, attached below is the patch I just committed.

--------------------------------------------------------------------------
Jason R. Thorpe                                       thorpej@nas.nasa.gov
NASA Ames Research Center                               Home: 408.866.1912
NAS: M/S 258-6                                          Work: 415.604.0935
Moffett Field, CA 94035                                Pager: 415.428.6939

----- snip -----
Index: si.c
===================================================================
RCS file: /a/cvsroot/src/sys/arch/sparc/dev/si.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -c -r1.16 -r1.17
*** si.c	1996/02/25 21:53:57	1.16
--- si.c	1996/02/29 03:28:38	1.17
***************
*** 1,4 ****
! /*	$NetBSD: si.c,v 1.16 1996/02/25 21:53:57 pk Exp $	*/
  
  /*
   * Copyright (c) 1995 Jason R. Thorpe
--- 1,4 ----
! /*	$NetBSD: si.c,v 1.17 1996/02/29 03:28:38 thorpej Exp $	*/
  
  /*
   * Copyright (c) 1995 Jason R. Thorpe
***************
*** 635,651 ****
  	if ((sc->sc_options & SI_ENABLE_DMA) == 0)
  		return;
  #endif
- 
- 	/*
- 	 * If the transfer flags say "poll", that means we're
- 	 * probably doing:
- 	 *	- autoconfiguration
- 	 *	- crash dump
- 	 * Doing DVMA during a crash dump can be potentially dangerous,
- 	 * so we avoid it here.
- 	 */
- 	if (xs->flags & SCSI_POLL)
- 		return;
  
  	addr = (u_long) ncr_sc->sc_dataptr;
  	xlen = ncr_sc->sc_datalen;
--- 635,640 ----