)]}'
{"id":"openstack%2Fcyborg~1000240","triplet_id":"openstack%2Fcyborg~master~I9f05bd0a07647044a342095160cb3d49e308f0dd","project":"openstack/cyborg","branch":"master","topic":"bug/2161354","attention_set":{"4690":{"account":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"last_update":"2026-08-18 07:39:46.000000000","reason":"\u003cGERRIT_ACCOUNT_39344\u003e replied on the change","reason_account":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"}},"11604":{"account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"last_update":"2026-08-18 14:47:03.000000000","reason":"\u003cGERRIT_ACCOUNT_39344\u003e replied on the change","reason_account":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"}}},"removed_from_attention_set":{"39344":{"account":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"last_update":"2026-08-18 14:47:03.000000000","reason":"\u003cGERRIT_ACCOUNT_39344\u003e replied on the change","reason_account":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"}}},"hashtags":[],"change_id":"I9f05bd0a07647044a342095160cb3d49e308f0dd","subject":"Add device_addresses allow-list to the Intel NIC driver","status":"NEW","created":"2026-08-09 10:55:29.000000000","updated":"2026-08-18 14:47:03.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":5,"unresolved_comment_count":2,"has_review_started":true,"meta_rev_id":"7120f4ce65785c2fc2248c128c8090c5b07eb9f3","_number":1000240,"virtual_id_number":1000240,"owner":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-08-09 12:00:07.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"recommended":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"all":[{"value":1,"date":"2026-08-12 15:56:06.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":1,"default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-09 10:55:36.000000000","updated_by":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"reviewer":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"state":"CC"},{"updated":"2026-08-09 12:00:07.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-08-12 15:56:06.000000000","updated_by":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"reviewer":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"state":"REVIEWER"},{"updated":"2026-08-18 14:38:18.000000000","updated_by":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"reviewer":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"state":"CC"}],"messages":[{"id":"2a3c372aa5086abae2fcbd6633b68cc6d9b70420","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"date":"2026-08-09 10:55:29.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f943524fd744879056929b0851119a4debadea63","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-09 10:55:36.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"4a64a9a908ab2290d563d098d85679850bc9ff1a","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-09 11:07:37.000000000","message":"Patch Set 1:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/95e058d826f342dbb7fdb7b1d214a0dc\n\n- teim-code-review https://zuul.teim.app/t/main/build/4630bf0151434ce9b83f54fc3c68b12d : SUCCESS in 8m 14s","accounts_in_message":[],"_revision_number":1},{"id":"da612c7655fb3a3c27c2e070f6a278ca28a33a7c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-09 12:00:07.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/717074b42af14e198d686a95907be880\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/cb8b3de8bcd14340bc3d6ce32d06820b : SUCCESS in 3m 59s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/69fc3164753f4223bce32310fbb537f3 : SUCCESS in 3m 41s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/914a8ea6a9c441b299dbd139d45b9b23 : SUCCESS in 6m 30s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e2516ccaded545e4b2725d8b3664aa65 : SUCCESS in 3m 16s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/3c456ab65fca4cf882342b978845f531 : SUCCESS in 3m 44s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/239a838ac5b94ebf860fd056d73aeee7 : SUCCESS in 3m 47s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/f9e0b8c850784029aa70a4b61c7884cc : SUCCESS in 6m 14s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/1d9f213b23ce45a6a2b0a6b1ca3f1bfe : SUCCESS in 3m 28s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/bd2377a444be4a6a84e29afecf036317 : SUCCESS in 52m 02s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/603cd10cf0504bb4b38c00a5f257bd97 : SUCCESS in 41m 36s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/dbec131f25db4b9eb943d0d9dae21ad7 : SUCCESS in 54m 14s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/61c4e1d66e20446cbf1012609e68b665 : SUCCESS in 54m 08s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/ad7cf1cb75c644a5adceacc0a8c53648 : SUCCESS in 51m 48s","accounts_in_message":[],"_revision_number":1},{"id":"2d16e676aad8d909b87c6a4cab95c5b7b8df9caa","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2026-08-12 15:56:06.000000000","message":"Patch Set 1: Code-Review+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"f6bd48163feebc56bdb0c0853824d6f688965dda","author":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"date":"2026-08-18 07:39:46.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"c84a6c9a2005268bf5197073ae71409517a9dace","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-08-18 14:38:18.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"7120f4ce65785c2fc2248c128c8090c5b07eb9f3","author":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"date":"2026-08-18 14:47:03.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"4113395cda4698e990fb99a0a076d96291eacf71","revisions":{"4113395cda4698e990fb99a0a076d96291eacf71":{"kind":"REWORK","_number":1,"created":"2026-08-09 10:55:29.000000000","uploader":{"_account_id":39344,"name":"Gihong Lee","display_name":"gamio","email":"gh9231@gmail.com","username":"gamio"},"ref":"refs/changes/40/1000240/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/1000240/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/1000240/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/1000240/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/1000240/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/1000240/1"}}},"commit":{"parents":[{"commit":"270385fc3a1d3b8e71fc7aba92a46bacf3fce72d","subject":"Merge \"Add shared lspci helpers to common utils\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/270385fc3a1d3b8e71fc7aba92a46bacf3fce72d"}]}],"author":{"name":"gihong Lee","email":"gh9231@gmail.com","date":"2026-08-09 10:54:55.000000000","tz":540},"committer":{"name":"gihong Lee","email":"gh9231@gmail.com","date":"2026-08-09 10:54:55.000000000","tz":540},"subject":"Add device_addresses allow-list to the Intel NIC driver","message":"Add device_addresses allow-list to the Intel NIC driver\n\nThe Intel NIC driver discovered every card matching its known\nvendor/device list, with no way for operators to restrict which devices\nCyborg manages. On hosts where some NICs, or some VFs of an SR-IOV NIC,\nare reserved for the host or other services, there was no mechanism to\nexclude them from discovery.\n\nAdd a per-NIC-type device_addresses option, mirroring the existing\n[vgpu_*] device_addresses GPU option, that acts as an allow-list of PCI\naddresses. Filtering happens in nic_tree() as devices are collected: a\nlisted PF exposes all of its VFs, or the PF itself when it has none,\nwhile a listed VF exposes only that VF, with its PF still used as the\ncontrol path. This lets operators delegate only selected VFs of an\nSR-IOV NIC to Cyborg. When the option is empty (the default), every\nmatching NIC is discovered, so existing deployments are unaffected.\n\nAccepting both PF and VF addresses matches Nova\u0027s [pci] device_spec,\nwhere a PF address matches all of its VFs and a VF address matches that\nVF directly (see nova/pci/devspec.py PhysicalPciAddress.match). The\noption is a ListOpt to stay consistent with the other NIC and GPU device\noptions; JSON-array parity across drivers can follow separately.\n\nMalformed PCI addresses are rejected at startup via parse_address rather\nthan being silently ignored.\n\nCloses-Bug: #2161354\nChange-Id: I9f05bd0a07647044a342095160cb3d49e308f0dd\nSigned-off-by: gihong Lee \u003cgh9231@gmail.com\u003e\nAssisted-By: Claude Code (claude-opus-4-8)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/4113395cda4698e990fb99a0a076d96291eacf71"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/4113395cda4698e990fb99a0a076d96291eacf71"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"}},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
