Software Write Protect Proposal

Gerry Houlder Gerry_Houlder at
Wed Jan 24 09:51:12 PST 1996

* From the SCSI Reflector, posted by:
* <Gerry Houlder  <Gerry_Houlder at>>
This proposal (96-121r0) will be presented at the March SCSI Working Group 
meeting. Since it affects the SPC document (which we want to forward very soon) 
I hope to get a working group recommendation that this proposal be accepted and 
a Plenary vote accepting it for SPC. Please use the reflector for discussion -- 
this may allow quicker agreement on this proposal.

I see the need to have a "Write Protect" bit to a mode page so that a SCSI 
device can be write protected via SCSI. They have some good reasons to do this:

1) Making the WP bit in the MODE SENSE header a "writable" bit can result in 
unintentional clearing of write protected condition. Many SCSI drivers will 
always clear these header bits when doing a Mode Sense followed by a Mode 
Select because all of these bits are supposed to be illegal for MODE SELECT. A 
bit within a mode page would not have this problem.

2) Many devices (streaming devices in particular) may have other ways of 
setting a write protected condition. A removable media may have a write protect 
tab on it or the SCSI device may have a switch. The WP bit in the header is a 
good way to indicate when any of these write protect mechanisms are active, 
meaning a separate bit to show the status of only the software write protect 
bit is needed. A separate bit within a mode page will answer this as well.

The SSC group has put a "Soft Write Protect" bit in a streaming device unique 
page. I would like to see a SWP bit put in mode page Ah byte 4 bit 3 so that 
direct access (and other devices types) can have this feature. This change 
affects the SPC document. The needed additions are as follows:

Table 95 - Control Mode page

[SWP bit added to byte 4, bit 3 in table 95. This bit is currently reserved.]

A software write protect (SWP) bit of one specifies that the logical unit shall 
inhibit writing to the medium after writing all cached or buffered write data, 
if any. When SWP is one, all commands requiring writes to the medium shall 
return CHECK CONDITION status with sense key of DATA PROTECT and additional 
sense code set to WRITE PROTECTED. When SWP is one, the WP bit in the mode 
parameter header shall be set to one for subsequent MODE SENSE commands. A SWP 
bit of zero specifies that the logical unit may allow writing to the medium, 
depending on other write inhibit mechanisms implemented for that logical unit. 
In this case the WP bit in the mode parameter header is set to zero if no other 
write inhibit mechanisms are active for that logical unit.

More information about the T10 mailing list