)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6070401550c8220da93e02c410c9438a7843e138","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-08-08 17:13:58 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"port pci devspec from nova to zun"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"port pci devspec from nova to zun"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I7cb9644cf1655991c65bbcd73f146c76cae98297"},{"line_number":12,"context_line":"Partially-Implements: blueprint support-pcipassthroughfilter"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9f436f4f_8e30ae09","line":9,"range":{"start_line":8,"start_character":0,"end_line":9,"end_character":33},"updated":"2017-08-08 09:50:09.000000000","message":"Remove this duplicate line","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":8264,"name":"Shunli Zhou","username":"ShunliZhou"},"change_message_id":"41f95e44ac22c292733e2cf267960e93be1a2425","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-08-08 17:13:58 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"port pci devspec from nova to zun"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"port pci devspec from nova to zun"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I7cb9644cf1655991c65bbcd73f146c76cae98297"},{"line_number":12,"context_line":"Partially-Implements: blueprint support-pcipassthroughfilter"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9f436f4f_b10dfc38","line":9,"range":{"start_line":8,"start_character":0,"end_line":9,"end_character":33},"in_reply_to":"9f436f4f_8e30ae09","updated":"2017-08-09 01:13:10.000000000","message":"Done","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"}],"zun/pci/devspec.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6070401550c8220da93e02c410c9438a7843e138","unresolved":false,"context_lines":[{"line_number":94,"context_line":"            self.bus \u003d\u003d phys_pci_addr.bus,"},{"line_number":95,"context_line":"            self.slot \u003d\u003d phys_pci_addr.slot,"},{"line_number":96,"context_line":"            self.func \u003d\u003d phys_pci_addr.func,"},{"line_number":97,"context_line":"            ]"},{"line_number":98,"context_line":"        return all(conditions)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_4e452670","line":97,"range":{"start_line":97,"start_character":8,"end_line":97,"end_character":12},"updated":"2017-08-08 09:50:09.000000000","message":"remove this","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":8264,"name":"Shunli Zhou","username":"ShunliZhou"},"change_message_id":"41f95e44ac22c292733e2cf267960e93be1a2425","unresolved":false,"context_lines":[{"line_number":94,"context_line":"            self.bus \u003d\u003d phys_pci_addr.bus,"},{"line_number":95,"context_line":"            self.slot \u003d\u003d phys_pci_addr.slot,"},{"line_number":96,"context_line":"            self.func \u003d\u003d phys_pci_addr.func,"},{"line_number":97,"context_line":"            ]"},{"line_number":98,"context_line":"        return all(conditions)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_11ff2802","line":97,"range":{"start_line":97,"start_character":8,"end_line":97,"end_character":12},"in_reply_to":"9f436f4f_4e452670","updated":"2017-08-09 01:13:10.000000000","message":"Done","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6070401550c8220da93e02c410c9438a7843e138","unresolved":false,"context_lines":[{"line_number":136,"context_line":"            self.bus in (ANY, phys_pci_addr.bus),"},{"line_number":137,"context_line":"            self.slot in (ANY, phys_pci_addr.slot),"},{"line_number":138,"context_line":"            self.func in (ANY, phys_pci_addr.func)"},{"line_number":139,"context_line":"            ]"},{"line_number":140,"context_line":"        return all(conditions)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_8e19ce89","line":139,"range":{"start_line":139,"start_character":8,"end_line":139,"end_character":12},"updated":"2017-08-08 09:50:09.000000000","message":"remove this","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":8264,"name":"Shunli Zhou","username":"ShunliZhou"},"change_message_id":"41f95e44ac22c292733e2cf267960e93be1a2425","unresolved":false,"context_lines":[{"line_number":136,"context_line":"            self.bus in (ANY, phys_pci_addr.bus),"},{"line_number":137,"context_line":"            self.slot in (ANY, phys_pci_addr.slot),"},{"line_number":138,"context_line":"            self.func in (ANY, phys_pci_addr.func)"},{"line_number":139,"context_line":"            ]"},{"line_number":140,"context_line":"        return all(conditions)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_2e040b17","line":139,"range":{"start_line":139,"start_character":8,"end_line":139,"end_character":12},"in_reply_to":"9f436f4f_8e19ce89","updated":"2017-08-09 01:13:10.000000000","message":"Done","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"fb6300e96632ca58a088d1a2af9c5419a1503e42","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        \"\"\"Match a device to this PciAddress."},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        Assume this is called given pci_addr and pci_phys_addr reported by"},{"line_number":220,"context_line":"        libvirt, no attempt is made to verify if pci_addr is a VF of"},{"line_number":221,"context_line":"        pci_phys_addr."},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"        :param pci_addr: PCI address of the device to match."}],"source_content_type":"text/x-python","patch_set":2,"id":"9f436f4f_7124340e","line":220,"range":{"start_line":220,"start_character":8,"end_line":220,"end_character":15},"updated":"2017-08-09 01:57:15.000000000","message":"Zun is not using libvirt.","commit_id":"2a7daeb1f52d780ee71a6db0b802da1eb4af94fb"},{"author":{"_account_id":8264,"name":"Shunli Zhou","username":"ShunliZhou"},"change_message_id":"8c73514ac6f1db88e76d3f06c691d3926d86d2d8","unresolved":false,"context_lines":[{"line_number":217,"context_line":"        \"\"\"Match a device to this PciAddress."},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        Assume this is called given pci_addr and pci_phys_addr reported by"},{"line_number":220,"context_line":"        libvirt, no attempt is made to verify if pci_addr is a VF of"},{"line_number":221,"context_line":"        pci_phys_addr."},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"        :param pci_addr: PCI address of the device to match."}],"source_content_type":"text/x-python","patch_set":2,"id":"9f436f4f_d4e62ee9","line":220,"range":{"start_line":220,"start_character":8,"end_line":220,"end_character":15},"in_reply_to":"9f436f4f_7124340e","updated":"2017-08-09 02:34:31.000000000","message":"Done","commit_id":"2a7daeb1f52d780ee71a6db0b802da1eb4af94fb"}],"zun/tests/unit/pci/test_devspec.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6070401550c8220da93e02c410c9438a7843e138","unresolved":false,"context_lines":[{"line_number":415,"context_line":"        pci_info \u003d {\"devname\": \"lo\", \"physical_network\": \"hr_net\"}"},{"line_number":416,"context_line":"        pci \u003d devspec.PciDeviceSpec(pci_info)"},{"line_number":417,"context_line":"        self.assertFalse(pci.match(dev))"},{"line_number":418,"context_line":"\"\"\""},{"line_number":419,"context_line":"    def test_pci_obj(self):"},{"line_number":420,"context_line":"        pci_info \u003d {\"vendor_id\": \"8086\", \"address\": \"*:*:*.5\","},{"line_number":421,"context_line":"                    \"product_id\": \"5057\", \"physical_network\": \"hr_net\"}"},{"line_number":422,"context_line":""},{"line_number":423,"context_line":"        pci \u003d devspec.PciDeviceSpec(pci_info)"},{"line_number":424,"context_line":"        pci_dev \u003d {"},{"line_number":425,"context_line":"            \u0027compute_node_id\u0027: 1,"},{"line_number":426,"context_line":"            \u0027address\u0027: \u00270000:00:00.5\u0027,"},{"line_number":427,"context_line":"            \u0027product_id\u0027: \u00275057\u0027,"},{"line_number":428,"context_line":"            \u0027vendor_id\u0027: \u00278086\u0027,"},{"line_number":429,"context_line":"            \u0027status\u0027: \u0027available\u0027,"},{"line_number":430,"context_line":"            \u0027parent_addr\u0027: None,"},{"line_number":431,"context_line":"            \u0027extra_k1\u0027: \u0027v1\u0027,"},{"line_number":432,"context_line":"        }"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"        pci_obj \u003d objects.PciDevice.create(None, pci_dev)"},{"line_number":435,"context_line":"        self.assertTrue(pci.match_pci_obj(pci_obj))"},{"line_number":436,"context_line":"\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_ce7fd6a9","line":436,"range":{"start_line":418,"start_character":0,"end_line":436,"end_character":3},"updated":"2017-08-08 09:50:09.000000000","message":"is this WiP?","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"},{"author":{"_account_id":8264,"name":"Shunli Zhou","username":"ShunliZhou"},"change_message_id":"41f95e44ac22c292733e2cf267960e93be1a2425","unresolved":false,"context_lines":[{"line_number":415,"context_line":"        pci_info \u003d {\"devname\": \"lo\", \"physical_network\": \"hr_net\"}"},{"line_number":416,"context_line":"        pci \u003d devspec.PciDeviceSpec(pci_info)"},{"line_number":417,"context_line":"        self.assertFalse(pci.match(dev))"},{"line_number":418,"context_line":"\"\"\""},{"line_number":419,"context_line":"    def test_pci_obj(self):"},{"line_number":420,"context_line":"        pci_info \u003d {\"vendor_id\": \"8086\", \"address\": \"*:*:*.5\","},{"line_number":421,"context_line":"                    \"product_id\": \"5057\", \"physical_network\": \"hr_net\"}"},{"line_number":422,"context_line":""},{"line_number":423,"context_line":"        pci \u003d devspec.PciDeviceSpec(pci_info)"},{"line_number":424,"context_line":"        pci_dev \u003d {"},{"line_number":425,"context_line":"            \u0027compute_node_id\u0027: 1,"},{"line_number":426,"context_line":"            \u0027address\u0027: \u00270000:00:00.5\u0027,"},{"line_number":427,"context_line":"            \u0027product_id\u0027: \u00275057\u0027,"},{"line_number":428,"context_line":"            \u0027vendor_id\u0027: \u00278086\u0027,"},{"line_number":429,"context_line":"            \u0027status\u0027: \u0027available\u0027,"},{"line_number":430,"context_line":"            \u0027parent_addr\u0027: None,"},{"line_number":431,"context_line":"            \u0027extra_k1\u0027: \u0027v1\u0027,"},{"line_number":432,"context_line":"        }"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"        pci_obj \u003d objects.PciDevice.create(None, pci_dev)"},{"line_number":435,"context_line":"        self.assertTrue(pci.match_pci_obj(pci_obj))"},{"line_number":436,"context_line":"\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f436f4f_6e0a1327","line":436,"range":{"start_line":418,"start_character":0,"end_line":436,"end_character":3},"in_reply_to":"9f436f4f_ce7fd6a9","updated":"2017-08-09 01:13:10.000000000","message":"forget to remove this. objects.PciDevice will add in another patch, remove this.","commit_id":"079ddd3b3047ac13b719fff0bcf4ef4b81ea34b5"}]}
