isa: read() is not guaranteed to read all the bytes requested.