freebsd-skq/sys/dev/vinum
Greg Lehey ec79ff6a85 vinum_start:
remove the splbio() around the call to launch read requests.

launch_requests:
  Move the splbio() protection outside the entire launch_loop.  The
  previous location was causing problems with IDE drives, where the
  call to the strategy routine often did not complete until after
  complete_rqe deallocated the request structure.

Solution-independently-found-by: Russell Neeper <r-neeper@tamu.edu>
Problem-reported-by: Vallo Kallaste <vallo@matti.ee>
		     John Saunders <john@nlc.net.au>
		     Bernd Walter <ticso@cicely.de> (maybe)
1999-03-23 04:49:08 +00:00
..
COPYRIGHT If I've done this right, revive the vinum code in it's now home after it 1998-12-28 04:56:24 +00:00
makestatetext Include the copyright notice in the script, making the file COPYRIGHT 1999-01-21 00:29:20 +00:00
request.h Modify to compile with egcs. 1999-03-18 23:26:22 +00:00
statetexts.h Change the name of drive state "uninit" to "referenced": it only 1999-03-02 06:51:48 +00:00
vinum.c free_vinum: don't change loop bounds for deleting drives while in the loop. 1999-03-19 07:08:40 +00:00
vinumconfig.c start_config: 1999-03-23 04:47:09 +00:00
vinumdaemon.c Modify to compile with egcs. 1999-03-18 23:26:22 +00:00
vinumext.h Change the declaration of start_config. 1999-03-23 04:47:33 +00:00
vinumhdr.h Change multiline comments to start with a lone /* and end with a */, 1999-01-29 01:17:54 +00:00
vinuminterrupt.c Modify to compile with egcs. 1999-03-18 23:26:22 +00:00
vinumio.c init_drive: 1999-03-23 04:48:05 +00:00
vinumio.h Change SAVECONFIG ioctl: it now writes an int parameter. 1999-03-02 22:00:19 +00:00
vinumioctl.c VINUM_STARTCONFIG: 1999-03-23 04:48:31 +00:00
vinumkw.h Add keywords "size", synonym for "length", and "max". 1999-03-02 06:55:18 +00:00
vinumlock.c lock_drive: report on and recover from an obscure situation where the 1999-03-13 07:35:40 +00:00
vinummemory.c Use microtime, not getmicrotime, to note the times in the malloc and 1999-03-19 07:14:18 +00:00
vinumparser.c Add keywords "size", synonym for "length", and "max". 1999-03-02 06:56:05 +00:00
vinumrequest.c vinum_start: 1999-03-23 04:49:08 +00:00
vinumrevive.c Change printf() calls to log() calls. 1999-03-02 06:56:39 +00:00
vinumstate.c Part of removing vol->opencount: now we just use a flag. 1999-03-13 07:39:17 +00:00
vinumstate.h Change the name of drive state "uninit" to "referenced": it only 1999-03-02 06:57:30 +00:00
vinumutil.c VolState: return an enum volumestate, not a (non-existent) enum volstate. 1999-03-19 07:17:05 +00:00
vinumvar.h Define two superdevices for vinum(8), depending on whether they are 1999-03-19 07:19:52 +00:00