From: Niels de Vos <ndevos@redhat.com>
To: Jeff Cody <jcody@redhat.com>
Cc: Eric Blake <eblake@redhat.com>,
qemu-block@nongnu.org, qemu-devel@nongnu.org,
Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v3] block/gluster: Handle changed glfs_ftruncate signature
Date: Tue, 31 Jul 2018 11:18:02 +0200 [thread overview]
Message-ID: <20180731091802.GL17519@ndevos-x270> (raw)
In-Reply-To: <20180730192729.GA443110@localhost.localdomain>
On Mon, Jul 30, 2018 at 03:27:29PM -0400, Jeff Cody wrote:
> On Mon, Jul 30, 2018 at 10:07:27AM -0500, Eric Blake wrote:
> > On 07/28/2018 02:50 AM, Niels de Vos wrote:
> > >>
> > >>Part of me wishes that libgfapi had just created a new function
> > >>'glfs_ftruncate2', so that existing users don't need to handle the api
> > >>change. But I guess in the grand scheme, not a huge deal either way.
> > >
> > >Gluster uses versioned symbols, so older binaries will keep working with
> > >new libraries. It is (hopefully) rare that existing symbols get updated.
> > >We try to send patches for these kind of changes to the projects we know
> > >well in advance, reducing the number of surprises.
> >
> > >>I can go ahead and add that to the comment in my branch after applying, if
> > >>Niels can let me know what that version is/will be (if known).
> > >
> > >The new glfs_ftruncate() will be part of glusterfs-5 (planned for
> > >October). We're changing the numbering scheme, it was expected to come
> > >in glusterfs-4.2, but that is a version that never will be released.
> > >
> >
> > Wait - so you're saying gluster has not yet released the incompatible
> > change? Now would be the right time to get rid of the API breakage, before
> > you bake it in, rather than relying solely on the versioned symbols to avoid
> > an ABI breakage but forcing all clients to compensate to the API breakage.
> >
>
> If this is not yet in a released version of Gluster, I'm not real eager to
> pollute the QEMU driver codebase with #ifdef's, especially if there is a
> possibility the API change may not actually materialize.
>
> Is there any reason that this change is being approached in a way that
> breaks API usage, and is it too late in the Gluster development pipeline to
> change that?
There recently have been a few changes like this in libgfapi. These have
been introduced to improve performance in common use-cases where an
updated 'struct stat' is needed after an operation. Some functions have
been adapted in previous releases, glfs_ftruncate() landed too late for
that. I hope we'll get a complete coherent API with glusterfs-5 again.
For QEMU this means additional changes will come related to
glfs_fallocate(), glfs_zerofill() and probably more. The current
glusterfs-4.1 version will be maintained for one year, after which the
detection/#ifdef can be removed as the than maintained versions should
all have the updated API. I'm sorry for the inconvenience that this
causes.
If you prefer, I can wait with sending patches for QEMU with future
Gluster releases until additional changes have landed in libgfapi.
Thanks,
Niels
next prev parent reply other threads:[~2018-07-31 9:18 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-27 8:19 [Qemu-devel] [PATCH v3] block/gluster: Handle changed glfs_ftruncate signature Niels de Vos
2018-07-27 13:21 ` [Qemu-devel] [PATCH v3 for-3.0] " Eric Blake
2018-07-27 13:24 ` [Qemu-devel] [PATCH v3] " Eric Blake
2018-07-28 4:18 ` Jeff Cody
2018-07-28 7:50 ` Niels de Vos
2018-07-30 15:07 ` Eric Blake
2018-07-30 19:27 ` Jeff Cody
2018-07-31 9:18 ` Niels de Vos [this message]
2018-07-31 19:51 ` Jeff Cody
2018-08-01 11:47 ` Niels de Vos
2018-08-01 15:17 ` Eric Blake
2018-07-30 21:24 ` Jeff Cody
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180731091802.GL17519@ndevos-x270 \
--to=ndevos@redhat.com \
--cc=eblake@redhat.com \
--cc=jcody@redhat.com \
--cc=prasanna.kalever@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.