[libvirt] [PATCH v3 12/28] _virLockManagerLockDaemonPrivate: Move @hasRWDisks into dom union
Michal Privoznik
mprivozn at redhat.com
Mon Sep 3 15:13:51 UTC 2018
On 08/30/2018 11:14 PM, John Ferlan wrote:
>
>
> On 08/27/2018 04:08 AM, Michal Privoznik wrote:
>> The fact whether domain has or hasn't RW disks is specific to
>
> "or doesn't have"
>
>> VIR_LOCK_MANAGER_OBJECT_TYPE_DOMAIN and therefore should reside
>> in union specific to it.
>>
>> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
>> ---
>> src/locking/lock_driver_lockd.c | 187 +++++++++++++++++++++-------------------
>> 1 file changed, 100 insertions(+), 87 deletions(-)
>>
>
> This patch does a bit more than advertised...
>
>> diff --git a/src/locking/lock_driver_lockd.c b/src/locking/lock_driver_lockd.c
>> index 8ca0cf5426..98953500b7 100644
>> --- a/src/locking/lock_driver_lockd.c
>> +++ b/src/locking/lock_driver_lockd.c
>> @@ -63,6 +63,8 @@ struct _virLockManagerLockDaemonPrivate {
>> char *name;
>> int id;
>> pid_t pid;
>> +
>> + bool hasRWDisks;
>> } dom;
>>
>> struct {
>> @@ -74,8 +76,6 @@ struct _virLockManagerLockDaemonPrivate {
>>
>> size_t nresources;
>> virLockManagerLockDaemonResourcePtr resources;
>> -
>> - bool hasRWDisks;
>> };
>
> From the aspect of @dom vs @daemon union, moving @hasRWDisks still has
> no bearing other than classifying it as a @dom type resource which is
> fine, don't get me wrong on this - I'm just trying to go one patch at a
> time here.
Yes. Because of the 'namespacing' I described in reply to previous
patch, hasRWDisks has to go into domain related union. IOW, hasRWDisks
has no meaning for DAEMON type of lock.
>
>>
>>
>> @@ -566,107 +566,119 @@ static int virLockManagerLockDaemonAddResource(virLockManagerPtr lock,
>> if (flags & VIR_LOCK_MANAGER_RESOURCE_READONLY)
>> return 0;
>>
>> - switch (type) {
>> - case VIR_LOCK_MANAGER_RESOURCE_TYPE_DISK:
>> - if (params || nparams) {
>> - virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
>> - _("Unexpected parameters for disk resource"));
>> - goto cleanup;
>> - }
>> - if (!driver->autoDiskLease) {
>> - if (!(flags & (VIR_LOCK_MANAGER_RESOURCE_SHARED |
>> - VIR_LOCK_MANAGER_RESOURCE_READONLY)))
>> - priv->hasRWDisks = true;
>> - return 0;
>> - }
>> + switch (priv->type) {
>> + case VIR_LOCK_MANAGER_OBJECT_TYPE_DOMAIN:
>
> Hmm. Why wasn't this done in the previous patch?
Okay, I'll move it there.
Michal
More information about the libvir-list
mailing list