On 9/22/20 6:16 PM, Daniel P. Berrangé wrote: > This thread from a little over a year ago: > > http://lists.wpkg.org/pipermail/sheepdog/2019-March/thread.html > > states that sheepdog is no longer actively developed. The only mentioned > users are some companies who are said to have it for legacy reasons with > plans to replace it by Ceph. There is talk about cutting out existing > features to turn it into a simple demo of how to write a distributed > block service. There is no evidence of anyone working on that idea: > > https://github.com/sheepdog/sheepdog/commits/master > > No real commits to git since Jan 2018, and before then just some minor > technical debt cleanup.. > > There is essentially no activity on the mailing list aside from > patches to QEMU that get CC'd due to our MAINTAINERS entry. > > Fedora packages for sheepdog failed to build from upstream source > because of the more strict linker that no longer merges duplicate > global symbols. Fedora patches it to add the missing "extern" > annotations and presumably other distros do to, but upstream source > remains broken. > > There is only basic compile testing, no functional testing of the > driver. > > Since there are no build pre-requisites the sheepdog driver is currently > enabled unconditionally. This would result in configure issuing a > deprecation warning by default for all users. Thus the configure default > is changed to disable it, requiring users to pass --enable-sheepdog to > build the driver. > > Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> > --- > block/sheepdog.c | 15 +++++++++++++++ > configure | 5 +++-- > docs/system/deprecated.rst | 9 +++++++++ > 3 files changed, 27 insertions(+), 2 deletions(-) > > diff --git a/block/sheepdog.c b/block/sheepdog.c > index cbbebc1aaf..7f68bd6a1a 100644 > --- a/block/sheepdog.c > +++ b/block/sheepdog.c > @@ -242,6 +242,17 @@ typedef struct SheepdogInode { > */ > #define FNV1A_64_INIT ((uint64_t)0xcbf29ce484222325ULL) > > +static void deprecation_warning(void) > +{ > + static bool warned = false; Checkpatch warns there is no need to initialize static bool to false, otherwise: Reviewed-by: Philippe Mathieu-Daudé <philmd@xxxxxxxxxx> > + > + if (!warned) { > + warn_report("the sheepdog block driver is deprecated and will be " > + "removed in a future release"); > + warned = true; > + } > +} [...]