util: refactor virDomainCCWAddressAsString into virccw

Move virDomainCCWAddressAsString into virccw and rename method as
virCCWDeviceAddressAsString.

Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Boris Fiuczynski 2022-05-13 12:31:02 +02:00 committed by Michal Privoznik
parent 45a8e3988f
commit 1df0a19869
8 changed files with 42 additions and 15 deletions

View File

@ -1303,12 +1303,6 @@ virDomainPCIAddressSetAllMulti(virDomainDef *def)
}
char*
virDomainCCWAddressAsString(virCCWDeviceAddress *addr)
{
return g_strdup_printf("%x.%x.%04x", addr->cssid, addr->ssid, addr->devno);
}
static int
virDomainCCWAddressIncrement(virCCWDeviceAddress *addr)
{
@ -1334,7 +1328,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
return 0;
if (!autoassign && dev->addr.ccw.assigned) {
if (!(addr = virDomainCCWAddressAsString(&dev->addr.ccw)))
if (!(addr = virCCWDeviceAddressAsString(&dev->addr.ccw)))
return -1;
if (virHashLookup(addrs->defined, addr)) {
@ -1344,7 +1338,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
return -1;
}
} else if (autoassign && !dev->addr.ccw.assigned) {
if (!(addr = virDomainCCWAddressAsString(&addrs->next)))
if (!(addr = virCCWDeviceAddressAsString(&addrs->next)))
return -1;
while (virHashLookup(addrs->defined, addr)) {
@ -1354,7 +1348,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
return -1;
}
VIR_FREE(addr);
if (!(addr = virDomainCCWAddressAsString(&addrs->next)))
if (!(addr = virCCWDeviceAddressAsString(&addrs->next)))
return -1;
}
dev->addr.ccw = addrs->next;

View File

@ -209,9 +209,6 @@ int virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2);
void virDomainCCWAddressSetFree(virDomainCCWAddressSet *addrs);
char* virDomainCCWAddressAsString(virCCWDeviceAddress *addr)
ATTRIBUTE_NONNULL(1);
virDomainCCWAddressSet *
virDomainCCWAddressSetCreateFromDomain(virDomainDef *def)
ATTRIBUTE_NONNULL(1);

View File

@ -15743,7 +15743,7 @@ virDomainNetFindIdx(virDomainDef *def, virDomainNetDef *net)
alias = net->info.alias;
if (CCWAddrSpecified)
addr = virDomainCCWAddressAsString(&net->info.addr.ccw);
addr = virCCWDeviceAddressAsString(&net->info.addr.ccw);
else if (PCIAddrSpecified)
addr = virPCIDeviceAddressAsString(&net->info.addr.pci);
else

View File

@ -147,7 +147,6 @@ virPCIDeviceAddressParseXML;
# conf/domain_addr.h
virDomainCCWAddressAssign;
virDomainCCWAddressAsString;
virDomainCCWAddressSetCreateFromDomain;
virDomainCCWAddressSetFree;
virDomainPCIAddressBusIsFullyReserved;
@ -1926,6 +1925,10 @@ virBufferUse;
virBufferVasprintf;
# util/virccw.h
virCCWDeviceAddressAsString;
# util/vircgroup.h
virCgroupAddMachineProcess;
virCgroupAddProcess;

View File

@ -667,7 +667,7 @@ nodeDeviceObjFormatAddress(virNodeDeviceObj *obj)
.devno = caps->data.ccw_dev.devno
};
addr = virDomainCCWAddressAsString(&ccw_addr);
addr = virCCWDeviceAddressAsString(&ccw_addr);
break;
}

View File

@ -9,6 +9,7 @@ util_sources = [
'virbitmap.c',
'virbpf.c',
'virbuffer.c',
'virccw.c',
'vircgroup.c',
'vircgroupbackend.c',
'vircgroupv1.c',

29
src/util/virccw.c Normal file
View File

@ -0,0 +1,29 @@
/*
* virccw.c: helper APIs for managing host CCW devices
*
* Copyright (C) 2022 IBM Corporation
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
#include <config.h>
#include "virccw.h"
char*
virCCWDeviceAddressAsString(virCCWDeviceAddress *addr)
{
return g_strdup_printf("%x.%x.%04x", addr->cssid, addr->ssid, addr->devno);
}

View File

@ -29,3 +29,6 @@ struct _virCCWDeviceAddress {
unsigned int devno;
bool assigned;
};
char* virCCWDeviceAddressAsString(virCCWDeviceAddress *addr)
ATTRIBUTE_NONNULL(1);