On 21.12.2015 18:17, Laine Stump wrote: > The previous error message just indicated that the desired response > couldn't be found, this patch tells what was desired, as well as > listing out the entire table that had been in the netlink response, to > give some kind of idea why it failed. > --- > src/util/virnetdevvportprofile.c | 39 +++++++++++++++++++++++++++++++++++---- > 1 file changed, 35 insertions(+), 4 deletions(-) > > diff --git a/src/util/virnetdevvportprofile.c b/src/util/virnetdevvportprofile.c > index 427c67b..f4b876f 100644 > --- a/src/util/virnetdevvportprofile.c > +++ b/src/util/virnetdevvportprofile.c > @@ -566,10 +566,41 @@ virNetDevVPortProfileGetStatus(struct nlattr **tb, int32_t vf, > } > > if (!found) { > - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > - _("Could not find netlink response with " > - "expected parameters")); > - goto cleanup; > + char instanceIdStr[VIR_UUID_STRING_BUFLEN] = "(none)"; > + > + if (instanceId) > + virUUIDFormat(instanceId, instanceIdStr); > + > + virReportError(VIR_ERR_INTERNAL_ERROR, > + _("Could not find vf/instanceId %u/%s " > + " in netlink response"), > + vf, instanceIdStr); > + > + /* go through all the entries again. This seems tedious, > + * but experience has shown the resulting log to be > + * very useful. > + */ > + VIR_WARN("IFLA_VF_PORTS entries that were returned:"); > + nla_for_each_nested(tb_vf_ports, tb[IFLA_VF_PORTS], rem) { > + char uuidstr[VIR_UUID_STRING_BUFLEN] = "(none)"; > + > + if (nla_parse_nested(tb_port, IFLA_PORT_MAX, tb_vf_ports, > + ifla_port_policy)) { > + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > + _("error parsing IFLA_VF_PORT " > + "during error reporting")); error when printing error :) > + goto cleanup; > + } > + if (tb_port[IFLA_PORT_INSTANCE_UUID]) { > + virUUIDFormat((unsigned char *) > + RTA_DATA(tb_port[IFLA_PORT_INSTANCE_UUID]), > + uuidstr); > + } > + VIR_WARN(" vf: %d uuid: %s", > + tb_port[IFLA_PORT_VF] ? > + *(uint32_t *)RTA_DATA(tb_port[IFLA_PORT_VF]) : -1, > + uuidstr); > + } goto cleanup; > } > } else { > virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list