)]}'
{"id":"openstack%2Fcyborg~999940","triplet_id":"openstack%2Fcyborg~master~I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0","project":"openstack/cyborg","branch":"master","topic":"bp/generic-nvme-driver-with-secure-cleanup","attention_set":{"12393":{"account":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"last_update":"2026-08-09 05:33:45.000000000","reason":"Someone else replied on the change"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0","subject":"Implement NVMeDriver.cleanup() with sanitize, write-zeroes, and shred","status":"NEW","created":"2026-08-06 08:56:47.000000000","updated":"2026-08-09 05:33:45.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":17,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"ee6dc4b448a5767d16f47dd4b0896bf8493b40fc","_number":999940,"virtual_id_number":999940,"owner":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":-1,"date":"2026-08-09 05:16:31.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":{"all":[{"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":"","default_value":0,"optional":true},"Workflow":{"all":[{"_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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_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-06 09:00:40.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-06 10:36:22.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"}],"messages":[{"id":"e2569fab36715bb9cbf678b8421a11dd9843a341","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-06 08:56:47.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"d799d424393e22ad94631b4907db078cc257bb25","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-06 09:00:40.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"4f68b9b0905376b20391082b4bedaad674e59998","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-06 09:33:22.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.","accounts_in_message":[],"_revision_number":2},{"id":"28f7f392fd59293338b3a4cf16d0cd4a5dce6e09","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-06 09:37:09.000000000","message":"Patch Set 2:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":2},{"id":"59c622f009600c29de1629b0780176261c441ce0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-06 10:36:22.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/a75e260ae9f8482890dfbccfa42efa3b\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d2f15fe4fb994627aa14d821c685b0d0 : SUCCESS in 7m 23s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/824a72e31ce84488a01005ebe3315772 : SUCCESS in 5m 50s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/91e3832d0cd64516aff8e28f5bcc3188 : SUCCESS in 8m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/dd7812db52104fa5a83d1004aff16d8c : SUCCESS in 4m 14s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/0368e350217e40928ac2b5574c3e3e91 : SUCCESS in 4m 42s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/a4990b21edfb4737b684b2f246b27775 : SUCCESS in 5m 24s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/fa929258dda446039189725dba0e265e : SUCCESS in 6m 47s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/c0466a266b7b49c789bd1a3bf1769ce9 : SUCCESS in 5m 42s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/165475311ea34b06aee4839903746d70 : FAILURE in 29m 39s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/8c4226a6cd334e529c028ddf8f84de61 : FAILURE in 17m 49s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/022da6115c3847ef8c5a6c2eacf817a1 : FAILURE in 39m 55s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/12aae67489cc4faca76f2a4f1ca8cce5 : FAILURE in 48m 17s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/dcb3e5d610a04704a64b643f5cd274ee : FAILURE in 26m 47s","accounts_in_message":[],"_revision_number":2},{"id":"d2b43ea978881969a0cf5a0774b1da18d55c826b","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-06 11:16:16.000000000","message":"Patch Set 2:\n\n(1 comment)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/fe812e523b9c4b3c86dc37db972bee53\n\n- teim-code-review https://zuul.teim.app/t/main/build/a7d5020f87414a52b6d394ce9e189f66 : SUCCESS in 8m 18s","accounts_in_message":[],"_revision_number":2},{"id":"0adc0211b4a06c6924f65c383a95a14de0628a69","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-06 13:38:36.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"165f33c879386bd3af4d0b3407e6ea215dc29e0b","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-06 13:42:45.000000000","message":"Patch Set 3:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":3},{"id":"262648ea0969324589df81fa6591493add05efb4","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-06 15:10:58.000000000","message":"Patch Set 3: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/7b05d17ab5c5445fbdec38699c93d252\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/98e3582b7d86436a8fb00616661f7d84 : FAILURE in 5m 01s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/0a07709e99d049c8a601031ece1509be : SUCCESS in 6m 12s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/168a7992e314415fa5c09e35492ef33f : SUCCESS in 8m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/64efc952dd354d1fb053a296b6792100 : FAILURE in 3m 42s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/51deef8706aa46a39df1caa8e3dda1c2 : FAILURE in 4m 19s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3cd7756f50dc4f34bd1a4fbfb8badf56 : FAILURE in 4m 23s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/a29f037c280e419d897709730d0c912c : FAILURE in 6m 55s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/54664fc0faa14a5ba011bf293f1d650a : SUCCESS in 5m 41s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/e81ce26b45c841109d4db380fcdc78ee : FAILURE in 20m 02s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/eafed79ec89d470197cccdfc7b105ec1 : FAILURE in 27m 50s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/561753126662479ba0b09211b20af558 : FAILURE in 31m 31s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/1265d247e0b443929e02ab556768f20b : FAILURE in 48m 49s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/1652ea52b26349b89b218764df49361c : FAILURE in 29m 41s","accounts_in_message":[],"_revision_number":3},{"id":"b8b7819650e3e4dfb089cf9600ccfaf0e8ae56f0","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-06 15:24:59.000000000","message":"Patch Set 3:\n\n(2 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/9f48021469e9482cb73c5e1b8f8861dd\n\n- teim-code-review https://zuul.teim.app/t/main/build/81888e759b754297ba843674ab979f12 : SUCCESS in 8m 55s\n\nWarning:\n  The _poll_sanitize method has a timeout path that raises DeviceCleanupFailed when the sanitize operation does not complete within CONF.nvme.cleanup_timeout seconds. No test exercises this code path, leaving it uncovered. Impact: The timeout handling code is untested, so regressions in the deadline calculation or exception message formatting could go unnoticed. The timeout path is important for production reliability since it is the fallback when a sanitize hangs. Recommendation: Add a test that mocks nvme_sanitize_log to consistently return an in-progress state (e.g., sprog\u003d0x100, sstat\u003d0) and uses self.flags(cleanup_timeout\u003d\u003csmall_value\u003e, group\u003d\u0027nvme\u0027) to verify DeviceCleanupFailed is raised with a timeout message.","accounts_in_message":[],"_revision_number":3},{"id":"9334f45d431ec165ed943820fa3ef11f8de7c941","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-06 15:31:25.000000000","message":"Uploaded patch set 4: Patch Set 3 was rebased.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":4},{"id":"7ad1c3595da4ea80e9db23fe99a2c7631074c7b8","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-06 15:34:11.000000000","message":"Patch Set 4:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":4},{"id":"57b913ca2a9136680aafdbc2dae75d081a999fa3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-06 16:35:28.000000000","message":"Patch Set 4: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/c6a8cfb409614165be8a1e11ddfc8276\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/fd98b353bfe24be7b5834225e1b1dea4 : FAILURE in 4m 52s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/3af130f3994247cabdf65686171e32cc : SUCCESS in 4m 32s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/754008445bc84d1687f9512ed456564e : SUCCESS in 4m 31s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6702d2e934de4673938d5d20ca61ac06 : FAILURE in 4m 59s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/beee5f5bd93345fd9b171c6fa791bbbe : FAILURE in 4m 32s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/920dbc54aa7547be9a556ada87e3f50e : FAILURE in 4m 14s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/c502cd7db62842c683dcedd450ec0acb : FAILURE in 6m 47s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/4bd9a07118af48b09862b2bb0485d6be : SUCCESS in 3m 53s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/2bb1ad246a0f4916864fa76a54c6b63c : FAILURE in 19m 01s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/3804e892d4e247a8a99a8355c898b47d : FAILURE in 25m 13s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/0a6501e53227401b88b9b0151173fa97 : FAILURE in 47m 55s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/82397b92723b4ca695af44e52318cd35 : FAILURE in 38m 46s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/9abd6b3228164fbaaebd65940b070604 : FAILURE in 31m 33s","accounts_in_message":[],"_revision_number":4},{"id":"7c72e40a0dd488eca5935d2881741dacdcd6d28a","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-06 17:07:49.000000000","message":"Patch Set 4:\n\n(1 comment)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/4368154f908a4b0eb06a361b0e7cfaa3\n\n- teim-code-review https://zuul.teim.app/t/main/build/0eb16f2562ce4e48a2b40f8cc53e050c : SUCCESS in 7m 48s\n\nWarning:\n  The commit message states the cleanup method \u0027unbinds namespaces from vfio-pci\u0027 and \u0027resolves the cleanup action from the device_spec policy matrix\u0027. Neither of these operations is present in the implemented cleanup() method. The method reads a pre-computed cleanup_action from std_board_info and... Impact: Reviewers and future maintainers may assume vfio-pci unbinding is handled in this method and overlook adding it if needed. If vfio-pci unbinding is actually required for correct cleanup (to ensure the device is accessible for nvme-cli commands), its absence could be a functional gap rather than j... Recommendation: If vfio-pci unbinding is handled in a prior commit\u0027s RPC layer, update the commit message to accurately describe only what this patch implements. If vfio-pci unbinding is expected to be in this method, add the missing unbind logic before executing sanitize or write-zeroes.","accounts_in_message":[],"_revision_number":4},{"id":"70768c743bf3d40ea544b6ac45fba5425d55f8c8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-07 05:48:18.000000000","message":"Uploaded patch set 5.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":5},{"id":"ec2e32dadabf0cfef36a8198326a969df1e52349","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-07 05:49:53.000000000","message":"Patch Set 5:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":5},{"id":"95072bb4ca583d7b47262eed43de7b2ae660e495","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-07 07:08:48.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/534e9c3d1e8144ed9455920081dfbd5d\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/7dfe3690fc4e453cae5d0f188f287cdd : SUCCESS in 6m 06s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/82020513f7a34f6a932a13ac7c66ae4f : SUCCESS in 3m 58s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/62d964602ae0472892cce3d493d400fc : SUCCESS in 8m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e8d5b7e8d8fa420a90ee088d6deb2a78 : SUCCESS in 3m 03s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/bf1be09afa484b3ab20eec35aa20ac09 : SUCCESS in 6m 00s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/2ad0f7c992b64243af449d0b68e3f4e0 : SUCCESS in 4m 44s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/3bff2e5760d44011a2fb06339b471ebc : SUCCESS in 6m 26s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/9bb683740b824d368b9b2441f7022f85 : SUCCESS in 3m 54s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/3b0c97137bb04bcfab2c171a7233880d : SUCCESS in 43m 24s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/ae9946a0f89f4c479dbbb60017512ca1 : SUCCESS in 29m 11s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/498d22a859dd444ab6d6c2e5b24a7f86 : SUCCESS in 37m 29s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/4fc5a2ec6bb0472289c5ee422f1798e8 : SUCCESS in 53m 38s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/8729d96129a74b46a647414521033d4a : SUCCESS in 45m 17s","accounts_in_message":[],"_revision_number":5},{"id":"79321cc9afabcbd235831a51d61863c8db46a93d","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-07 07:26:06.000000000","message":"Patch Set 5:\n\n(3 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/41cb5f80a4494208924d4adafb915bef\n\n- teim-code-review https://zuul.teim.app/t/main/build/72ab711f5b08435c90cb610d0e01fbc8 : SUCCESS in 13m 45s","accounts_in_message":[],"_revision_number":5},{"id":"40a9b927b24d40b35bbc9e96c2eeaf4ce909050f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-07 16:13:28.000000000","message":"Uploaded patch set 6.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":6},{"id":"31aa2ad0ddac67988c22d8665f747969296a71c5","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-07 16:16:13.000000000","message":"Patch Set 6:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":6},{"id":"3d8b89bee46d9312afc04a2781c90c8453c3a735","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-07 16:46:41.000000000","message":"Patch Set 6:\n\n(2 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/7b9bdcd1bb0746e3b39ad3f67820e855\n\n- teim-code-review https://zuul.teim.app/t/main/build/ae33636ec3dc437cafcb81ea2f50071f : SUCCESS in 10m 02s","accounts_in_message":[],"_revision_number":6},{"id":"425913c25bd68adef6af3c972f2c1e2f374509bc","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-07 17:30:10.000000000","message":"Patch Set 6: Verified-1\n\n(6 comments)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/cf01597579d44411b67f044f732f898e\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/4c77e3ff21c24d43aecee8d4221f38b3 : FAILURE in 2m 39s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d89db779484340fab6d036e5a57c65a3 : SUCCESS in 4m 15s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fe20d448d8a84d8db1a57021315d88d1 : SUCCESS in 8m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/12265882c787446b8b3306b72407df18 : FAILURE in 6m 01s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/7d96e365f7c04ef3b89873bd9e192811 : FAILURE in 3m 32s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/2be14142766745b8abeb57ec8ed155b5 : FAILURE in 4m 16s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/3532a161e8af43a3b00f418284b46d13 : FAILURE in 6m 33s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/8eeea70853e04937ad84bce7469889ae : SUCCESS in 3m 13s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/0f1dcfdf48904171af825d6197e557ee : SUCCESS in 1h 03m 24s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/63b45cfc7166491980162e490d19ece8 : SUCCESS in 53m 51s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/47d007952ebf49348219f460a5326c57 : SUCCESS in 1h 01m 58s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/42c459b7091440c896d70899678c62b9 : SUCCESS in 50m 17s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/cd53ef6012f7488b85afda0e472abb1b : SUCCESS in 57m 21s","accounts_in_message":[],"_revision_number":6},{"id":"16fc1d61ef6cf4d661dc21794857ef58a7d4a5a2","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"date":"2026-08-09 04:11:29.000000000","message":"Uploaded patch set 7.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":7},{"id":"57b157609b95d1537db36a228efc74ca3487bbee","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 04:13:12.000000000","message":"Patch Set 7:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":7},{"id":"8eb9fe3b7d53c1b0b7f2f58a613e49770ecbe54b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-09 05:16:31.000000000","message":"Patch Set 7: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/516cc76e1f3b4908a1c76781f6f0cccb\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/b2e8e922512a48e69ccad8ca71737e1d : SUCCESS in 7m 17s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/810c244116bc494e87cbb68c0fa0dc82 : SUCCESS in 5m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/36f0955ab0ce408c9379b407a258da03 : SUCCESS in 6m 47s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/adbd7c3857a14a6f8b0578ec82a6496f : SUCCESS in 4m 06s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/48b88a1634cb42ad96867a212f44270f : SUCCESS in 3m 22s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/c0705affb4374d4bb5a51e03a484fca4 : SUCCESS in 4m 05s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/793ba401a2464928a5511dba649b029b : SUCCESS in 5m 52s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/6b4521ce87b446549c2d5bac772cd9b1 : SUCCESS in 4m 09s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/afc95abed35f4dfebb4e5d2d2f9264ff : FAILURE in 51m 23s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/62638e2099e241ccbfd4a6b5e8c8ea3c : FAILURE in 38m 42s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/265d9b43a1f94755a9902e2dda914fb2 : FAILURE in 58m 53s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/3078df37b80a4fcf9abc6d708c782ed1 : FAILURE in 37m 07s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/96c0e53135ab43968a12144e72dd7966 : FAILURE in 44m 11s","accounts_in_message":[],"_revision_number":7},{"id":"ee6dc4b448a5767d16f47dd4b0896bf8493b40fc","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 05:33:45.000000000","message":"Patch Set 7:\n\n(2 comments)\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/90f1fa4386c84c57af333a666001af69\n\n- teim-code-review https://zuul.teim.app/t/main/build/d1b0bea6d90a4c968d9fc7e6e6dbb074 : SUCCESS in 10m 21s","accounts_in_message":[],"_revision_number":7}],"current_revision_number":7,"current_revision":"e5a7877ab9432515f4b22721a94b5af374abf44f","revisions":{"ae8eb57968b66b09e4903be4ccb8f1d982ddd44a":{"kind":"REWORK","_number":1,"created":"2026-08-06 08:56:47.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/1"}}},"commit":{"parents":[{"commit":"65801f088ee345af69679d4b5baa754b4bb394c2","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/65801f088ee345af69679d4b5baa754b4bb394c2"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 08:54:17.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method resolves the cleanup action\nfrom the device_spec policy matrix, unbinds namespaces from vfio-pci,\nand executes sanitize (crypto or block erase) or write-zeroes\ndepending on device capabilities.\n\nThe sanitize path polls the sanitize-log until completion or timeout,\nhandling the case where a device has never been sanitized (SPROG\nfield is zero) by treating it as already complete rather than raising\nan error.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ae8eb57968b66b09e4903be4ccb8f1d982ddd44a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ae8eb57968b66b09e4903be4ccb8f1d982ddd44a"}]},"branch":"refs/heads/master"},"acc375509fcdd0580d5567bd0d7b50e99997e509":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-08-06 09:33:22.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/2"}}},"commit":{"parents":[{"commit":"716be9b89024fcf2ac4c98aebea7559469c9550a","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/716be9b89024fcf2ac4c98aebea7559469c9550a"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 09:30:36.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method resolves the cleanup action\nfrom the device_spec policy matrix, unbinds namespaces from vfio-pci,\nand executes sanitize (crypto or block erase) or write-zeroes\ndepending on device capabilities.\n\nThe sanitize path polls the sanitize-log until completion or timeout,\nhandling the case where a device has never been sanitized (SPROG\nfield is zero) by treating it as already complete rather than raising\nan error.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/acc375509fcdd0580d5567bd0d7b50e99997e509"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/acc375509fcdd0580d5567bd0d7b50e99997e509"}]},"branch":"refs/heads/master"},"c44643b594233cd41e5fbaeb3a6a8cd6322c8f66":{"kind":"REWORK","_number":3,"created":"2026-08-06 13:38:36.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/3"}}},"commit":{"parents":[{"commit":"acbb8023b1e43a11246679a491ff35019b3fb28b","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/acbb8023b1e43a11246679a491ff35019b3fb28b"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 13:17:52.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method resolves the cleanup action\nfrom the device_spec policy matrix, unbinds namespaces from vfio-pci,\nand executes sanitize (crypto or block erase) or write-zeroes\ndepending on device capabilities.\n\nThe sanitize path polls the sanitize-log until completion or timeout,\nhandling the case where a device has never been sanitized (SPROG\nfield is zero) by treating it as already complete rather than raising\nan error.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/c44643b594233cd41e5fbaeb3a6a8cd6322c8f66"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/c44643b594233cd41e5fbaeb3a6a8cd6322c8f66"}]},"branch":"refs/heads/master"},"06c54c9ca00f6ea76abb6f7c0529d021511af6ad":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2026-08-06 15:31:25.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/4"}}},"commit":{"parents":[{"commit":"43d703e3d65f5e3f8af2e18e015a1fcfea00670b","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/43d703e3d65f5e3f8af2e18e015a1fcfea00670b"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 15:16:13.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method resolves the cleanup action\nfrom the device_spec policy matrix, unbinds namespaces from vfio-pci,\nand executes sanitize (crypto or block erase) or write-zeroes\ndepending on device capabilities.\n\nThe sanitize path polls the sanitize-log until completion or timeout,\nhandling the case where a device has never been sanitized (SPROG\nfield is zero) by treating it as already complete rather than raising\nan error.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/06c54c9ca00f6ea76abb6f7c0529d021511af6ad"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/06c54c9ca00f6ea76abb6f7c0529d021511af6ad"}]},"branch":"refs/heads/master"},"b6c11c7dabee155d17bc2a0fd10bd4984ca61747":{"kind":"REWORK","_number":5,"created":"2026-08-07 05:48:18.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/5"}}},"commit":{"parents":[{"commit":"12730005df148167fd60ba7c3e7ea79c90af9cc3","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/12730005df148167fd60ba7c3e7ea79c90af9cc3"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-07 05:47:16.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method reads the pre-computed\ncleanup_action from std_board_info and dispatches to the appropriate\nimplementation: sanitize (crypto or block erase), write-zeroes, or\nshred.\n\nThe sanitize path (_do_sanitize) checks the sanitize-log first; if\nno sanitize is already in progress (SPROG is 0 or 0xFFFF), it issues\na new sanitize command. _poll_sanitize then polls the sanitize-log\nuntil completion, failure, or timeout, raising DeviceCleanupFailed\non the latter two cases. Add a unit test for the timeout path.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/b6c11c7dabee155d17bc2a0fd10bd4984ca61747"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/b6c11c7dabee155d17bc2a0fd10bd4984ca61747"}]},"branch":"refs/heads/master"},"ecde3b63875419656f66fe6f85e3b5ce09da594f":{"kind":"REWORK","_number":6,"created":"2026-08-07 16:13:28.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/6"}}},"commit":{"parents":[{"commit":"1d00970d959fbaa2025c54b5cbc0ce74c79eeecb","subject":"Add cleanup_device RPC and wire unbind dispatch","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1d00970d959fbaa2025c54b5cbc0ce74c79eeecb"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-06 05:55:35.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-07 16:07:54.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize support","message":"Implement NVMeDriver.cleanup() with sanitize support\n\nImplement the cleanup() method on NVMeDriver that performs secure\ndata erasure of NVMe devices. The method reads the pre-computed\ncleanup_action from std_board_info and dispatches to the appropriate\nimplementation: sanitize (crypto or block erase), write-zeroes, or\nshred.\n\nThe sanitize path (_do_sanitize) checks the sanitize-log first; if\nno sanitize is already in progress (SPROG is 0 or 0xFFFF), it issues\na new sanitize command. _poll_sanitize then polls the sanitize-log\nuntil completion, failure, or timeout, raising DeviceCleanupFailed\non the latter two cases. Add a unit test for the timeout path.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ecde3b63875419656f66fe6f85e3b5ce09da594f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ecde3b63875419656f66fe6f85e3b5ce09da594f"}]},"branch":"refs/heads/master"},"e5a7877ab9432515f4b22721a94b5af374abf44f":{"kind":"REWORK","_number":7,"created":"2026-08-09 04:11:29.000000000","uploader":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"ref":"refs/changes/40/999940/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/40/999940/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/40/999940/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/40/999940/7"}}},"commit":{"parents":[{"commit":"9a79e50a2d9a06e8b237fdb6214a65245cf1a1f2","subject":"Add cleanup_device RPC and dispatch from ARQ unbind","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9a79e50a2d9a06e8b237fdb6214a65245cf1a1f2"}]}],"author":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-09 03:41:06.000000000","tz":330},"committer":{"name":"Chandan Kumar (raukadah)","email":"chkumar@redhat.com","date":"2026-08-09 03:41:06.000000000","tz":330},"subject":"Implement NVMeDriver.cleanup() with sanitize, write-zeroes, and shred","message":"Implement NVMeDriver.cleanup() with sanitize, write-zeroes, and shred\n\nNVMeDriver.cleanup() dispatches to the appropriate method based on\nthe cleanup_action stored in the device\u0027s std_board_info:\n\n- sanitize_ces / sanitize_bes: calls nvme sanitize with the matching\n  action code, then polls the sanitize log until SSTAT reports success\n  or failure. Handles both nvme-cli 1.x (integer sstat) and 2.x\n  (dict with \u0027status\u0027 key) response formats.\n- zero_wz: uses nvme write-zeroes to overwrite every LBA of the\n  first namespace. If ns_mgmt is set the driver first consolidates\n  all namespaces into one full-capacity namespace to ensure a clean\n  slate before zeroing.\n- zero_shred: falls back to shred(1) for devices that support neither\n  sanitize nor write-zeroes.\n\n_consolidate_namespaces() deletes all existing namespaces, creates a\nsingle new one spanning the full tnvmcap capacity (LBA count derived\nfrom id-ctrl tnvmcap and the active LBA format\u0027s block size), rescans,\nand returns the resulting namespace path.\n\nnvme_list_ns() is added to nvme_cli.py to retrieve the first NSID\nafter rescan; it handles both the bare-array (nvme-cli 1.x) and\n{\"nsid_list\": [...]} (nvme-cli 2.x) response formats.\n\nGenerated-By: Claude Opus 4.6\nSigned-off-by: Chandan Kumar (raukadah) \u003cchkumar@redhat.com\u003e\nChange-Id: I8f4b2e01a7d3c9e5f6a1b0d8c2e4f7a9b3d5e1f0\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/e5a7877ab9432515f4b22721a94b5af374abf44f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/e5a7877ab9432515f4b22721a94b5af374abf44f"}]},"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"},{"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":""}}}]}
