[dm-devel] info on enabling only one path with rdac and DS4700

Gianluca Cecchi gianluca.cecchi at gmail.com
Mon Nov 28 20:13:55 UTC 2011


On Mon, Nov 28, 2011 at 7:05 PM, Moger, Babu wrote:

>>
>>
>> the kernel is latest from RH EL 5.7 + updates:
>> 2.6.18-274.7.1.el5
>>
>> I'm going to check with its kernel-source to see it the patch is
>> applied or not...
>
> RHEL 5.7 has the patch already as I know. You can check to be sure. Can you also add "scsi_mod.scsi_logging_level=5056" in kernel line to get more information on what else is going on.

Ok, I have verified that the patch should be applied.
Downloaded kernel-2.6.18-274.7.1.el5.src.rpm
and in spec file I can find referral to
kernel-2.6.18-redhat.patch
that contains this inside section
--- linux-2.6.18.4/drivers/scsi/device_handler/scsi_dh_rdac.c
+++ linux-2.6.18-redhat/drivers/scsi/device_handler/scsi_dh_rdac.c
...
+static int check_ownership(struct scsi_device *sdev, struct rdac_dh_data *h)
+{
+       int err;
+       struct c9_inquiry *inqp;
+
+       h->lun_state = RDAC_LUN_UNOWNED;
+       h->state = RDAC_STATE_ACTIVE;
+       err = submit_inquiry(sdev, 0xC9, sizeof(struct c9_inquiry), h);
+       if (err == SCSI_DH_OK) {
+               inqp = &h->inq.c9;
+               if ((inqp->avte_cvp >> 7) == 0x1) {
+                       /* LUN in AVT mode */
+                       sdev_printk(KERN_NOTICE, sdev,
+                                   "%s: AVT mode detected\n",
+                                   RDAC_NAME);
+                       h->lun_state = RDAC_LUN_AVT;
+               } else if ((inqp->avte_cvp & 0x1) != 0) {
+                       /* LUN was owned by the controller */
+                       h->lun_state = RDAC_LUN_OWNED;
+               }
+       }
+
+       if (h->lun_state == RDAC_LUN_UNOWNED)
+               h->state = RDAC_STATE_PASSIVE;
+       return err;
+}
+

So I'm going to add the scsi logging parameter you suggested and see.




More information about the dm-devel mailing list