Adding a different type of blockstore to Bhyve

Willem Jan Withagen wjw at digiware.nl
Wed Jan 15 09:43:01 UTC 2020


On 31-12-2019 00:48, Paul Vixie wrote:
> On Monday, 30 December 2019 18:06:11 UTC Willem Jan Withagen wrote:
>> Something like:
>>     bhyve -s 1,virtio-blk,rbd:poolname/imagename[@snapshotname] \
>>                            [:option1=value1[:option2=value2...]]
> 
> this is approximately how i'd hope to do object-store level ZFS integration,
> so as to avoid the zvol abstraction. i know you're working on Ceph not ZFS but
> the concepts and facilities are similar enough to warrant cooperative
> thinking.
> 
>> So the questions are:
>> 1)   Is the abstraction of block_backends.{ch} the way to go?
>> 1.1) And would the extra indirection there be acceptable?
>>        (For network devices it seems no problem)
>>
>> 2)   Does anybody already have such a framework for blockdevs?
>>        (Otherwise I'll try to morph the net_backends.{ch}
>>
>> 3)   Other suggestions I need to consider?
> 
> i think you're hitting an architectural limit, and that the bhyve design team
> should be thinking about a third way, one which would also solve my own
> loopback and mmap requirements as i've described variously. what you want to
> do should not only be possible, it should be clean and performant.

Hi Paul,

Thanx for the encouraging words....
I've missed the discussion on loopback and mmap, I just don't have the 
time  to read all FreeBSD and other groups. So once in a while I just do 
major catch up by delete. ;-)

In the mean time I have submitted:
     https://reviews.freebsd.org/D23010
To give block_if a generic interface.
Feel free to comment on it, and suggest changes that will help you with 
what you are looking at.

--WjW




More information about the freebsd-virtualization mailing list