On 05/12/2014 07:37 AM, Martin Kletzander wrote:
When a domain was started without registration in sanlock, but
libvirt
was restarted after that, most of the operations failed due to
contacting sanlock about that process. E.g. migration could not be
performed because the locks couldn't be released (or inquired before a
release).
Resolves:
https://bugzilla.redhat.com/show_bug.cgi?id=1088034
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
src/locking/lock_driver_sanlock.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
@@ -487,6 +491,16 @@ static int virLockManagerSanlockNew(virLockManagerPtr lock,
}
}
+ /* Sanlock needs process registration, but the only way how to probe
+ * whether a process has been registered is ti inquire the lock. If
s/ti/to/
+ * sanlock_inquire() returns -ESRCH, then it is not registered,
but
+ * if it returns any other error (rv < 0), then we cannot fail due
+ * to back-compat. So this whole call is non-fatal, because it's
+ * called from all over the place (is will usually fail). It merely
s/is/it/
ACK with typo fixes
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org