Breaking SCSI Reservation on Fiber channel environments

Friends,

I’m having problems using SCSI reservation IOCTLs
on Windows 2000. It would be really helpful if any
of you could help in this.

I’m using SCSI Reservation IOCTLs to reserve a SCSI
disk from two different systems (running Windows 2000
advanced server). To reserve, I use
IOCTL_STORAGE_RESERVE. To forcibly aquire the SCSI
reservation, I use IOCTL_STORAGE_RESET_BUS.

All these seem to work fine in a normal shared SCSI
disks. But on Fiber channel environments, RESERVE
seems to be working fine. But BUT_RESET doesnt seem
to be.

Consider the following case:

On System A, I issue the reserve a SCSI disk. Now
I power-off System A, and on System B if I issue
IOCTL_STORAGE_RESET_BUS to forcibly break the SCSI
reservation, though the IOCTL reports that it
succeeded, still when I try to reserve the disk from
System B, I get reservation conflict. Idealy once
the RESET is issued, System B should be able to
get the reservation.

Any ideas why this is happening on Windows 2000?

Thanks
Peter


Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35
a year! http://personal.mail.yahoo.com/


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

What may be happening is that IOCTL_STORAGE_RESET_BUS
is only doing a LIP (loop initialization), which allows the initiator to
re-login without loosing state (e.g., reservations).

IOCTL_STORAGE_RESET_DEVICE may work better.

-DH

----- Original Message -----
From: “Peter J”
To: “NT Developers Interest List”
Sent: Wednesday, June 20, 2001 5:49 AM
Subject: [ntdev] Breaking SCSI Reservation on Fiber channel environments

> Friends,
>
> I’m having problems using SCSI reservation IOCTLs
> on Windows 2000. It would be really helpful if any
> of you could help in this.
>
> I’m using SCSI Reservation IOCTLs to reserve a SCSI
> disk from two different systems (running Windows 2000
> advanced server). To reserve, I use
> IOCTL_STORAGE_RESERVE. To forcibly aquire the SCSI
> reservation, I use IOCTL_STORAGE_RESET_BUS.
>
> All these seem to work fine in a normal shared SCSI
> disks. But on Fiber channel environments, RESERVE
> seems to be working fine. But BUT_RESET doesnt seem
> to be.
>
> Consider the following case:
>
> On System A, I issue the reserve a SCSI disk. Now
> I power-off System A, and on System B if I issue
> IOCTL_STORAGE_RESET_BUS to forcibly break the SCSI
> reservation, though the IOCTL reports that it
> succeeded, still when I try to reserve the disk from
> System B, I get reservation conflict. Idealy once
> the RESET is issued, System B should be able to
> get the reservation.
>
> Any ideas why this is happening on Windows 2000?
>
> Thanks
> Peter
>
>
> __________________________________________________
> Do You Yahoo!?
> Get personalized email addresses from Yahoo! Mail - only $35
> a year! http://personal.mail.yahoo.com/
>
> —
> You are currently subscribed to ntdev as: xxxxx@syssoftsol.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

The problem is not with Windows2000 but rather fibre channel. What is the
topology of the fibre channel where you are trying to excute this IOCTL. I
think in FC_AL you should be able to do it. The SCSI_RESET commnand results
into Loop Initialization (LIP primitive is sent). But in Switch Fabric,
Reset may be disabled either thru the switch or the FC card. Look into
switch configuration and BIOS setting of your card.

Friends,

I’m having problems using SCSI reservation IOCTLs
on Windows 2000. It would be really helpful if any
of you could help in this.

I’m using SCSI Reservation IOCTLs to reserve a SCSI
disk from two different systems (running Windows 2000
advanced server). To reserve, I use
IOCTL_STORAGE_RESERVE. To forcibly aquire the SCSI
reservation, I use IOCTL_STORAGE_RESET_BUS.

