nbdkit-nocache-filter(1)

✨ nbdkit-nocache-filter ✨

okay bestie, welcome to the nbdkit-nocache-filter page β€” yes that's the manual name, we're not typing the whole header twice, it's giving efficient πŸ’…


🌸 NAME 🌸

nbdkit-nocache-filter β€” the nbdkit nocache filter. that's it, that's the name, short and iconic.


πŸŽ€ SYNOPSIS πŸŽ€

nbdkit --filter=nocache plugin [cache-mode=MODE] [plugin-args...]

πŸ’– DESCRIPTION πŸ’–

so nbdkit-nocache-filter is a filter that intentionally disables efficient handling of advisory client cache requests across the NBD protocol. not a bug. on purpose. it's a chaos-for-science situation πŸ§ͺ

it's mainly useful for evaluating timing differences, so you can figure out the impact of caching requests. like, what even happens if we just… don't.

ngl it's important to know that the effects of this filter (aka crippling the handling of client cache requests) are somewhat orthogonal to what nbdkit-cache-filter(1) does (aka adding local caching of client read/write requests). the two filters can absolutely be run together if you want to experiment with timings, no cap 🫢


⭐ PARAMETERS ⭐

  • cache-mode=none
  • cache-mode=emulate
  • cache-mode=nop
  • cachemode=none
  • cachemode=emulate
  • cachemode=nop

optional, bestie β€” it controls which mode the filter is gonna use.

  • Mode none (the default) means cache support is not advertised to the client.
  • Mode emulate means cache support is emulated by the filter using the plugin's pread callback, regardless of whether the plugin itself implemented the cache callback.
  • Mode nop means cache requests are always accepted and immediately ignored, rather than having any actual impact.

πŸ”₯ EXAMPLES πŸ”₯

serve the file disk.img, but prevent NBD_CMD_CACHE requests altogether, so you get a baseline timing of behavior when the client is unable to make cache requests:

nbdkit --filter=nocache file disk.img

serve the file disk.img, but with cache requests silently ignored, rather than being forwarded on to the file plugin (which attempts to use posix_fadvise(3)) β€” this one's for comparing against the timings without the filter and determining whether the file plugin caching was even worthwhile:

nbdkit --filter=nocache file disk.img cache-mode=nop

πŸ¦‹ FILES πŸ¦‹

  • $filterdir/nbdkit-nocache-filter.so β€” the filter itself πŸ’…

use nbdkit --dump-config to find the location of $filterdir.


🌈 VERSION 🌈

nbdkit-nocache-filter first appeared in nbdkit 1.14. a classic, honestly.


πŸ‘‘ SEE ALSO πŸ‘‘

nbdkit(1), nbdkit-file-plugin(1), nbdkit-filter(3), nbdkit-cache-filter(1), nbdkit-fua-filter(1), nbdkit-multi-conn-filter(1), nbdkit-noextents-filter(1), nbdkit-noparallel-filter(1), nbdkit-nozero-filter(1).


πŸ’œ AUTHORS πŸ’œ

Eric Blake


Copyright Red Hat


🧚 LICENSE 🧚

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of Red Hat nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

and that's the whole page bestie!! 🫢 this lil masterpiece is from nbdkit-1.48.1, dated 2026-08-29. go forth and time your cache requests, mwah πŸ’…βœ¨

πŸ“¦ where this page comes from