Re: [PATCH 1/1] domain_conf.c: skip checking ZPCI address is incomplete if not present

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniel,

Sorry for the incorrect code. Thank you for identifying and fixing it:-)

I would like to know, how did you identify the error?,
Is it possible to check for internal errors with the help of unit tests?
Your answer would help me able to identify any incorrect code before sending the patch.

Warm Regards
Shalini C S


On 6/26/20 11:49 PM, Daniel Henrique Barboza wrote:
Commit 076591009ad1 ("conf: fix zPCI address auto-generation on
s390") is doing a check for virZPCIDeviceAddressIsIncomplete()
prior to checking if the device has a ZPCI address at all. This
results in errors like these when starting Libvirt:

error : virDomainDeviceInfoFormat:7527 : internal error:
Missing uid or fid attribute of zPCI address

Fix it by moving virZPCIDeviceAddressIsIncomplete() after the
check done by virZPCIDeviceAddressIsPresent().

Fixes: 076591009ad11ec108521b52a4945d0f895fa160
CC: Bjoern Walk <bwalk@xxxxxxxxxxxxx>
CC: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxx>
CC: Shalini Chellathurai Saroja <shalini@xxxxxxxxxxxxx>
CC: Andrea Bolognani <abologna@xxxxxxxxxx>
Signed-off-by: Daniel Henrique Barboza <danielhb413@xxxxxxxxx>
---
  src/conf/domain_conf.c | 8 ++++----
  1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 31ba78b950..33f177b16f 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -7522,11 +7522,11 @@ virDomainDeviceInfoFormat(virBufferPtr buf,
                                virTristateSwitchTypeToString(info->addr.pci.multi));
          }
- if (virZPCIDeviceAddressIsIncomplete(&info->addr.pci.zpci)) {
-            virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                           _("Missing uid or fid attribute of zPCI address"));
-        }
          if (virZPCIDeviceAddressIsPresent(&info->addr.pci.zpci)) {
+            if (virZPCIDeviceAddressIsIncomplete(&info->addr.pci.zpci))
+                virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                               _("Missing uid or fid attribute of zPCI address"));
+
              virBufferAsprintf(&childBuf,
                                "<zpci uid='0x%.4x' fid='0x%.8x'/>\n",
                                info->addr.pci.zpci.uid.value,




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux