From: fuzzy_duck on
The requests are being sent via IOCTL_SCSI_PASS_THROUGH_DIRECT. The sense
buffer in the SPTI is sized at 0xFF bytes. When the SRB gets to the miniport
driver it is always 0x14 no matter what the value of IOCTL SRB sense buffer
length field. The proper sense address buffer is being used because I can
return data in the sense buffer at offsets >0x14 to the user from the
mini-port driver. The identical code works properly with ScsiPort drivers
under Windows XP.

I have similar results when sending a storport IRP built with
IoBuildAsynchronousFsdRequest() and major function IRP_MJ_SCSI.

Has anyone ran into this before or have a solution? I need sense buffer
lengths >0x14.

My current work-around is to return the amount of sense data I need, but
there are times when the sense length field is valid and should be respected
in the mini-port driver.