From: Peter Krempa Date: Wed, 5 Feb 2025 18:27:36 +0000 (+0100) Subject: node_device_udev: Fix build failure in ccw device code X-Git-Tag: v11.1.0-rc1~109 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=15cd4ec8329b77cd8719236339e127bdb7521bd9;p=thirdparty%2Flibvirt.git node_device_udev: Fix build failure in ccw device code clang complains: ../../../libvirt/src/node_device/node_device_udev.c:1408:82: error: result of comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-unsigned-enum-zero-compare] 1408 | if ((data->ccwgroup_dev.type = virNodeDevCCWGroupCapTypeFromString(devtype)) < 0) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~ 1 error generated. Fix it by adding a temporary int variable to facilitate the check before assigning to the unsigned enum value. Fixes: 985cb9c32a6 Signed-off-by: Peter Krempa --- diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c index 082f9d5cf0..94e8626aee 100644 --- a/src/node_device/node_device_udev.c +++ b/src/node_device/node_device_udev.c @@ -1398,6 +1398,7 @@ udevProcessCCWGroup(struct udev_device *device, { const char *devtype = udev_device_get_devtype(device); virNodeDevCapData *data = &def->caps->data; + int tmp; data->ccwgroup_dev.address = virCCWDeviceAddressFromString(udev_device_get_sysname(device)); @@ -1405,9 +1406,11 @@ udevProcessCCWGroup(struct udev_device *device, udevGenerateDeviceName(device, def, NULL); - if ((data->ccwgroup_dev.type = virNodeDevCCWGroupCapTypeFromString(devtype)) < 0) + if ((tmp = virNodeDevCCWGroupCapTypeFromString(devtype)) < 0) return -1; + data->ccwgroup_dev.type = tmp; + switch (data->ccwgroup_dev.type) { case VIR_NODE_DEV_CAP_CCWGROUP_QETH_GENERIC: case VIR_NODE_DEV_CAP_CCWGROUP_QETH_LAYER2: