Am 27.04.2015 um 15:18 hat Fam Zheng geschrieben: > An unaligned zero write causes NULL deferencing in bdrv_co_do_pwritev. That > path is reachable from bdrv_co_write_zeroes and bdrv_aio_write_zeroes. > > You can easily trigger through the former with qemu-io, as the test case added > by 61815d6e0aa. For bdrv_aio_write_zeroes, in common cases there's always a > format driver (which uses 512 alignment), so it would be much rarer to have > unaligned requests (only concerning top level here, when the request goes down > to bs->file, where for example the alignment is 4k, it would then be calling > bdrv_co_write_zeroes because it's in a coroutine). > > fc3959e4669a1c fixed bdrv_co_write_zeroes but not bdrv_aio_write_zeroes. The > lattern is the actually used one by device model. Revert the previous fix, do > it in bdrv_co_do_pwritev, to cover both paths.
Hi Fam, Stefan's patch to split out block/io.c conflicts with this. Can you please rebase? Kevin