On Thu, Dec 15, 2022 at 07:50:43AM -0800, Andrea Bolognani wrote:
On Wed, Dec 14, 2022 at 02:55:30PM -0700, Jim Fehlig wrote:
> On 12/14/22 11:08, Andrea Bolognani wrote:
> > On Tue, Dec 13, 2022 at 05:31:02PM -0700, Jim Fehlig wrote:
> > > +* libvirt-daemon-plugin-lockd
> > > + This package provides the lockd.so module, a daemon plugin for
communicating
> > > + with a virtlockd configured to use POSIX fcntl advisory locks.
> > > +
> > > +* libvirt-daemon-plugin-sanlock
> > > + This package provides the sanlock.so module, a daemon plugin for
communicating
> > > + with a virtlockd configured to use sanlock.
> >
> > Based on Dan's explanation, these descriptions are not accurate: the
> > lockd.so module is used by the hypervisor driver to manage locks via
> > virtlockd, while the sanlock.so to do the same via sanlock.
>
> I think the first one is accurate. lockd.so is a plugin for daemons to
> communicate with virtlockd. Daniel wrote
>
> "virtqemud locks(sic) the lockd.so plugin, as lockd.so
> provides the client impl to talk to virtlockd. Think of lockd.so
> as being equiv of libvirt.so".
>
> I assume sanlock.so is the same. It provides the client impl for daemons to
> talk to virtlockd's sanlock backend. Regardless, suggestions on the actual
> text to put here would be much appreciated.
My understanding is that configuring the hypervisor driver to use
sanlock results in it loading the sanlock.so plugin and calling out
to sanlock directly, without going through virtlockd. virlockd is
used when lockd.so is loaded. Basically the plugins provide the
implementation of the locking interface, with the backend being
sanlock and virtlockd respectively.
Yes, sanlock has its own daemon that's the equivalent of virtlockd.
Libvirt only needs to proivde the client side of sanlock (our plugin).
With regards,
Daniel
--
|:
https://berrange.com -o-
https://www.flickr.com/photos/dberrange :|
|:
https://libvirt.org -o-
https://fstop138.berrange.com :|
|:
https://entangle-photo.org -o-
https://www.instagram.com/dberrange :|