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?
(I assume setting a blocksize constraint implies an alignment constraint
as well?)
Best,
-Nikolaus
--
GPG Fingerprint: ED31 791B 2C5C 1613 AF38 8B8A D113 FCAC 3C4E 599F
»Time flies like an arrow, fruit flies like a Banana.«