Re: [PATCH] virtio_blk: add block topology support

From: Alexey Zaytsev
Date: Fri Jul 29 2011 - 15:09:55 EST


On Thu, Jul 21, 2011 at 10:53, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
> On Fri, 15 Jul 2011 03:36:42 +0400, Alexey Zaytsev <alexey.zaytsev@xxxxxxxxx> wrote:
>> On Mon, Feb 1, 2010 at 04:10, Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
>> > On Sun, 31 Jan 2010 06:49:10 am Christoph Hellwig wrote:
>> >> On Sat, Jan 30, 2010 at 03:29:49PM +1030, Rusty Russell wrote:
>> >> > I bow to your expertise on that. ÂMy only query is the __u16 for min_io_size; is that likely to restrict us?
>> >>
>> >> Looks like you caught me there - I wrote the above odd format about the
>> >> physical_block exponent, but scsi actually does the min_io and opt_io
>> >> size in logical blocks, too. ÂWith that in account the u16 as in scsi
>> >> is perfectly fine.
>> >
>> > Thanks, applied.
>>
>> Ugh, guys. I know it's already applied long ago, but this kind of
>> contradicts the virtio specification, doesn't it?
>
> Ugh indeed! ÂThe same field is used by two places, as
> VIRTIO_BLK_F_SECTOR_MAX never made it into the linux headers.
>
>> VIRTIO_BLK_F_SECTOR_MAX (10) Maximum total sectors in
>> Â Âan I/O.
>
> The patch made the spec, but as far as I can tell, no implementation.
>
> If that's right, we just remove it from the spec. ÂIf it did make it in,
> we now have a very ugly case where the layout will have to vary
> depending on what options are negotiated.

VIRTIO_BLK_F_TOPOLOGY and VIRTIO_BLK_F_SECTOR_MAX features use the
same bit, don't they?

I guess you could just remove VIRTIO_BLK_F_SECTOR_MAX from the spec.
Linux did not implement it, and virtualbox does not have virtio block
support at all. Are there any other known users, who might have
implemented the VIRTIO_BLK_F_SECTOR_MAX feature?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/