qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/2] iscsi: add intelligent has_zero_init check


From: Peter Lieven
Subject: Re: [Qemu-devel] [PATCH 2/2] iscsi: add intelligent has_zero_init check
Date: Fri, 21 Jun 2013 22:25:37 +0200


Von meinem iPhone gesendet

Am 21.06.2013 um 22:00 schrieb Paolo Bonzini <address@hidden>:

> Il 20/06/2013 20:20, Peter Lieven ha scritto:
>> +    for (lba = 0; lba < iscsilun->num_blocks; lba += 1 << 26) {
>> +        nb_sectors = 1 << 26;
>> +        if (lba + nb_sectors > iscsilun->num_blocks) {
>> +            nb_sectors = iscsilun->num_blocks - lba;
>> +        }
>> +        nb_sectors *= (iscsilun->block_size / BDRV_SECTOR_SIZE);
>> +        n = 0;
>> +        ret = iscsi_co_is_allocated(bs, lba, nb_sectors, &n);
>> +        if (ret || n != nb_sectors) {
>> +            return 0;
>> +        }
> 
> I would just do lba += n in the for loop, and only exit if n == 0.  The
> SCSI spec does not forbid splitting a single allocated area into
> multiple descriptors, or only returning part of an allocated area into
> the last descriptor.
> 
> Otherwise looks good, but you may want to cache the result.  It would
> not be 1 anymore after the first write.
> 

Of course, but after some discussions with Kevin we might have found a better 
Solution than extending has_zero_init this far. 

Let you know soon :-)

> Paolo



reply via email to

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