When you mount a remote system which uses smaller buffers than the default 32k, then reading aborts after the first received packet.
sshfs.c:3088
} else if (size < (size_t) rreq->res) {
buf_get_mem(&rreq->data, buf, size);
rreq->res -= size;
rreq->size -= size;
res += size;
break;
The correct behaviour is to check the EOF flag behind the data, which indicates that this packet was the last packet.