)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"add vdpa device detection"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change the min libvirt and qemu verions for vdpa"},{"line_number":10,"context_line":"and _supports_vdpa function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This change extend the libvirt driver to detect VF with"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"85be070a_2cc7f0e7","line":9,"range":{"start_line":9,"start_character":32,"end_line":9,"end_character":36},"updated":"2021-03-10 16:13:15.000000000","message":"QEMU","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"add vdpa device detection"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change the min libvirt and qemu verions for vdpa"},{"line_number":10,"context_line":"and _supports_vdpa function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This change extend the libvirt driver to detect VF with"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"f4a75c94_18be23e6","line":9,"range":{"start_line":9,"start_character":49,"end_line":9,"end_character":53},"updated":"2021-03-10 16:13:15.000000000","message":"vDPA\n\n(here and below)","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"add vdpa device detection"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change the min libvirt and qemu verions for vdpa"},{"line_number":10,"context_line":"and _supports_vdpa function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This change extend the libvirt driver to detect VF with"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"0c3e429c_98001039","line":9,"range":{"start_line":9,"start_character":37,"end_line":9,"end_character":44},"updated":"2021-03-10 16:13:15.000000000","message":"versions","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":10,"context_line":"and _supports_vdpa function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This change extend the libvirt driver to detect VF with"},{"line_number":13,"context_line":"assocaited vdpa devices and track them as type \"vdpa\""},{"line_number":14,"context_line":"and extends the capablities dict to store the vdpa chardev"},{"line_number":15,"context_line":"path."},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"02a6c390_0be572f5","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":10},"updated":"2021-03-10 16:13:15.000000000","message":"associated","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This change extend the libvirt driver to detect VF with"},{"line_number":13,"context_line":"assocaited vdpa devices and track them as type \"vdpa\""},{"line_number":14,"context_line":"and extends the capablities dict to store the vdpa chardev"},{"line_number":15,"context_line":"path."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Depends-On: https://review.opendev.org/c/openstack/os-traits/+/770530"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"f11ed9b4_1fd39e24","line":14,"range":{"start_line":14,"start_character":16,"end_line":14,"end_character":27},"updated":"2021-03-10 16:13:15.000000000","message":"capabilities","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"}],"nova/tests/unit/virt/libvirt/fakelibvirt.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6f5065cbc2527caaff2c869c0e024b9f4e6602c9","unresolved":true,"context_lines":[{"line_number":181,"context_line":"# virConnectListAllNodeDevices flags"},{"line_number":182,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_PCI_DEV \u003d 2"},{"line_number":183,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_NET \u003d 16"},{"line_number":184,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_VDPA \u003d 1 \u003c\u003c 17"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"# secret type"},{"line_number":187,"context_line":"VIR_SECRET_USAGE_TYPE_NONE \u003d 0"}],"source_content_type":"text/x-python","patch_set":10,"id":"4494d8b6_6178e7f5","line":184,"updated":"2021-03-11 18:40:34.000000000","message":"weird constants checks out :)","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e98a9f870d66fa0e6c4a35426068545c4d522219","unresolved":true,"context_lines":[{"line_number":181,"context_line":"# virConnectListAllNodeDevices flags"},{"line_number":182,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_PCI_DEV \u003d 2"},{"line_number":183,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_NET \u003d 16"},{"line_number":184,"context_line":"VIR_CONNECT_LIST_NODE_DEVICES_CAP_VDPA \u003d 1 \u003c\u003c 17"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"# secret type"},{"line_number":187,"context_line":"VIR_SECRET_USAGE_TYPE_NONE \u003d 0"}],"source_content_type":"text/x-python","patch_set":10,"id":"e59d2cfe_5684490a","line":184,"in_reply_to":"4494d8b6_6178e7f5","updated":"2021-03-11 20:00:54.000000000","message":"ya this is used for flags so each cap has its own bit because C...\ni orginally had this as a literal but stephen say it was 1 \u003c\u003c 17 which is much nicer then 131072","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"c7dbdd2b040ee26555b2cbafb73e37d5629d1a40","unresolved":true,"context_lines":[{"line_number":7287,"context_line":"            device: \u0027libvirt.virNodeDevice\u0027,"},{"line_number":7288,"context_line":"            net_devs: ty.List[\u0027libvirt.virNodeDevice\u0027],"},{"line_number":7289,"context_line":"            vdpa_devs: ty.List[\u0027libvirt.virNodeDevice\u0027]"},{"line_number":7290,"context_line":"        ) -\u003e ty.Dict[str, ty.Dict[str, ty.Optional[ty.List[str]]]]:"},{"line_number":7291,"context_line":"            \"\"\"Get PCI VF device\u0027s additional capabilities."},{"line_number":7292,"context_line":""},{"line_number":7293,"context_line":"            If a PCI device is a virtual function, this function reads the PCI"}],"source_content_type":"text/x-python","patch_set":5,"id":"b017131a_be494194","line":7290,"range":{"start_line":7290,"start_character":51,"end_line":7290,"end_character":63},"updated":"2021-03-05 02:30:24.000000000","message":"ty.union[ty.List[str],ty.Dict[String,Any]] or i can make \nty.Optional[ty.List[str]] just ty.any which i think is what ill do.","commit_id":"f967b63370167bec6caea6fa9e2d80012d5dd4e4"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7284,"context_line":"        devname: str,"},{"line_number":7285,"context_line":"        dev: \u0027libvirt.virNodeDevice\u0027,"},{"line_number":7286,"context_line":"        net_devs: ty.List[\u0027libvirt.virNodeDevice\u0027],"},{"line_number":7287,"context_line":"        vdpa_devs: ty.List[\u0027libvirt.virNodeDevice\u0027]"},{"line_number":7288,"context_line":"    ) -\u003e ty.Dict[str, ty.Union[str, dict]]:"},{"line_number":7289,"context_line":"        \"\"\"Returns a dict of PCI device.\"\"\""},{"line_number":7290,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"e09c5058_bf219790","line":7287,"updated":"2021-03-10 16:13:15.000000000","message":"nit: a trailing comma would be appreciated","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7293,"context_line":"            pci_address: str,"},{"line_number":7294,"context_line":"            device: \u0027libvirt.virNodeDevice\u0027,"},{"line_number":7295,"context_line":"            net_devs: ty.List[\u0027libvirt.virNodeDevice\u0027],"},{"line_number":7296,"context_line":"            vdpa_devs: ty.List[\u0027libvirt.virNodeDevice\u0027]"},{"line_number":7297,"context_line":"        ) -\u003e ty.Dict[str, str]:"},{"line_number":7298,"context_line":"            \"\"\"Get a PCI device\u0027s device type."},{"line_number":7299,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1127627a_600d89e3","line":7296,"updated":"2021-03-10 16:13:15.000000000","message":"ditto","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7308,"context_line":"                    return {"},{"line_number":7309,"context_line":"                        \u0027dev_type\u0027: fields.PciDeviceType.SRIOV_PF,"},{"line_number":7310,"context_line":"                    }"},{"line_number":7311,"context_line":"                elif (fun_cap.type \u003d\u003d \u0027phys_function\u0027 and"},{"line_number":7312,"context_line":"                    len(fun_cap.device_addrs) !\u003d 0):"},{"line_number":7313,"context_line":"                    phys_address \u003d \"%04x:%02x:%02x.%01x\" % ("},{"line_number":7314,"context_line":"                        fun_cap.device_addrs[0][0],"}],"source_content_type":"text/x-python","patch_set":7,"id":"1912afb9_f3ca41ea","line":7311,"range":{"start_line":7311,"start_character":16,"end_line":7311,"end_character":20},"updated":"2021-03-10 16:13:15.000000000","message":"This doesn\u0027t need changing. We have an early return above","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7327,"context_line":"                            pci_address, pf_interface\u003dTrue)"},{"line_number":7328,"context_line":"                        result[\u0027parent_ifname\u0027] \u003d parent_ifname"},{"line_number":7329,"context_line":"                    if device.name() in vdpa_parents:"},{"line_number":7330,"context_line":"                        result[\u0027parrent_addr\u0027] \u003d ("},{"line_number":7331,"context_line":"                        cfgdev.pci_capability.pci_address())"},{"line_number":7332,"context_line":"                        result[\u0027dev_type\u0027] \u003d fields.PciDeviceType.VDPA"},{"line_number":7333,"context_line":"                    return result"}],"source_content_type":"text/x-python","patch_set":7,"id":"93695820_cb37e501","line":7330,"range":{"start_line":7330,"start_character":33,"end_line":7330,"end_character":39},"updated":"2021-03-10 16:13:15.000000000","message":"parent","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7328,"context_line":"                        result[\u0027parent_ifname\u0027] \u003d parent_ifname"},{"line_number":7329,"context_line":"                    if device.name() in vdpa_parents:"},{"line_number":7330,"context_line":"                        result[\u0027parrent_addr\u0027] \u003d ("},{"line_number":7331,"context_line":"                        cfgdev.pci_capability.pci_address())"},{"line_number":7332,"context_line":"                        result[\u0027dev_type\u0027] \u003d fields.PciDeviceType.VDPA"},{"line_number":7333,"context_line":"                    return result"},{"line_number":7334,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"2c94e4bb_3a4d13cc","line":7331,"updated":"2021-03-10 16:13:15.000000000","message":"nit: missing indentation","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7359,"context_line":"                    cfgdev \u003d vconfig.LibvirtConfigNodeDevice()"},{"line_number":7360,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":7361,"context_line":"                    caps[\u0027capabilities\u0027][\u0027vdpa\u0027] \u003d {"},{"line_number":7362,"context_line":"                        \u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path}"},{"line_number":7363,"context_line":"            return caps"},{"line_number":7364,"context_line":""},{"line_number":7365,"context_line":"        xmlstr \u003d dev.XMLDesc(0)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3ac57ae6_71829408","line":7362,"updated":"2021-03-10 16:13:15.000000000","message":"Christ, this is getting worse /o\\ I legit *hate* this function 😄 Can we please do this in a new function, please? They\u0027re very different things. Something like \u0027_get_vdpa_device_capabilities\u0027? If you could rename this to \u0027_get_sriov_device_capabilities\u0027 too, that\u0027d be awesome.","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d9b090e737f548a1f5f0352d1a18c5b1f4d54b53","unresolved":true,"context_lines":[{"line_number":7406,"context_line":"        \"\"\""},{"line_number":7407,"context_line":"        dev_flags \u003d (libvirt.VIR_CONNECT_LIST_NODE_DEVICES_CAP_NET |"},{"line_number":7408,"context_line":"                     libvirt.VIR_CONNECT_LIST_NODE_DEVICES_CAP_PCI_DEV)"},{"line_number":7409,"context_line":"        if self._supports_vdpa():"},{"line_number":7410,"context_line":"            dev_flags |\u003d libvirt.VIR_CONNECT_LIST_NODE_DEVICES_CAP_VDPA"},{"line_number":7411,"context_line":"        devices \u003d {dev.name(): dev for dev in"},{"line_number":7412,"context_line":"                   self._host.list_all_devices(flags\u003ddev_flags)}"}],"source_content_type":"text/x-python","patch_set":7,"id":"21e64b7b_ff028bc7","line":7409,"updated":"2021-03-10 16:13:15.000000000","message":"Can we just move the check for this inline, please? It would actually be fewer LOC and we\u0027ll be able to remove it in a year or so anyway. I don\u0027t like single line functions with a single caller since it requires loading up way more context","commit_id":"f34c8b18a7629078341498ac492551c606eb6135"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"cd8610e6244c0eaef759d3b601f52da07548838f","unresolved":true,"context_lines":[{"line_number":7278,"context_line":"            self._host._get_pcidev_info(name, dev, net_devs)"},{"line_number":7279,"context_line":"            for name, dev in devices.items() if \"pci\" in dev.listCaps()"},{"line_number":7280,"context_line":"        ]"},{"line_number":7281,"context_line":""},{"line_number":7282,"context_line":"        return jsonutils.dumps(pci_info)"},{"line_number":7283,"context_line":""},{"line_number":7284,"context_line":"    def _get_mdev_capabilities_for_dev(self, devname, types\u003dNone):"}],"source_content_type":"text/x-python","patch_set":10,"id":"f32f330b_f66f9b3a","side":"PARENT","line":7281,"updated":"2021-03-11 14:30:40.000000000","message":"whoops","commit_id":"52b505c9cb6d40f488cc1b974ad277007731fd12"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"cd8610e6244c0eaef759d3b601f52da07548838f","unresolved":false,"context_lines":[{"line_number":243,"context_line":"LIBVIRT_PERF_EVENT_PREFIX \u003d \u0027VIR_PERF_PARAM_\u0027"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"# VDPA interface support"},{"line_number":246,"context_line":"MIN_LIBVIRT_VDPA \u003d (6, 9, 0)"},{"line_number":247,"context_line":"MIN_QEMU_VDPA \u003d (5, 1, 0)"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"3a6b27c5_c9dd3907","line":246,"updated":"2021-03-11 14:30:40.000000000","message":"Yup https://libvirt.org/news.html#v6-9-0-2020-11-02\n\n  qemu: Add support for vDPA network devices.\n\n  VMs using the QEMU hypervisor can now specify vDPA network devices using\n  \u003cinterface type\u003d\u0027vdpa\u0027\u003e. The node device APIs also now list and provide\n  XML descriptions for vDPA devices.","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6f5065cbc2527caaff2c869c0e024b9f4e6602c9","unresolved":true,"context_lines":[{"line_number":7286,"context_line":"        }"},{"line_number":7287,"context_line":"        net_devs \u003d [dev for dev in devices.values() if \"net\" in dev.listCaps()]"},{"line_number":7288,"context_line":"        vdpa_devs \u003d ["},{"line_number":7289,"context_line":"            dev for dev in devices.values() if \"vdpa\" in dev.listCaps()"},{"line_number":7290,"context_line":"        ]"},{"line_number":7291,"context_line":"        pci_info \u003d ["},{"line_number":7292,"context_line":"            self._host._get_pcidev_info(name, dev, net_devs, vdpa_devs)"}],"source_content_type":"text/x-python","patch_set":10,"id":"43b79a3a_0c9b8cf7","line":7289,"range":{"start_line":7289,"start_character":57,"end_line":7289,"end_character":71},"updated":"2021-03-11 18:40:34.000000000","message":"I guess this is a cheap call so not worth to optimize it but now we call it 3 times","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e98a9f870d66fa0e6c4a35426068545c4d522219","unresolved":true,"context_lines":[{"line_number":7286,"context_line":"        }"},{"line_number":7287,"context_line":"        net_devs \u003d [dev for dev in devices.values() if \"net\" in dev.listCaps()]"},{"line_number":7288,"context_line":"        vdpa_devs \u003d ["},{"line_number":7289,"context_line":"            dev for dev in devices.values() if \"vdpa\" in dev.listCaps()"},{"line_number":7290,"context_line":"        ]"},{"line_number":7291,"context_line":"        pci_info \u003d ["},{"line_number":7292,"context_line":"            self._host._get_pcidev_info(name, dev, net_devs, vdpa_devs)"}],"source_content_type":"text/x-python","patch_set":10,"id":"33abd4a5_95c98b74","line":7289,"range":{"start_line":7289,"start_character":57,"end_line":7289,"end_character":71},"in_reply_to":"43b79a3a_0c9b8cf7","updated":"2021-03-11 20:00:54.000000000","message":"ya this is not actullly calling into libvirt at this point it just returning a string form in meory so this is basically just a field access but it in a c object which is why its a function call in the python bindigs. instead of just dev.caps","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"}],"nova/virt/libvirt/host.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e98a9f870d66fa0e6c4a35426068545c4d522219","unresolved":true,"context_lines":[{"line_number":1234,"context_line":"                            pci_address, pf_interface\u003dTrue)"},{"line_number":1235,"context_line":"                        result[\u0027parent_ifname\u0027] \u003d parent_ifname"},{"line_number":1236,"context_line":"                    if device.name() in vdpa_parents:"},{"line_number":1237,"context_line":"                        result[\u0027parent_addr\u0027] \u003d ("},{"line_number":1238,"context_line":"                        cfgdev.pci_capability.pci_address())"},{"line_number":1239,"context_line":"                        result[\u0027dev_type\u0027] \u003d fields.PciDeviceType.VDPA"},{"line_number":1240,"context_line":"                    return result"}],"source_content_type":"text/x-python","patch_set":10,"id":"09870e42_7a25deaa","line":1237,"updated":"2021-03-11 20:00:54.000000000","message":"this unfortunately breaks the logic for marking parents as unavailable\nand resulsts in address and and parent_address being the same.\n\ni did it this way orginally becasue i was going to do this slightly differently but i actully dont\nneed parten address to be the VF address so i hsoul jsut remove this","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"fd1045a5313cae9fefd846d7ae157ba00e37f3df","unresolved":false,"context_lines":[{"line_number":1234,"context_line":"                            pci_address, pf_interface\u003dTrue)"},{"line_number":1235,"context_line":"                        result[\u0027parent_ifname\u0027] \u003d parent_ifname"},{"line_number":1236,"context_line":"                    if device.name() in vdpa_parents:"},{"line_number":1237,"context_line":"                        result[\u0027parent_addr\u0027] \u003d ("},{"line_number":1238,"context_line":"                        cfgdev.pci_capability.pci_address())"},{"line_number":1239,"context_line":"                        result[\u0027dev_type\u0027] \u003d fields.PciDeviceType.VDPA"},{"line_number":1240,"context_line":"                    return result"}],"source_content_type":"text/x-python","patch_set":10,"id":"b81772f4_29dfee4d","line":1237,"in_reply_to":"09870e42_7a25deaa","updated":"2021-03-12 09:04:40.000000000","message":"Ack","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"cd8610e6244c0eaef759d3b601f52da07548838f","unresolved":true,"context_lines":[{"line_number":1269,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":1270,"context_line":"                    caps[\u0027capabilities\u0027] \u003d {"},{"line_number":1271,"context_line":"                        \u0027vdpa\u0027: {\u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path},"},{"line_number":1272,"context_line":"                    }"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            return caps"},{"line_number":1275,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"4c9359c0_ec25e23d","line":1272,"updated":"2021-03-11 14:30:40.000000000","message":"So we build a mapping of the parent VFs to vDPA devices (since each vDPA dev is nested under a VF) and then if we find a vDPA for the specified VF, we retrieve the device path attribute for that vDPA device.\n\nThis doesn\u0027t appear to be used here yet. I assume it\u0027s used in a follow-up?\n\nLater: hmm, I can\u0027t find it anywhere, actually. Do we need this?","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"cbbfe36a4fe2984f08a9fb846736ea6bad07ff16","unresolved":true,"context_lines":[{"line_number":1269,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":1270,"context_line":"                    caps[\u0027capabilities\u0027] \u003d {"},{"line_number":1271,"context_line":"                        \u0027vdpa\u0027: {\u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path},"},{"line_number":1272,"context_line":"                    }"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            return caps"},{"line_number":1275,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"90bf8840_dda1fa21","line":1272,"in_reply_to":"4c9359c0_ec25e23d","updated":"2021-03-11 15:59:50.000000000","message":"technically not not at present.\nin the futrue i would like to use this and store this info in an object we pass to the virt driver to avoid the dependicy on the neutron port profile to lookup the vdpa devie associated with the port.\n\ncurrently i am mainly using this for debugging so that i can correlate the interface definition in the xml to the device claimed in the db. it was by using this info matation i was able to deduce that vdpa like sriov both will have the unshleve issue wehere we use the incorrect device aka https://bugs.launchpad.net/nova/+bug/1851545\n\nso while its not required today it make debuging this in production eaiser and evenutally i want to refactor this code for both sriov and vdpa to stop using the profile as i said at which point i will use this in code.","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c3130eb10f38de3d196d9a8b460dee801c4da35d","unresolved":true,"context_lines":[{"line_number":1269,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":1270,"context_line":"                    caps[\u0027capabilities\u0027] \u003d {"},{"line_number":1271,"context_line":"                        \u0027vdpa\u0027: {\u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path},"},{"line_number":1272,"context_line":"                    }"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            return caps"},{"line_number":1275,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"b70ff938_61ec5ae0","line":1272,"in_reply_to":"90bf8840_dda1fa21","updated":"2021-03-11 16:07:20.000000000","message":"Any chance you could drop this so? It does seem a bit complex for something that\u0027s not even needed","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"8bbf073e8ea2081cd459cdb4f7c796c5bfe30a15","unresolved":false,"context_lines":[{"line_number":1269,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":1270,"context_line":"                    caps[\u0027capabilities\u0027] \u003d {"},{"line_number":1271,"context_line":"                        \u0027vdpa\u0027: {\u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path},"},{"line_number":1272,"context_line":"                    }"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            return caps"},{"line_number":1275,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"9561c390_83616686","line":1272,"in_reply_to":"b4986c6d_78293048","updated":"2021-03-12 17:44:44.000000000","message":"Ack","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e98a9f870d66fa0e6c4a35426068545c4d522219","unresolved":true,"context_lines":[{"line_number":1269,"context_line":"                    cfgdev.parse_str(xmlstr)"},{"line_number":1270,"context_line":"                    caps[\u0027capabilities\u0027] \u003d {"},{"line_number":1271,"context_line":"                        \u0027vdpa\u0027: {\u0027dev_path\u0027: cfgdev.vdpa_capability.dev_path},"},{"line_number":1272,"context_line":"                    }"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            return caps"},{"line_number":1275,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"b4986c6d_78293048","line":1272,"in_reply_to":"b70ff938_61ec5ae0","updated":"2021-03-11 20:00:54.000000000","message":"i do quite like this and might add it back later when i use if for somethign other then debugging\nunfortunetly i do have a bug above so i have to respin this anyway so ill adress that too.","commit_id":"7479dbfb1210e37d1cadec6de074c27a97146956"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7be3ca42b923977b6b53f9ea1a08a00cf362106d","unresolved":true,"context_lines":[{"line_number":1256,"context_line":"                pcinet_info \u003d self._get_pcinet_info(device, net_devs)"},{"line_number":1257,"context_line":"                if pcinet_info:"},{"line_number":1258,"context_line":"                    return {\u0027capabilities\u0027: {\u0027network\u0027: pcinet_info}}"},{"line_number":1259,"context_line":"            return caps"},{"line_number":1260,"context_line":""},{"line_number":1261,"context_line":"        xmlstr \u003d dev.XMLDesc(0)"},{"line_number":1262,"context_line":"        cfgdev \u003d vconfig.LibvirtConfigNodeDevice()"}],"source_content_type":"text/x-python","patch_set":12,"id":"90e320da_6abd264a","line":1259,"updated":"2021-03-12 15:03:24.000000000","message":"The change that remained in this function are not needed after you removed the extra vdpa capabilities in PS11","commit_id":"9a673a8faafe8f7bcbca881964e0d3630c87c682"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a5f59ec8ca114722a716f3bd5ff5df95a51b7af7","unresolved":true,"context_lines":[{"line_number":1256,"context_line":"                pcinet_info \u003d self._get_pcinet_info(device, net_devs)"},{"line_number":1257,"context_line":"                if pcinet_info:"},{"line_number":1258,"context_line":"                    return {\u0027capabilities\u0027: {\u0027network\u0027: pcinet_info}}"},{"line_number":1259,"context_line":"            return caps"},{"line_number":1260,"context_line":""},{"line_number":1261,"context_line":"        xmlstr \u003d dev.XMLDesc(0)"},{"line_number":1262,"context_line":"        cfgdev \u003d vconfig.LibvirtConfigNodeDevice()"}],"source_content_type":"text/x-python","patch_set":12,"id":"d7eca674_d488bba4","line":1259,"in_reply_to":"90e320da_6abd264a","updated":"2021-03-12 15:35:36.000000000","message":"+1, you don\u0027t need any of this","commit_id":"9a673a8faafe8f7bcbca881964e0d3630c87c682"}]}
