On 09/14/2017 07:58 AM, Eric Blake wrote: > On 09/13/2017 07:15 PM, John Snow wrote: >> >> >> On 09/12/2017 04:31 PM, Eric Blake wrote: >>> Thanks to recent cleanups, most callers were scaling a return value >>> of sectors into bytes (the exception, in qcow2-bitmap, will be >>> converted to byte-based iteration later). Update the interface to >>> do the scaling internally instead. >>> >>> In qcow2-bitmap, the code was specifically checking for an error >>> to be -1; it is more robust to treat all negative values as an >>> error, but at the same time it is also easy enough to ensure we >>> return -1 (and not -512) on error. >>> >>> Signed-off-by: Eric Blake <ebl...@redhat.com> >>> >> >> This patch now smells like a bugfix and a separate incremental feature >> enhancement. > > There is no bug without this patch; more of a fix to avoid a latent
Ah, you're right, I see. Please take the RB. > regression from happening in further changes. In v6, I (accidentally) > had bdrv_dirty_iter_next() temporarily returning -512 instead of -1 on > failure; changing the qcow2 code to treat all negatives instead of > precisely -1 as error is enough to avoid that regression, but so also is > fixing bdrv_dirty_iter_next() to always return -1 on failure. This > patch does both, rather than either fix in isolation, but that means we > don't need a backport. > >> >> Do we need to backport the error-checking to a possible 2.10.1? >> >> If no: >> >> Reviewed-by: John Snow <js...@redhat.com> >> >