Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Feb 2000 00:25:00 -0800
From:      Alfred Perlstein <bright@wintelcom.net>
To:        Greg Lehey <grog@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/dev/vinum vinumrequest.c
Message-ID:  <20000229002459.B21720@fw.wintelcom.net>
In-Reply-To: <200002290614.WAA16809@freefall.freebsd.org>; from grog@FreeBSD.org on Mon, Feb 28, 2000 at 10:14:45PM -0800
References:  <200002290614.WAA16809@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
* Greg Lehey <grog@FreeBSD.org> [000228 22:45] wrote:
> grog        2000/02/28 22:14:45 PST
> 
>   Modified files:
>     sys/dev/vinum        vinumrequest.c 
>   Log:
>   launch_requests: If too many requests are active, include PCATCH in
>   the tsleep call flags.
>   
>   Submitted-by:  Bernd Walter <ticso@cicely.de>

grrr!

                while ((drive->active >= DRIVE_MAXACTIVE)   /* it has too much to do already, */
                ||(vinum_conf.active >= VINUM_MAXACTIVE))   /* or too many requests globally */
-                   tsleep(&launch_requests, PRIBIO, "vinbuf", 0); /* wait for it to subside */
+                   tsleep(&launch_requests, PRIBIO | PCATCH, "vinbuf", 0); /* wait for it to subside */
                drive->active++;

please back this out, i've already fixed this twice, if you actually
get a signal you'll spin in the kernel.

the correct solution must check the return from tsleep and actually
do something with an error return, for now we've agreed to ignore
signals until a safe return can be implemented.  PCATCH must be
removed.

>   Remove references to vnode pointers, including debug output.  Vinum
>   now talks directly to the device driver.
>   
>   bre: Add case for RAID-4.
>   
>   sdio: Don't try to write to a down drive.  Set the sd state instead.
>   
>   Approved-by:  jkh
>   
>   Revision  Changes    Path
>   1.42      +22 -29    src/sys/dev/vinum/vinumrequest.c
> 

-- 
-Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000229002459.B21720>