The Linux SCSI interface driver "aic7xxx.c" may have a potential
problem with PPR (Parallel Protocol Request) messaging.
(SCSI Parallel Interface-3 specification T10/1302D,Rev 12,
The driver attempts to send a PPR message but rejects the reply from the
target. The driver detects that a SCSI-3 target is present and sends a PPR
message. However, it rejects the reply because the Adaptec SCSI card ID
does not indicate that PPR messaging is supported.
This problem only appears when the target supports PPR messaging and the
Adaptec SCSI interface card does not support PPR messaging.
The driver should not send a PPR message if PPR messaging is not supported
by the Adaptec SCSI interface card present. An alternate method of
negotiation should be attempted for Adaptec SCSI interface cards that do
not support PPR messaging.
aic7xxx.c, line 2944:
if ( (buffer & SCSI_VERSION_BITS) == 3)
if (( (buffer & SCSI_VERSION_BITS) == 3) &&
(p->features & AHC_ULTRA3) )
Determine the Adaptec SCSI interface cards support PPR messaging and only
attempt PPR messaging when both the Adaptec SCSI interface card support PPR
messaging and the target supports PPR messaging.
Testing that has been performed on an Adaptec 2940U2W(AIC7890) appears to
support PPR messaging if the following 3 lines of code are removed from the
aic7xxx.c, line 5646-5649:
/* p->features == 0x04F6 for the Adaptec 2940U2W */
if( !(p->features & AHC_ULTRA3) )
reject = TRUE;
Carl J. White III
Firmware Development Engineer
10323 West Reno Avenue
P.O. Box 12313
Oklahoma City, OK 73157
There have been substantial changes in the Adaptec driver since the Red Hat
Linux 6.1 release. Does this problem still occur in 8.0/Phoebe betas?
Closing out due to bit-rot.