summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorguoqing zhu - Sun Microsystems - Beijing China <Guoqing.Zhu@Sun.COM>2009-07-02 10:06:17 +0800
committerguoqing zhu - Sun Microsystems - Beijing China <Guoqing.Zhu@Sun.COM>2009-07-02 10:06:17 +0800
commit42e43e9829853ed82c9a4e268b0b15ea58be81fb (patch)
tree5c58b9fa1e590f6910fae479bd436ee6628371cd /usr/src
parentf2728256f3ab94f4fc6667bea81eb2649faa7dcd (diff)
downloadillumos-joyent-42e43e9829853ed82c9a4e268b0b15ea58be81fb.tar.gz
6834482 Solaris installation fails to install from live USB-- hangs on AA1
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c6
-rw-r--r--usr/src/uts/common/sys/usb/scsa2usb/scsa2usb.h2
2 files changed, 6 insertions, 2 deletions
diff --git a/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c b/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c
index 13f746a56e..19dd722626 100644
--- a/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c
+++ b/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c
@@ -3315,8 +3315,10 @@ scsa2usb_handle_scsi_cmd_sub_class(scsa2usb_state_t *scsa2usbp,
*/
case SCMD_MODE_SENSE:
case SCMD_MODE_SELECT:
- if ((pkt->pkt_cdbp[2] == SD_MODE_SENSE_PAGE3_CODE) ||
- (pkt->pkt_cdbp[2] == SD_MODE_SENSE_PAGE4_CODE)) {
+ if (((pkt->pkt_cdbp[2] & SD_MODE_SENSE_PAGE_MASK)
+ == SD_MODE_SENSE_PAGE3_CODE) ||
+ ((pkt->pkt_cdbp[2] & SD_MODE_SENSE_PAGE_MASK)
+ == SD_MODE_SENSE_PAGE4_CODE)) {
if (cmd->cmd_bp) {
cmd->cmd_pkt->pkt_resid = cmd->cmd_bp->b_bcount;
}
diff --git a/usr/src/uts/common/sys/usb/scsa2usb/scsa2usb.h b/usr/src/uts/common/sys/usb/scsa2usb/scsa2usb.h
index c9fa4d8ebb..f9705b06aa 100644
--- a/usr/src/uts/common/sys/usb/scsa2usb/scsa2usb.h
+++ b/usr/src/uts/common/sys/usb/scsa2usb/scsa2usb.h
@@ -217,6 +217,8 @@ extern "C" {
#define SD_MODE_SENSE_PAGE4_CODE 0x04
#endif
+#define SD_MODE_SENSE_PAGE_MASK 0x3F
+
/*
* PM support
*/