From d7d405664599772af6fe00d5a6f6256889617f9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Date: Tue, 20 Dec 2022 23:52:06 +0100 Subject: [PATCH] libxl: adjust 'ich6' sound card name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Xen 4.17 has strict parsing of 'soundhw' option that allows only specific values (instead of passing through any value directly to qemu's -soundhw option, it uses -device now). For 'intel-hda' audio device, it requires "hda" string. "hda" works with older libxl too. Other supported models are the same as in libvirt XML. Signed-off-by: Marek Marczykowski-Górecki Signed-off-by: Michal Privoznik Reviewed-by: Michal Privoznik --- src/libxl/libxl_conf.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index d13e48abb2..17ac880634 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -592,8 +592,12 @@ libxlMakeDomBuildInfo(virDomainDef *def, * a single device. From the man page: soundhw=DEVICE */ virDomainSoundDef *snd = def->sounds[0]; + const char *model = virDomainSoundModelTypeToString(snd->model); - b_info->u.hvm.soundhw = g_strdup(virDomainSoundModelTypeToString(snd->model)); + if (snd->model == VIR_DOMAIN_SOUND_MODEL_ICH6) + model = "hda"; + + b_info->u.hvm.soundhw = g_strdup(model); } for (i = 0; i < def->os.nBootDevs; i++) {