Hello,
Here is the lsi rdac device handler code that was posted:
https://www.redhat.com/archives/dm-devel/2008-May/msg00003.html
The following patch is to address a NULL pointer problem in lsi rdac
device handler.
In function get_rdac_req, after a request is successfully allocated, the
area that the cmd pointer points to should be zeroed out. However, the
function zeros out the command pointer itself, along with some other
adjacent area. This results in NULL pointer dereference when submitting
inquiry commands when checking virtual disk ownership during device
discovery time. The kernel trace is attached at the end of the message.
The change is to zero out the area that the cmd pointer points to,
instead of the pointer itself in the allocated request structure.
--- scsi_dh_rdac.c.orig 2008-07-17 01:53:10.000000000 -0400
+++ scsi_dh_rdac.c 2008-07-17 01:45:28.000000000 -0400
@@ -214,7 +214,7 @@
return NULL;
}
- memset(&rq->cmd, 0, BLK_MAX_CDB);
+ memset(rq->cmd, 0, BLK_MAX_CDB);
rq->sense = h->sense;
memset(rq->sense, 0, SCSI_SENSE_BUFFERSIZE);
rq->sense_len = 0;