[Libguestfs] [nbdkit PATCH 3/3] tests: Add regression test for NBDKIT_EMULATE_CACHE fix
Richard W.M. Jones
rjones at redhat.com
Fri Jun 10 21:26:24 UTC 2022
On Fri, Jun 10, 2022 at 04:15:58PM -0500, Eric Blake wrote:
> On Fri, Jun 10, 2022 at 10:03:23PM +0100, Richard W.M. Jones wrote:
> > After your patch series, the two lines just do nothing at all.
>
> No, they are still useful. If we don't call them during handshake,
> then the later call to next->can_zero in io.c may fail without setting
> errno. Any time we want to guarantee a next->can_* function will
> succeed at all later points where we need a sane errno, we do so by
> pre-caching it during handshake.
OK, I see - it's because of the specific behaviour of io_zeroout which
calls next->can_zero / next->zero. Not obvious at all!
> >
> > Anyway, I will remove them.
>
> Please don't. But adding comments for why they are important is okay.
I'll leave them.
> I also fixed another bug today: the eval plugin is smart enough to
> synthesize several .can_* helpers if the corresponding function exists
> (for example, with sh, you have to explicitly implement can_flush to
> get flush called, but not with eval); but the eval plugin wasn't doing
> a good synthesis for .can_cache.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW
More information about the Libguestfs
mailing list