Samuel Thibault wrote:
Nothing in Linux makes filesystems and devices systematically read/write
the amount of data that was requested.
We're talking about the qemu block layer, not Linux. You're proposing
to take the posix API rules and apply them to the qemu block layer. But
posix read/write does not fit how DMA works. A request should either
complete fully, or fail, leaving the destination (disk or memory) in an
undefined state. Partial completions are impossible to implement
efficiently, and are a needless complication.
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.