)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1310d8a8018f9639d721a52bbf996c23ea0fec32","unresolved":true,"context_lines":[{"line_number":7,"context_line":"Clean up mapping input to address spec types"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The goal here is to make it clear which PciAddressSpec child class"},{"line_number":10,"context_line":"parses which from of input. But along the way the devname handling is"},{"line_number":11,"context_line":"also simplified as there is no need to look up the PF capability of the"},{"line_number":12,"context_line":"devname just to parse the address of it. This way the duplicated PF"},{"line_number":13,"context_line":"capability lookup can be removed from the code."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"06eaf48b_95ea57af","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":17},"updated":"2022-07-12 09:02:16.000000000","message":"form?","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a925ab123564d01578289f1d5abbecc321563f3","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Clean up mapping input to address spec types"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The goal here is to make it clear which PciAddressSpec child class"},{"line_number":10,"context_line":"parses which from of input. But along the way the devname handling is"},{"line_number":11,"context_line":"also simplified as there is no need to look up the PF capability of the"},{"line_number":12,"context_line":"devname just to parse the address of it. This way the duplicated PF"},{"line_number":13,"context_line":"capability lookup can be removed from the code."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"6a3d37bc_0d055031","line":10,"range":{"start_line":10,"start_character":13,"end_line":10,"end_character":17},"in_reply_to":"06eaf48b_95ea57af","updated":"2022-07-25 16:12:43.000000000","message":"Done","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1310d8a8018f9639d721a52bbf996c23ea0fec32","unresolved":true,"context_lines":[{"line_number":13,"context_line":"capability lookup can be removed from the code."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Fortunately this also answered one of my earlier question about PF"},{"line_number":16,"context_line":"capability lookoup (see the removed question from the test code)."},{"line_number":17,"context_line":"Also this automatically fixed the bug where some of the pci utils"},{"line_number":18,"context_line":"functions called with repr strings of PciAddressGlobSpec objects instead"},{"line_number":19,"context_line":"of a real PCI address."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ceb4e19c_ecbc4db1","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":18},"updated":"2022-07-12 09:02:16.000000000","message":"lookup","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a925ab123564d01578289f1d5abbecc321563f3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"capability lookup can be removed from the code."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Fortunately this also answered one of my earlier question about PF"},{"line_number":16,"context_line":"capability lookoup (see the removed question from the test code)."},{"line_number":17,"context_line":"Also this automatically fixed the bug where some of the pci utils"},{"line_number":18,"context_line":"functions called with repr strings of PciAddressGlobSpec objects instead"},{"line_number":19,"context_line":"of a real PCI address."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"c13a040b_9cc66b15","line":16,"range":{"start_line":16,"start_character":11,"end_line":16,"end_character":18},"in_reply_to":"ceb4e19c_ecbc4db1","updated":"2022-07-25 16:12:43.000000000","message":"Done","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"0f0ae7ef7cf1ea9b0e1207c50140c208858cbaa4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2cab7c3a_5fed998b","updated":"2022-07-12 09:05:21.000000000","message":"the commit message typos are not worth a respin and I think we can do all doc updates in one patch at the end of the series so upgrading to +2","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"}],"nova/pci/devspec.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1310d8a8018f9639d721a52bbf996c23ea0fec32","unresolved":true,"context_lines":[{"line_number":165,"context_line":"class PciAddressGlobSpec(PciAddressSpec):"},{"line_number":166,"context_line":"    \"\"\"Manages the address fields with glob style. But only support * and * can"},{"line_number":167,"context_line":"    only be used for a whole segment of the PCI address (i.e. domain, bus,"},{"line_number":168,"context_line":"    slot, function) but cannot be used for a partial segment. E.g. 0000:*:01 is"},{"line_number":169,"context_line":"    OK but 0000:0*:01 is not supported."},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"    This function class will validate the address fields with glob style,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba51779c_c289f2ec","line":168,"range":{"start_line":168,"start_character":19,"end_line":168,"end_character":61},"updated":"2022-07-12 09:02:16.000000000","message":"I was not aware of this limitation thanks for calling it out.\nwe likely need to actually document that in the config ref or pic docs too","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a925ab123564d01578289f1d5abbecc321563f3","unresolved":false,"context_lines":[{"line_number":165,"context_line":"class PciAddressGlobSpec(PciAddressSpec):"},{"line_number":166,"context_line":"    \"\"\"Manages the address fields with glob style. But only support * and * can"},{"line_number":167,"context_line":"    only be used for a whole segment of the PCI address (i.e. domain, bus,"},{"line_number":168,"context_line":"    slot, function) but cannot be used for a partial segment. E.g. 0000:*:01 is"},{"line_number":169,"context_line":"    OK but 0000:0*:01 is not supported."},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"    This function class will validate the address fields with glob style,"}],"source_content_type":"text/x-python","patch_set":3,"id":"4b12709d_b0aa4d20","line":168,"range":{"start_line":168,"start_character":19,"end_line":168,"end_character":61},"in_reply_to":"ba51779c_c289f2ec","updated":"2022-07-25 16:12:43.000000000","message":"Done","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1310d8a8018f9639d721a52bbf996c23ea0fec32","unresolved":true,"context_lines":[{"line_number":279,"context_line":"        self.is_physical_function \u003d self._is_physical_function("},{"line_number":280,"context_line":"            self.pci_address_spec)"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"    @staticmethod"},{"line_number":283,"context_line":"    def _parse_address(pci_addr) -\u003e PciAddressSpec:"},{"line_number":284,"context_line":"        # NOTE(gibi): This is ugly, but we need to figure out which type of"},{"line_number":285,"context_line":"        # address spec we have."}],"source_content_type":"text/x-python","patch_set":3,"id":"34d10b8c_d8301f57","line":282,"range":{"start_line":282,"start_character":5,"end_line":282,"end_character":17},"updated":"2022-07-12 09:02:16.000000000","message":"ya this makes sense this no longer depend on self and are now pure free functions of there input so +1","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a925ab123564d01578289f1d5abbecc321563f3","unresolved":false,"context_lines":[{"line_number":279,"context_line":"        self.is_physical_function \u003d self._is_physical_function("},{"line_number":280,"context_line":"            self.pci_address_spec)"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"    @staticmethod"},{"line_number":283,"context_line":"    def _parse_address(pci_addr) -\u003e PciAddressSpec:"},{"line_number":284,"context_line":"        # NOTE(gibi): This is ugly, but we need to figure out which type of"},{"line_number":285,"context_line":"        # address spec we have."}],"source_content_type":"text/x-python","patch_set":3,"id":"6148f09e_0a8f6d56","line":282,"range":{"start_line":282,"start_character":5,"end_line":282,"end_character":17},"in_reply_to":"34d10b8c_d8301f57","updated":"2022-07-25 16:12:43.000000000","message":"Ack","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"}],"nova/pci/utils.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1310d8a8018f9639d721a52bbf996c23ea0fec32","unresolved":true,"context_lines":[{"line_number":115,"context_line":"    \"\"\"Given the device name, returns the PCI address of a device"},{"line_number":116,"context_line":"    and returns True if the address is in a physical function."},{"line_number":117,"context_line":"    \"\"\""},{"line_number":118,"context_line":"    # FIXME(gibi): Drop VF number support, rename the function"},{"line_number":119,"context_line":"    dev_path \u003d \"/sys/class/net/%s/device\" % ifname"},{"line_number":120,"context_line":"    sriov_totalvfs \u003d 0"},{"line_number":121,"context_line":"    if os.path.isdir(dev_path):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1d22cd0f_813cb8f1","line":118,"range":{"start_line":118,"start_character":0,"end_line":118,"end_character":62},"updated":"2022-07-12 09:02:16.000000000","message":"you mean drop looking t sriov_totalvfs\n\nim not sure why that is there it feels incorrect to me to do that this way.\nits trying to determine if the device is a PF or not but\nthat\u0027s not really the correct way to do that and even if it was it should be a separate function call not part of the lookup by name","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"0f0ae7ef7cf1ea9b0e1207c50140c208858cbaa4","unresolved":true,"context_lines":[{"line_number":115,"context_line":"    \"\"\"Given the device name, returns the PCI address of a device"},{"line_number":116,"context_line":"    and returns True if the address is in a physical function."},{"line_number":117,"context_line":"    \"\"\""},{"line_number":118,"context_line":"    # FIXME(gibi): Drop VF number support, rename the function"},{"line_number":119,"context_line":"    dev_path \u003d \"/sys/class/net/%s/device\" % ifname"},{"line_number":120,"context_line":"    sriov_totalvfs \u003d 0"},{"line_number":121,"context_line":"    if os.path.isdir(dev_path):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3248165b_de1fd908","line":118,"range":{"start_line":118,"start_character":0,"end_line":118,"end_character":62},"in_reply_to":"1d22cd0f_813cb8f1","updated":"2022-07-12 09:05:21.000000000","message":"you have addressed this in the follow up patch so upgrading to +2","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3a925ab123564d01578289f1d5abbecc321563f3","unresolved":false,"context_lines":[{"line_number":115,"context_line":"    \"\"\"Given the device name, returns the PCI address of a device"},{"line_number":116,"context_line":"    and returns True if the address is in a physical function."},{"line_number":117,"context_line":"    \"\"\""},{"line_number":118,"context_line":"    # FIXME(gibi): Drop VF number support, rename the function"},{"line_number":119,"context_line":"    dev_path \u003d \"/sys/class/net/%s/device\" % ifname"},{"line_number":120,"context_line":"    sriov_totalvfs \u003d 0"},{"line_number":121,"context_line":"    if os.path.isdir(dev_path):"}],"source_content_type":"text/x-python","patch_set":3,"id":"c7a24755_3b1f41bf","line":118,"range":{"start_line":118,"start_character":0,"end_line":118,"end_character":62},"in_reply_to":"3248165b_de1fd908","updated":"2022-07-25 16:12:43.000000000","message":"Ack","commit_id":"b7eef53b1d77bfb5052aab2582e0d9fc3eff1ad8"}]}
