diff options
author | Fam Zheng <famz@redhat.com> | 2015-03-24 09:23:49 +0800 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2015-03-27 10:01:12 +0000 |
commit | fc3959e4669a1c2149b91ccb05101cfc7ae1fc05 (patch) | |
tree | b3e2be4c49d43cd621a579de7865c3687b7b59e9 /aio-win32.c | |
parent | 2115f2a1d8c77c2a735add1ed02ae0c1feae0d9a (diff) |
block: Fix unaligned zero write
If the zero write is not aligned, bdrv_co_do_pwritev will segfault
because of accessing to the NULL qiov passed in by bdrv_co_write_zeroes.
Fix this by allocating a local qiov in bdrv_co_do_pwritev if the request
is not aligned. (In this case the padding iovs are necessary anyway, so
it doesn't hurt.)
Also add a check at the end of bdrv_co_do_pwritev to clear the zero flag
if padding is involved.
Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 1427160230-4489-2-git-send-email-famz@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'aio-win32.c')
0 files changed, 0 insertions, 0 deletions