search for: nozeros

Displaying 20 results from an estimated 109 matches for "nozeros".

Did you mean: nozero
2018 Jan 24
0
[nbdkit PATCH 3/3] filters: Add nozero filter
Sometimes, it's nice to see what a difference it makes in timing or in destination file size when sparse handling is enabled or disabled. Add a new filter that makes it trivial to disable write zero support. Signed-off-by: Eric Blake <eblake@redhat.com> --- TODO | 2 +- configure.ac | 3 +- docs/nbdkit-filter.pod
2019 May 10
1
[nbdkit PATCH] nozero: Add notrim mode
It may be useful to test whether the client's use of NBD_CMD_FLAG_NO_HOLE makes a difference; do this by adding a mode to --filter=nozero to force a non-trimming zero write. Signed-off-by: Eric Blake <eblake@redhat.com> --- filters/nozero/nbdkit-nozero-filter.pod | 19 +++++++---- filters/nozero/nozero.c | 45 ++++++++++++++++++++----- tests/test-nozero.sh
2019 Jul 04
3
[nbdkit] [filter/nozero] large binary size with GCC 9
Hi all, It seems GCC 9 does not put read-only zero-initialized variables into the BSS section anymore; instead it is put into RODATA. (See the thread at [0], especially [1]) In filter/nozero a 64M large, static, zeroed, read-only array is declared. The new behavior of GCC puts this array as-is into the binary inflating the size by a factor of around 10000. (Clang 8 and older GCCs work
2019 Jul 05
2
Re: [nbdkit] [filter/nozero] large binary size with GCC 9
On Fri, 2019-07-05T08:04-0500, Eric Blake wrote: > On 7/4/19 1:38 PM, Thomas Weißschuh wrote: > > In filter/nozero a 64M large, static, zeroed, read-only array is declared. > > The new behavior of GCC puts this array as-is into the binary inflating the > > size by a factor of around 10000. > > Odd that you are only seeing this for the nozero filter, since we also >
2018 Jan 24
0
Re: [nbdkit PATCH 0/3] Add nozero filter
On Tue, Jan 23, 2018 at 10:10:12PM -0600, Eric Blake wrote: > I still need to add testsuite coverage. Perhaps it might be easier > if I create a new '--filter=log logfile=foo' filter that produces > a log of which commands a client sent, then compare the log using > a known client that uses write_zeroes (qemu-io works well) both > with and without --filter=nozero to prove
2019 Aug 13
0
[nbdkit PATCH 2/2] nozero: More efficient FUA handling
The nozero filter can split a large request with FUA into several smaller requests; optimize whether the FUA flag is passed on to the next layer based on whether FUA is emulated with flush (only the last write needs it) or is natively supported (every write needs it). Missed in commit df0cc21d. Signed-off-by: Eric Blake <eblake@redhat.com> --- filters/nozero/nozero.c | 17 +++++++++++++++--
2018 Jan 24
8
[nbdkit PATCH 0/3] Add nozero filter
I still need to add testsuite coverage. Perhaps it might be easier if I create a new '--filter=log logfile=foo' filter that produces a log of which commands a client sent, then compare the log using a known client that uses write_zeroes (qemu-io works well) both with and without --filter=nozero to prove that the change in advertisement changes the commands sent over the wire (that would
2019 Jul 05
0
Re: [nbdkit] [filter/nozero] large binary size with GCC 9
On 7/4/19 1:38 PM, Thomas Weißschuh wrote: > Hi all, > > It seems GCC 9 does not put read-only zero-initialized variables into the BSS > section anymore; instead it is put into RODATA. > (See the thread at [0], especially [1]) > Thanks for the pointers. > In filter/nozero a 64M large, static, zeroed, read-only array is declared. > The new behavior of GCC puts this array
2019 Jan 04
0
[PATCH nbdkit] common/include: Add generic MIN and MAX macros.
The preferred implementation uses __auto_type, a GCC extension also now supported by Clang. Unfortunately OpenBSD ships with GCC 4.2.1 (from 2007!) which predates this extension by quite a few years, so we have to be able to fall back to a plain macro. --- configure.ac | 20 ++++++++++- common/include/minmax.h | 63 +++++++++++++++++++++++++++++++++++
2019 Jan 04
0
[PATCH nbdkit v5 2/3] common/include: Add generic MIN and MAX macros.
The preferred implementation uses __auto_type, a GCC extension also now supported by Clang. Unfortunately OpenBSD ships with GCC 4.2.1 (from 2007!) which predates this extension by quite a few years, so we have to be able to fall back to a plain macro. --- configure.ac | 20 ++++++++++- common/include/minmax.h | 63 +++++++++++++++++++++++++++++++++++
2019 Aug 13
3
[nbdkit PATCH 0/2] more fast zero prep
Another couple things I noticed that are worth improving, but aren't strictly related to implementing fast zero support. Eric Blake (2): server: Assert sane error responses nozero: More efficient FUA handling filters/nozero/nozero.c | 17 +++++++++++-- server/filters.c | 56 +++++++++++++++++++++++++++++++++-------- server/protocol.c | 32 +++++++++++++++++------ 3 files
2019 May 16
0
[nbdkit PATCH v2 24/24] nocache: Implement new filter
Similar to the existing fua, nozero and noextents filters, add a filter to make it easy to override the basic caching functionality, in part to facilitate timing tests of whether a plugin's cache implementation is worthwhile. A worthwhile test to add to the testsuite would connect the log filter both before and after the nocache filter, to prove how caching requests are altered. However,
2019 Jul 05
0
Re: [nbdkit] [filter/nozero] large binary size with GCC 9
On 7/5/19 8:21 AM, Thomas Weißschuh wrote: > On Fri, 2019-07-05T08:04-0500, Eric Blake wrote: >> On 7/4/19 1:38 PM, Thomas Weißschuh wrote: >>> In filter/nozero a 64M large, static, zeroed, read-only array is declared. >>> The new behavior of GCC puts this array as-is into the binary inflating the >>> size by a factor of around 10000. >> >> Odd that
2019 May 17
4
[nbdkit PATCH 0/3] Add noparallel filter
Being able to programmatically force nbdkit to be less parallel can be useful during testing. I was less sure about patch 3, but if you like it, I'm inclined to instead squash it into patch 1. This patch is written to apply after my NBD_CMD_CACHE work (since I touched the nocache filter); but can be rearranged if we think this series should go in first while that one undergoes any adjustments
2018 Sep 07
0
[PATCH nbdkit 3/6] file: Make the file= parameter into a magic config key.
--- docs/nbdkit-captive.pod | 4 ++-- docs/nbdkit-plugin.pod | 2 +- docs/nbdkit-service.pod | 2 +- docs/nbdkit-tls.pod | 2 +- filters/cow/nbdkit-cow-filter.pod | 4 ++-- filters/delay/nbdkit-delay-filter.pod | 2 +- filters/error/nbdkit-error-filter.pod | 6 +++---
2018 Sep 08
0
[PATCH nbdkit v2 3/6] file: Make the file= parameter into a magic config key.
--- docs/nbdkit-captive.pod | 4 ++-- docs/nbdkit-plugin.pod | 2 +- docs/nbdkit-service.pod | 2 +- docs/nbdkit-tls.pod | 2 +- filters/cow/nbdkit-cow-filter.pod | 4 ++-- filters/delay/nbdkit-delay-filter.pod | 2 +- filters/error/nbdkit-error-filter.pod | 6 +++---
2019 Jul 05
2
Re: [nbdkit] [filter/nozero] large binary size with GCC 9
On Fri, 2019-07-05T08:48-0500, Eric Blake wrote: > On 7/5/19 8:21 AM, Thomas Weißschuh wrote: > > On Fri, 2019-07-05T08:04-0500, Eric Blake wrote: > >> On 7/4/19 1:38 PM, Thomas Weißschuh wrote: > >>> In filter/nozero a 64M large, static, zeroed, read-only array is declared. > >>> The new behavior of GCC puts this array as-is into the binary inflating the
2019 May 17
0
[nbdkit PATCH 3/3] filters: Use only .thread_model, not THREAD_MODEL
No need for filters to specify their model in two different ways; the callback alone is sufficient. Since all filters are in-tree, we can deal with the API/ABI change made here. Signed-off-by: Eric Blake <eblake@redhat.com> --- docs/nbdkit-filter.pod | 48 +++++++++++++++------------------ include/nbdkit-filter.h | 6 ++--- filters/cow/cow.c | 2 --
2019 Jul 05
0
Re: [nbdkit] [filter/nozero] large binary size with GCC 9
On 7/5/19 9:52 AM, Thomas Weißschuh wrote: >> Good to know. So the fix is indeed removing 'const', rather than >> reducing scope (although I might as well reduce scope while at it, for >> consistency). > > Does this not mean, the 64M are zeroed on every loop iteration in every call to > these functions? No. static variables are guaranteed by the C standard to
2018 Mar 22
1
[nbdkit PATCH] plugins: Add .can_zero callback
Originally, I thought that since the plugin always emulates .zero with a fallback to .pwrite, we didn't need to expose the backend's .can_zero to plugins. But there is another consideration, as shown at least in the nbd plugin: a plugin may implement a .zero callback that depends on support from a remote endpoint. If the remote endpoint doesn't support zeroes, then the plugin HAS to