No, it's possible to have both. This is less likely with isochronous
than with the other transfer types, but it can happen. For example,
consider a high-bandwidth high-speed transfer where 3072 bytes are
received in three packets during a single microframe. You might
receive two of the three packets, giving actual_length = 2048, and then
not receive the third, giving status = -EPROTO.
Alan Stern
--