Some callers use larger qiovs than nb_sectors for their read requests. This is bad because raw-posix uses nb_sectors to allocate a bounce buffer and then copies the whole iov over.
This series fixes some more cases (mirroring was already fixed earlier this week) and adds assertions to catch any other offenders. Kevin Wolf (4): block: Make qiov match the request size until EOF qcow2: Make qiov match request size until backing file EOF qed: Make qiov match request size until backing file EOF block: Assert qiov length matches request length block.c | 13 ++++++++++++- block/qcow2.c | 11 ++++++++++- block/qed.c | 26 +++++++++++++++++++++++--- block/qed.h | 1 + block/raw-posix.c | 15 +++++++++++---- 5 files changed, 57 insertions(+), 9 deletions(-) -- 1.8.3.1