From 683e1a3cf81054790997d2ea2c5ef5f1059edc68 Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Mon, 26 May 2025 13:11:32 +0200 Subject: [PATCH] conf: Add virDomainDeviceFindNvmeController MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Same as for the SCSI controller, but this time for NVMe, will be used later to do some post parse modifications. Signed-off-by: Martin Kletzander Reviewed-by: Ján Tomko --- src/conf/domain_conf.c | 17 +++++++++++++++++ src/conf/domain_conf.h | 3 +++ 2 files changed, 20 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 447f1ff447..4371b25e3b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -6791,6 +6791,23 @@ virDomainDeviceFindSCSIController(const virDomainDef *def, return NULL; } + +virDomainControllerDef * +virDomainDeviceFindNvmeController(const virDomainDef *def, + const virDomainDeviceDriveAddress *addr) +{ + size_t i; + + for (i = 0; i < def->ncontrollers; i++) { + if (def->controllers[i]->type == VIR_DOMAIN_CONTROLLER_TYPE_NVME && + def->controllers[i]->idx == addr->controller) + return def->controllers[i]; + } + + return NULL; +} + + int virDomainDiskDefAssignAddress(virDomainXMLOption *xmlopt G_GNUC_UNUSED, virDomainDiskDef *def, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 13d4147c44..4adc952b6b 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -3699,6 +3699,9 @@ void virDomainDiskSetFormat(virDomainDiskDef *def, int format); virDomainControllerDef * virDomainDeviceFindSCSIController(const virDomainDef *def, const virDomainDeviceDriveAddress *addr); +virDomainControllerDef * +virDomainDeviceFindNvmeController(const virDomainDef *def, + const virDomainDeviceDriveAddress *addr); virDomainControllerDef *virDomainControllerDefNew(virDomainControllerType type); void virDomainControllerDefFree(virDomainControllerDef *def); G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainControllerDef, virDomainControllerDefFree); -- 2.47.3