On Wed, May 04, 2022 at 09:04:06AM +0100, Nikolaus Rath wrote:
On May 03 2022, rjones at
redhat.com (Richard W.M. Jones) wrote:
> On Mon, May 02, 2022 at 10:25:44AM +0100, Nikolaus Rath wrote:
>> Hi,
>>
>> Is there a way for a nbdkit plugin to *require* use of a nbdkit filter
>> (specifically the nbdkit-blocksize-filter) programmatically?
>
> No it's not possible in general, you just have to document it.
>
> However as it's *blocksize* filter that you're talking about, I assume
> you mean that your filter has blocksize constraints, eg. that it
> cannot handle sub-sector requests. In this case it is possible to
> tell clients that they must not issue requests smaller than a certain
> size (and also hint about optimal and maximum sizes). You can do this
> by writing a .block_size callback. For example:
>
>
https://gitlab.com/nbdkit/nbdkit/-/blob/1f5dc0679e570ca2fa149ceaa52922d70...
>
> Not all clients obey these (although these clients are buggy!)
Do you happen to know if the kernel's NBD client obeys them?
It doesn't seem to, from looking at the code.
(I assume setting a blocksize constraint implies an alignment
constraint
as well?)
Yes.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html