All these seem to work fine in a normal shared SCSI
disks. But on Fiber channel environments, RESERVE
seems to be working fine. But BUT_RESET doesnt seem
to be.

Consider the following case:

On System A, I issue the reserve a SCSI disk. Now
I power-off System A, and on System B if I issue
IOCTL_STORAGE_RESET_BUS to forcibly break the SCSI
reservation, though the IOCTL reports that it
succeeded, still when I try to reserve the disk from
System B, I get reservation conflict. Idealy once
the RESET is issued, System B should be able to
get the reservation.

Any ideas why this is happening on Windows 2000?

Thanks
Peter


Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35
a year! http://personal.mail.yahoo.com/


You are currently subscribed to ntdev as: xxxxx@Legato.COM
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Friends,

Thank you verymuch for the information you have
provided.

  • Peter

Friends,

I’m having problems using SCSI reservation IOCTLs
on Windows 2000. It would be really helpful if any
of you could help in this.

I’m using SCSI Reservation IOCTLs to reserve a SCSI
disk from two different systems (running Windows
2000
advanced server). To reserve, I use
IOCTL_STORAGE_RESERVE. To forcibly aquire the SCSI
reservation, I use IOCTL_STORAGE_RESET_BUS.

All these seem to work fine in a normal shared SCSI
disks. But on Fiber channel environments, RESERVE
seems to be working fine. But BUT_RESET doesnt seem
to be.

Consider the following case:

On System A, I issue the reserve a SCSI disk. Now
I power-off System A, and on System B if I issue
IOCTL_STORAGE_RESET_BUS to forcibly break the SCSI
reservation, though the IOCTL reports that it
succeeded, still when I try to reserve the disk from
System B, I get reservation conflict. Idealy once
the RESET is issued, System B should be able to
get the reservation.

Any ideas why this is happening on Windows 2000?

Thanks
Peter


Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35
a year! http://personal.mail.yahoo.com/


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Hello Friends,

I have just found that the reason for the RESETs are
not working is because it is disabled in the QLogic
bios settings. Once I changed the “Target Reset”
option to “Yes”, everything is working fine.

By default the “Target Reset” option is diabled. To
enable this, follow the following steps when the
system is starting up:

  1. Press Alt+Q to goto the QLogic adapter settings
    menu.
  2. Goto “Configuration Settings”
  3. Goto “Advanced Adapter Settings”
  4. Set the “Enable Target Reset” option to “Yes”
  5. Save the configuration
  6. Repeat steps 1 to 5 for all the QLogic adapters in
    the system
  7. Reboot the systems

Is my observation right? Will it cause any unexpected
problem? Is there any reason why this is disabled by
default?

Thanks in advance.
Peter

> > I’m having problems using SCSI reservation
IOCTLs
> > on Windows 2000. It would be really helpful if
any
> > of you could help in this.
> >
> > I’m using SCSI Reservation IOCTLs to reserve a
SCSI
> > disk from two different systems (running Windows
> 2000
> > advanced server). To reserve, I use
> > IOCTL_STORAGE_RESERVE. To forcibly aquire the
SCSI
> > reservation, I use IOCTL_STORAGE_RESET_BUS.
> >
> > All these seem to work fine in a normal shared
SCSI
> > disks. But on Fiber channel environments,
RESERVE
> > seems to be working fine. But BUT_RESET doesnt
seem
> > to be.
> >
> > Consider the following case:
> >
> > On System A, I issue the reserve a SCSI disk.
Now
> > I power-off System A, and on System B if I issue
> > IOCTL_STORAGE_RESET_BUS to forcibly break the
SCSI
> > reservation, though the IOCTL reports that it
> > succeeded, still when I try to reserve the disk
from
> > System B, I get reservation conflict. Idealy
once
> > the RESET is issued, System B should be able to
> > get the reservation.
> >
> > Any ideas why this is happening on Windows 2000?
> >
> > Thanks
> > Peter
>


Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail
http://personal.mail.yahoo.com/


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com