This is primarily crappy USB devices, which implement only the absolute minimum to get SCSI rolling.
Hannes,
I have been contemplating this for a bit.
Has it been considered instead of introducing a blacklist flag to not
use the reported VPD page size if the device reports that the VPD
page size is zero? I am not aware of any VPD pages for which zero is
a valid size.
That would also be my preferred approach, I think. I haven't received
any bug reports about devices returning short VPD pages since this
change was introduced. So I think I'd prefer falling back to a
(hopefully small) default if a device returns a 0 page length.
Now, my question is which VPD pages are actually supported by this
device and how large are they?
But pre-SPC drives will ignore the VPD bit in the inquiry size. And
these devices do not set an additional length in the inquiry data
Can you elaborate a bit on your experience with older devices? I checked
SCSI-2 (1991) and don't see any indication this would be valid behavior
even back then.