On Thu, Feb 27, 2025 at 12:41:10 +0100, Anthony Harivel wrote:
Hi Peter,
>> @@ -7062,6 +7065,15 @@ qemuBuildAccelCommandLine(virCommand *cmd,
>> def->kvm_features->features[VIR_DOMAIN_KVM_DIRTY_RING] ==
VIR_TRISTATE_SWITCH_ON) {
>> virBufferAsprintf(&buf, ",dirty-ring-size=%d",
def->kvm_features->dirty_ring_size);
>> }
>> +
>> + if (def->features[VIR_DOMAIN_FEATURE_KVM] == VIR_TRISTATE_SWITCH_ON
&&
>> + def->kvm_features->features[VIR_DOMAIN_KVM_RAPL] ==
VIR_TRISTATE_SWITCH_ON) {
>> + virBufferAddLit(&buf, ",rapl=true");
>> +
>> + if (def->kvm_features->rapl_helper_socket != NULL) {
>> + virBufferAsprintf(&buf, ",rapl-helper-socket=%s",
def->kvm_features->rapl_helper_socket);
>> + }
>
> As noted above; qemu makes the socket mandatory so the check doesn't
> make much sense.
>
I'm not sure to follow the above remark. The socket is mandatory in QEMU
yes, so it should also be mandatory in libvirt so that we don't make the
QEMU process fails at start ?
You should validate that the socket is present; either provided by user
or auto-generated once managed mode will be introduced.
Also you then don't need to conditionally format it any more once
you check that it's present.
Or do we just let the user check what QEMU is returning so that the
user
correct later the XML ?
Normally we validate config beforehand; the errors from qemu can be iffy
sometimes.
Thanks
Anthony
> Also we'll most likely need to use virQEMUBuildBufferEscapeComma here to
Also don't forget this ^^^
> properly format paths with a comma since they are
user-provided.
>