[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list

Greg KH greg at kroah.com
Mon Aug 30 23:49:02 UTC 2010


On Thu, Aug 05, 2010 at 07:29:53PM +0000, Hank Janssen wrote:
> From: Hank Janssen <hjanssen at microsoft.com>
> 
> Fixed lockup problem with bounce_buffer scatter list which caused
> crashes in heavy loads. Under heavy loads with many clients we this
> problem appear, it causes a kernel Panic.
> 
> Signed-off-by:Hank Janssen <hjanssen at microsoft.com>
> Signed-off-by:Haiyang Zhang <haiyangz at microsoft.com>
> Cc: stable <stable at kernel.org>
> ---
>  drivers/staging/hv/storvsc_drv.c |    9 ++++++---
>  1 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/hv/storvsc_drv.c b/drivers/staging/hv/storvsc_drv.c
> index 3b9ccb0..169d701 100644
> --- a/drivers/staging/hv/storvsc_drv.c
> +++ b/drivers/staging/hv/storvsc_drv.c
> @@ -615,6 +615,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd,
>  	unsigned int request_size = 0;
>  	int i;
>  	struct scatterlist *sgl;
> +	unsigned int sg_count = 0;
>  
>  	DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d "
>  		   "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd,
>  	request->DataBuffer.Length = scsi_bufflen(scmnd);


This patch is corrupted.  It applies, but doesn't do what you want it to
do :(

Care to resend?

thanks,

greg k-h



More information about the devel mailing list