Re: [PATCH] 2.4.32 Don't panic on IDE DMA errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Applied, thanks Chris.

On Wed, Nov 23, 2005 at 03:56:00PM +0000, Chris Ross wrote:
> Kernel 2.4.32 and earlier can panic when trying to read a corrupted 
> sector from an IDE disk.
> 
> The function ide_dma_timeout_retry can end a request early by calling 
> idedisk_error, but then goes on to use the request anyway causing a 
> kernel panic due to a null pointer exception. This patch fixes that.
> 
> Regards,
> Chris R.
> 
> 
> diff -urN -X dontdiff linux-2.4.32/drivers/ide/ide-io.c 
> patched-linux-2.4.32/drivers/ide/ide-io.c
> --- linux-2.4.32/drivers/ide/ide-io.c	2003-11-28 18:26:20.000000000 +0000
> +++ patched-linux-2.4.32/drivers/ide/ide-io.c	2005-11-23 
> 12:33:37.000000000 +0000
> @@ -899,11 +899,13 @@
>  	rq = HWGROUP(drive)->rq;
>  	HWGROUP(drive)->rq = NULL;
> 
> -	rq->errors = 0;
> -	rq->sector = rq->bh->b_rsector;
> -	rq->current_nr_sectors = rq->bh->b_size >> 9;
> -	rq->hard_cur_sectors = rq->current_nr_sectors;
> -	rq->buffer = rq->bh->b_data;
> +	if (rq) {
> +		rq->errors = 0;
> +		rq->sector = rq->bh->b_rsector;
> +		rq->current_nr_sectors = rq->bh->b_size >> 9;
> +		rq->hard_cur_sectors = rq->current_nr_sectors;
> +		rq->buffer = rq->bh->b_data;
> +	}
> 
>  	return ret;
>  }
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux