qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH v3] fixup! iscsi: Fix divide-by-zero regression


From: Paolo Bonzini
Subject: Re: [Qemu-block] [PATCH v3] fixup! iscsi: Fix divide-by-zero regression on raw SG devices
Date: Thu, 22 Sep 2016 20:30:23 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0

> Paolo just sent a pull request, but if I'm not too late, this should
> be squashed in. If I am too late, then we can rework the commit
> message to make it this is an obvious followup.

I just replaced MIN_NON_ZERO with MAX.

Paolo

> v3: preserve 4k iscsilun->block_size
> v2: avoid second assertion failure
> ---
>  block/iscsi.c | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/block/iscsi.c b/block/iscsi.c
> index c01e955..7bb6e5d 100644
> --- a/block/iscsi.c
> +++ b/block/iscsi.c
> @@ -1813,10 +1813,14 @@ static void iscsi_refresh_limits(BlockDriverState 
> *bs, Error **errp)
> 
>      IscsiLun *iscsilun = bs->opaque;
>      uint64_t max_xfer_len = iscsilun->use_16_for_rw ? 0xffffffff : 0xffff;
> -    unsigned int block_size = MIN_NON_ZERO(BDRV_SECTOR_SIZE,
> -                                           iscsilun->block_size);
> +    unsigned int block_size = iscsilun->block_size;
> 
> -    assert(iscsilun->block_size >= BDRV_SECTOR_SIZE || bs->sg);
> +    if (!block_size) {
> +        assert(bs->sg);
> +        block_size = BDRV_SECTOR_SIZE;
> +    } else {
> +        assert(block_size >= BDRV_SECTOR_SIZE);
> +    }
> 
>      bs->bl.request_alignment = block_size;
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]