mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-08 20:51:26 +00:00
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:
parent
45a8e3988f
commit
1df0a19869
@ -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
|
static int
|
||||||
virDomainCCWAddressIncrement(virCCWDeviceAddress *addr)
|
virDomainCCWAddressIncrement(virCCWDeviceAddress *addr)
|
||||||
{
|
{
|
||||||
@ -1334,7 +1328,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!autoassign && dev->addr.ccw.assigned) {
|
if (!autoassign && dev->addr.ccw.assigned) {
|
||||||
if (!(addr = virDomainCCWAddressAsString(&dev->addr.ccw)))
|
if (!(addr = virCCWDeviceAddressAsString(&dev->addr.ccw)))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (virHashLookup(addrs->defined, addr)) {
|
if (virHashLookup(addrs->defined, addr)) {
|
||||||
@ -1344,7 +1338,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
} else if (autoassign && !dev->addr.ccw.assigned) {
|
} else if (autoassign && !dev->addr.ccw.assigned) {
|
||||||
if (!(addr = virDomainCCWAddressAsString(&addrs->next)))
|
if (!(addr = virCCWDeviceAddressAsString(&addrs->next)))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
while (virHashLookup(addrs->defined, addr)) {
|
while (virHashLookup(addrs->defined, addr)) {
|
||||||
@ -1354,7 +1348,7 @@ virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
VIR_FREE(addr);
|
VIR_FREE(addr);
|
||||||
if (!(addr = virDomainCCWAddressAsString(&addrs->next)))
|
if (!(addr = virCCWDeviceAddressAsString(&addrs->next)))
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
dev->addr.ccw = addrs->next;
|
dev->addr.ccw = addrs->next;
|
||||||
|
@ -209,9 +209,6 @@ int virDomainCCWAddressAssign(virDomainDeviceInfo *dev,
|
|||||||
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2);
|
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2);
|
||||||
void virDomainCCWAddressSetFree(virDomainCCWAddressSet *addrs);
|
void virDomainCCWAddressSetFree(virDomainCCWAddressSet *addrs);
|
||||||
|
|
||||||
char* virDomainCCWAddressAsString(virCCWDeviceAddress *addr)
|
|
||||||
ATTRIBUTE_NONNULL(1);
|
|
||||||
|
|
||||||
virDomainCCWAddressSet *
|
virDomainCCWAddressSet *
|
||||||
virDomainCCWAddressSetCreateFromDomain(virDomainDef *def)
|
virDomainCCWAddressSetCreateFromDomain(virDomainDef *def)
|
||||||
ATTRIBUTE_NONNULL(1);
|
ATTRIBUTE_NONNULL(1);
|
||||||
|
@ -15743,7 +15743,7 @@ virDomainNetFindIdx(virDomainDef *def, virDomainNetDef *net)
|
|||||||
alias = net->info.alias;
|
alias = net->info.alias;
|
||||||
|
|
||||||
if (CCWAddrSpecified)
|
if (CCWAddrSpecified)
|
||||||
addr = virDomainCCWAddressAsString(&net->info.addr.ccw);
|
addr = virCCWDeviceAddressAsString(&net->info.addr.ccw);
|
||||||
else if (PCIAddrSpecified)
|
else if (PCIAddrSpecified)
|
||||||
addr = virPCIDeviceAddressAsString(&net->info.addr.pci);
|
addr = virPCIDeviceAddressAsString(&net->info.addr.pci);
|
||||||
else
|
else
|
||||||
|
@ -147,7 +147,6 @@ virPCIDeviceAddressParseXML;
|
|||||||
|
|
||||||
# conf/domain_addr.h
|
# conf/domain_addr.h
|
||||||
virDomainCCWAddressAssign;
|
virDomainCCWAddressAssign;
|
||||||
virDomainCCWAddressAsString;
|
|
||||||
virDomainCCWAddressSetCreateFromDomain;
|
virDomainCCWAddressSetCreateFromDomain;
|
||||||
virDomainCCWAddressSetFree;
|
virDomainCCWAddressSetFree;
|
||||||
virDomainPCIAddressBusIsFullyReserved;
|
virDomainPCIAddressBusIsFullyReserved;
|
||||||
@ -1926,6 +1925,10 @@ virBufferUse;
|
|||||||
virBufferVasprintf;
|
virBufferVasprintf;
|
||||||
|
|
||||||
|
|
||||||
|
# util/virccw.h
|
||||||
|
virCCWDeviceAddressAsString;
|
||||||
|
|
||||||
|
|
||||||
# util/vircgroup.h
|
# util/vircgroup.h
|
||||||
virCgroupAddMachineProcess;
|
virCgroupAddMachineProcess;
|
||||||
virCgroupAddProcess;
|
virCgroupAddProcess;
|
||||||
|
@ -667,7 +667,7 @@ nodeDeviceObjFormatAddress(virNodeDeviceObj *obj)
|
|||||||
.devno = caps->data.ccw_dev.devno
|
.devno = caps->data.ccw_dev.devno
|
||||||
};
|
};
|
||||||
|
|
||||||
addr = virDomainCCWAddressAsString(&ccw_addr);
|
addr = virCCWDeviceAddressAsString(&ccw_addr);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ util_sources = [
|
|||||||
'virbitmap.c',
|
'virbitmap.c',
|
||||||
'virbpf.c',
|
'virbpf.c',
|
||||||
'virbuffer.c',
|
'virbuffer.c',
|
||||||
|
'virccw.c',
|
||||||
'vircgroup.c',
|
'vircgroup.c',
|
||||||
'vircgroupbackend.c',
|
'vircgroupbackend.c',
|
||||||
'vircgroupv1.c',
|
'vircgroupv1.c',
|
||||||
|
29
src/util/virccw.c
Normal file
29
src/util/virccw.c
Normal 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);
|
||||||
|
}
|
@ -29,3 +29,6 @@ struct _virCCWDeviceAddress {
|
|||||||
unsigned int devno;
|
unsigned int devno;
|
||||||
bool assigned;
|
bool assigned;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
char* virCCWDeviceAddressAsString(virCCWDeviceAddress *addr)
|
||||||
|
ATTRIBUTE_NONNULL(1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user