On 01/08/2018 07:20 AM, Peter Lieven wrote: > Am 08.01.2018 um 04:09 schrieb Fam Zheng: >> After the out label there is a check on iTask.task but it is not >> initialized yet. >> >> Fixes: e38bc23454ef763deb4405ebdee6a1081aa00bc8 >> Signed-off-by: Fam Zheng <f...@redhat.com> >> --- >> block/iscsi.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >>
> If lbpme is 0 we run into the same error. And this is even more likely > than an unaligned request. In fact, my byte-based series adds an assertion that unaligned requests aren't possible. > > I think the right patch is to move the init of iTask up again where it was: I had to rebase v7 of my byte-based series on top of the late iTask initialization; moving it back to early initialization makes sense. > > > diff --git a/block/iscsi.c b/block/iscsi.c > index 5c0a9e5..6a1c537 100644 > --- a/block/iscsi.c > +++ b/block/iscsi.c > @@ -658,6 +658,8 @@ static int64_t coroutine_fn > iscsi_co_get_block_status(BlockDriverState *bs, > uint64_t lba; > int64_t ret; > > + iscsi_co_init_iscsitask(iscsilun, &iTask); > + > if (!is_sector_request_lun_aligned(sector_num, nb_sectors, > iscsilun)) { > ret = -EINVAL; > goto out; > @@ -675,7 +677,6 @@ static int64_t coroutine_fn > iscsi_co_get_block_status(BlockDriverState *bs, > > lba = sector_qemu2lun(sector_num, iscsilun); > > - iscsi_co_init_iscsitask(iscsilun, &iTask); > qemu_mutex_lock(&iscsilun->mutex); > retry: > if (iscsi_get_lba_status_task(iscsilun->iscsi, iscsilun->lun, If you resubmit this as a formal patch, you can add: Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature