Kaynağa Gözat

pci: Reject pcie_aer_inject_error -c with symbolic error status

When argument @error_status is symbolic, flag -c is ignored.  Reject
it instead.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20221201121133.3813857-14-armbru@redhat.com>
Markus Armbruster 2 yıl önce
ebeveyn
işleme
e221cfac59
1 değiştirilmiş dosya ile 5 ekleme ve 0 silme
  1. 5 0
      hw/pci/pci-hmp-cmds.c

+ 5 - 0
hw/pci/pci-hmp-cmds.c

@@ -189,6 +189,11 @@ void hmp_pcie_aer_inject_error(Monitor *mon, const QDict *qdict)
         }
         }
         error_status = num;
         error_status = num;
         correctable = qdict_get_try_bool(qdict, "correctable", false);
         correctable = qdict_get_try_bool(qdict, "correctable", false);
+    } else {
+        if (qdict_haskey(qdict, "correctable")) {
+            error_setg(&err, "-c is only valid with numeric error status");
+            goto out;
+        }
     }
     }
     aer_err.status = error_status;
     aer_err.status = error_status;
     aer_err.source_id = pci_requester_id(dev);
     aer_err.source_id = pci_requester_id(dev);