)]}'
{"id":"openstack%2Fnova~898326","triplet_id":"openstack%2Fnova~master~If2425050cf40f0a14f2cb27ef3d985fa3ab9df35","project":"openstack/nova","branch":"master","attention_set":{},"removed_from_attention_set":{"11604":{"account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"last_update":"2023-10-18 20:09:33.000000000","reason":"Change was abandoned"},"16137":{"account":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"last_update":"2023-10-18 07:37:05.000000000","reason":"\u003cGERRIT_ACCOUNT_16137\u003e replied on the change","reason_account":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"}}},"hashtags":[],"change_id":"If2425050cf40f0a14f2cb27ef3d985fa3ab9df35","subject":"[WIP] Handle scaling of cputune.shares","status":"ABANDONED","created":"2023-10-16 14:56:32.000000000","updated":"2023-10-18 20:09:33.000000000","total_comment_count":5,"unresolved_comment_count":2,"has_review_started":true,"meta_rev_id":"51742a38dc3aba1f1e1eed7c2db9044805b14093","_number":898326,"virtual_id_number":898326,"owner":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"tag":"autogenerated:zuul:check","value":-1,"date":"2023-10-17 16:12:24.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":-2,"max":2},"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"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":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"_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},"Review-Priority":{"all":[{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2023-10-16 16:09:46.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":"CC"},{"updated":"2023-10-16 17:10:00.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":"2023-10-17 14:04:14.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":"REVIEWER"}],"messages":[{"id":"7ad17e01d2d4aeffa3a0caaac3538b2b30441f6a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-16 14:56:32.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"5e443dc548e3c276cef8ee92f0cbf2be8087d001","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-16 14:59:08.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"952d13a2206b837da12c57de0bb035ff11103c56","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-16 16:09:46.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/70ee19a211154d81abfa449709628536\n\n- openstack-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/82109acab2fb4a9c826f0b514399dea8 : SUCCESS in 40m 20s (non-voting)\n- openstack-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/04a9ed96860840979d3273a952f5b824 : SUCCESS in 34m 50s (non-voting)\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/effdd13821ea4f9db33a33f87dbed918 : SUCCESS in 45m 27s (non-voting)\n- openstack-tox-py311-arm64 https://zuul.opendev.org/t/openstack/build/2efcf4dce1854c1aaf27e81ca7e062cb : SUCCESS in 32m 03s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"df96a3c52b560723a5c2a38d4f54aaae499c8b51","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-16 17:10:00.000000000","message":"Patch Set 2: Verified-1\n\n(5 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\n\nhttps://zuul.opendev.org/t/openstack/buildset/8fd77a5e35164afe85760992068ab34d\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/46dc5ad4ed5442b48a29c275a77dce36 : SUCCESS in 47m 28s\n- tempest-integrated-compute https://zuul.opendev.org/t/openstack/build/eb92417d06e34935aad46278a17843f9 : SUCCESS in 1h 43m 07s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/6d9ec067778d4db693193899ff3d12ee : SUCCESS in 51m 09s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/dbc831f3291342ea93972bbb292dac18 : SUCCESS in 17m 59s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/82b5e865bd1b4cd3862f1f449aeda0e6 : FAILURE in 5m 42s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/8d7d85e7beab40f89a2772fe7450b63e : SUCCESS in 11m 13s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/8ba5a0c51de4457ca94a803312f9b0bb : SUCCESS in 11m 41s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/23d7e23978834fcbb9423cbe9111c190 : SUCCESS in 12m 08s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b8363fabbf744e2e9cc34884e43b1b41 : SUCCESS in 12m 38s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/94e4f5e81c2a4a988d18f297fd8163e1 : SUCCESS in 10m 42s\n- ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa https://zuul.opendev.org/t/openstack/build/9a83dc41e0b040e09d087164768afa26 : SUCCESS in 1h 07m 16s (non-voting)\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/d687b391b41549dcb7e859ff225a0bf7 : FAILURE in 1h 38m 11s\n- nova-live-migration https://zuul.opendev.org/t/openstack/build/717cd4f32806431a91fe70163a695a6d : POST_FAILURE in 42m 45s\n- nova-live-migration-ceph https://zuul.opendev.org/t/openstack/build/7a415bf01d554ecab11c9a31f5318cb0 : POST_FAILURE in 39m 26s\n- nova-lvm https://zuul.opendev.org/t/openstack/build/eb232273910d4b8ba25b297ee8a3f68b : SUCCESS in 50m 47s\n- nova-multi-cell https://zuul.opendev.org/t/openstack/build/ac4d13c4a1a1422aa900d8c1f393c9f8 : SUCCESS in 1h 37m 29s\n- nova-next https://zuul.opendev.org/t/openstack/build/d8d7c2f5532840e78fe25a47ab825048 : SUCCESS in 2h 03m 14s\n- nova-ovs-hybrid-plug https://zuul.opendev.org/t/openstack/build/d6d9c45f12f84851bf61d8590798fb77 : POST_FAILURE in 47m 42s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/e56e7844c0ee4ee0987f7d1f832ff06a : SUCCESS in 4m 24s (non-voting)\n- nova-tox-py310-with-sqlalchemy-2x https://zuul.opendev.org/t/openstack/build/9568e8dfbd05451c9e4c931d8e64bf67 : SUCCESS in 13m 41s\n- nova-tox-functional-py38 https://zuul.opendev.org/t/openstack/build/97cafe9580874eca8f29c6cc640f6dee : SUCCESS in 21m 16s\n- nova-tox-functional-py39 https://zuul.opendev.org/t/openstack/build/38bfa54b850b4667a4ebc94071c98b3d : SUCCESS in 21m 21s\n- nova-tox-functional-py310 https://zuul.opendev.org/t/openstack/build/a09c3bb0c27f4076939ed3d640ffa264 : SUCCESS in 19m 17s\n- tempest-integrated-compute-enforce-scope-new-defaults https://zuul.opendev.org/t/openstack/build/c42b88e597364124a9a6be392d7cbfd1 : SUCCESS in 1h 33m 47s\n- tempest-integrated-compute-rbac-old-defaults https://zuul.opendev.org/t/openstack/build/6ec2e08451684c24b8002cc6c2a6ce31 : SUCCESS in 1h 31m 32s\n- nova-grenade-multinode https://zuul.opendev.org/t/openstack/build/c486c52ca9c24537a8cff5756dd0c7d5 : SUCCESS in 1h 03m 25s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/02e138ec1e094351a9af2083abad8b14 : SUCCESS in 54m 30s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/c700b775fbb3421b9864e3aa8fcc4d2d : SUCCESS in 34m 25s (non-voting)\n- barbican-tempest-plugin-simple-crypto https://zuul.opendev.org/t/openstack/build/8e8332b6d9934f19be44d740cbbeb488 : SUCCESS in 51m 03s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"a67b310ea0ba631d2f4511143af56b45d527f8dd","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-17 13:40:37.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1\n","accounts_in_message":[],"_revision_number":3},{"id":"5f04d552fc8ea95332edce9145a80281311147f5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-17 14:00:58.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"696d5631b995eca69c2d7d6b00d2f3fd83535b9f","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2023-10-17 14:04:14.000000000","message":"Patch Set 3: Code-Review-1\n\n(3 comments)","accounts_in_message":[],"_revision_number":3},{"id":"d429e96dbe68d681f101e5914c39045860ee514d","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-17 14:36:46.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"8c9e4e1ce6f78a13b4b3e7ef9358f38a44048ffe","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-17 14:53:08.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3caa2246e7794553b9b830fe522459b6\n\n- openstack-tox-py38-arm64 https://zuul.opendev.org/t/openstack/build/6a80ee7cab234bc6b771724065673a24 : FAILURE in 27m 45s (non-voting)\n- openstack-tox-py39-arm64 https://zuul.opendev.org/t/openstack/build/f0555beef2404cdb8c2fb3bdcafc95d6 : FAILURE in 26m 13s (non-voting)\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/e69d1dbafbf14f3cb9a92f640d169036 : FAILURE in 29m 01s (non-voting)\n- openstack-tox-py311-arm64 https://zuul.opendev.org/t/openstack/build/8711e36848c84c1d8e7c2a76d37762f2 : FAILURE in 26m 21s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"533928c866610f55977e29becc48c86639a84ae0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-10-17 16:12:24.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\n\nhttps://zuul.opendev.org/t/openstack/buildset/9cffaab59f0b4ee6a4ed7ad086c2b458\n\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/13c5aa737fb94acd81faa61693d464f8 : SUCCESS in 47m 52s\n- tempest-integrated-compute https://zuul.opendev.org/t/openstack/build/b83047502cc14cbba3337004bf9ac330 : SUCCESS in 1h 44m 40s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/de8a00c02bbe49faa1d7a41c4c5d6ce9 : SUCCESS in 1h 00m 20s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/15be33ddde854deb97adc2e03f8adf35 : FAILURE in 15m 52s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3d9ce4338e9840ca92b688dbe93f3df4 : SUCCESS in 12m 20s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/dd1dcf8543194416a1799894b82b1801 : FAILURE in 12m 31s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/b930c7a922604c7b80fbcc5e859c89b2 : FAILURE in 12m 45s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/5e5de4d537a84444b06afe31a3159b03 : FAILURE in 13m 48s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b8f0e80f372a447c9c2348ec0b314eef : FAILURE in 10m 56s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/65332bc8bb844afba6ac9343367e3593 : SUCCESS in 10m 15s\n- ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa https://zuul.opendev.org/t/openstack/build/621f6c9d717d466292c30e2f080e9503 : SUCCESS in 50m 16s (non-voting)\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/6200565bb6934f30bdd6b773f3e850df : SUCCESS in 1h 45m 41s\n- nova-live-migration https://zuul.opendev.org/t/openstack/build/406b3f2aea1444298562ce3c1a1759a3 : POST_FAILURE in 42m 52s\n- nova-live-migration-ceph https://zuul.opendev.org/t/openstack/build/d45b2081929d43a68448b11dd8800501 : POST_FAILURE in 39m 01s\n- nova-lvm https://zuul.opendev.org/t/openstack/build/39a70a547ccf4f5d94ffb18aeab131fa : SUCCESS in 55m 01s\n- nova-multi-cell https://zuul.opendev.org/t/openstack/build/1719ff0e5c35469380850455f9119063 : SUCCESS in 1h 24m 32s\n- nova-next https://zuul.opendev.org/t/openstack/build/9aae9e39bbf8462d8d1f4b70552bdc38 : SUCCESS in 2h 02m 31s\n- nova-ovs-hybrid-plug https://zuul.opendev.org/t/openstack/build/65543ea116994b32b37f965a5fe4ff4e : POST_FAILURE in 50m 39s\n- nova-tox-validate-backport https://zuul.opendev.org/t/openstack/build/174d0ecf0bc9400e8b5a9669b98b9404 : SUCCESS in 4m 55s (non-voting)\n- nova-tox-py310-with-sqlalchemy-2x https://zuul.opendev.org/t/openstack/build/1c6ed69a87ec442d9303fce86f582601 : FAILURE in 15m 54s\n- nova-tox-functional-py38 https://zuul.opendev.org/t/openstack/build/efad620ed2d74ba4a0c05ee7d80b6cf6 : SUCCESS in 25m 32s\n- nova-tox-functional-py39 https://zuul.opendev.org/t/openstack/build/81be73d5f2d54c0588193f418c36ae27 : SUCCESS in 23m 28s\n- nova-tox-functional-py310 https://zuul.opendev.org/t/openstack/build/aaf8af22c81945448bd6faa6e4ec78bd : SUCCESS in 24m 30s\n- tempest-integrated-compute-enforce-scope-new-defaults https://zuul.opendev.org/t/openstack/build/665cd38de2b741e8bc9272ce3238190a : SUCCESS in 1h 42m 21s\n- tempest-integrated-compute-rbac-old-defaults https://zuul.opendev.org/t/openstack/build/b8463b9d1b87467a9ba90ff19c3f2ffe : SUCCESS in 1h 38m 20s\n- nova-grenade-multinode https://zuul.opendev.org/t/openstack/build/6dcde4e620f744afbdd1126dc8c2347f : SUCCESS in 1h 22m 52s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/66ed80e13ba54140a49468cf87942933 : SUCCESS in 1h 04m 28s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/dab82ccdc1b64d6dbeff7ba286522c04 : SUCCESS in 34m 39s (non-voting)\n- barbican-tempest-plugin-simple-crypto https://zuul.opendev.org/t/openstack/build/a12b80ca13cc4fc39c60a65209e76da7 : SUCCESS in 44m 47s (non-voting)","accounts_in_message":[],"_revision_number":4},{"id":"ff4a442ab9a3e056dd9af0c24c55046d7382093c","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-18 07:37:05.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"51742a38dc3aba1f1e1eed7c2db9044805b14093","tag":"autogenerated:gerrit:abandon","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2023-10-18 20:09:33.000000000","message":"Abandoned","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"e43d5ebac3e7ad1ebcd34caf02607b5354d8c680","revisions":{"7e5cb62fb8e99b3560a29a2255b2f16d1380a442":{"kind":"REWORK","_number":1,"created":"2023-10-16 14:56:32.000000000","uploader":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"ref":"refs/changes/26/898326/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/26/898326/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/26/898326/1"}}},"commit":{"parents":[{"commit":"9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d","subject":"Merge \"Warn if we find compute services in cell0\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d"}]}],"author":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:34:33.000000000","tz":0},"committer":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:56:23.000000000","tz":0},"subject":"[WIP] Handle scaling of cputune.shares","message":"[WIP] Handle scaling of cputune.shares\n\nThis adds handling the same way that systemd does to scale\nthe value of cgroups CPUShares to a value that is within the\nallowed range for the CPUWeight.\n\nThis is implemented as a workaround for the libvirt driver\nsince it\u0027s breaking change [1] where it changed the passing\nof the cputune.shares value from CPUShares to CPUWeight where\nthe allowed value range is different.\n\nThis causes a lot of issues for operators where installation\nare heavily utilized with oversubscription and the CPU time\nis favored the larger (the more vcpus) an instance has to\nensure the Linux scheduler (CFS) gives them more CPU time\nbased on them having more vcpus.\n\nNova\u0027s response to this issue was to remove setting the\ndefault cputune.shares value [2] and remove it completely\nfrom both new instances and for instance pre live-miration\nwhich means that all new instances would get a default value\nno matter how many vcpus the instance had.\n\nFor a busy compute node this would mean that the instance with\nmore vcpus would get the same amount of CPU time which would\npretty much behave as if it only had one during heavy\noversubscription.\n\nThis takes a more aggressive approach and signals that libvirt\nbroke applications by not introducing a cputune.cpu_weight and\nencouraging applications to move to that and deprecate or scale\nthe value correctly for applications that were still setting the\ncputune.cpu_shares value. Fortunately Nova handled this swiftly\nbut with impact on current behaviour which means a lot of people\nprobably missed this even affects them.\n\nFor new instances this computes a scaled cputune.cpu_shares value\nand passes that so it works even though libvirt passes it to\nCPUWeight for libvirt version \u003e\u003d 7.2.0 where the change was\nintroduced in commit 9c1693eff427661616ce1bd2795688f87288a412\nseveral years ago. It also upon nova-compute startup loops through\nthe defined domains and updates the cpu_shares value to the\ncorrected scaled value.\n\nThis does not impact the default behaviour changed in [1] and\nis a workaround proposed upon that and the hope is to have it\nbackported all the way to Zed and then doing the same on Yoga\nbut with some minor changes to the behaviour if enabled there.\n\n[1] https://gitlab.com/libvirt/libvirt/-/issues/161\n[2] https://review.opendev.org/c/openstack/nova/+/824048\n\nChange-Id: If2425050cf40f0a14f2cb27ef3d985fa3ab9df35\nPartial-bug: 1978489\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/7e5cb62fb8e99b3560a29a2255b2f16d1380a442"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/7e5cb62fb8e99b3560a29a2255b2f16d1380a442"}]},"branch":"refs/heads/master"},"ee92f6faa865e17cca2930cb0fc3f42a2256034a":{"kind":"REWORK","_number":2,"created":"2023-10-16 14:59:08.000000000","uploader":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"ref":"refs/changes/26/898326/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/26/898326/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/26/898326/2"}}},"commit":{"parents":[{"commit":"9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d","subject":"Merge \"Warn if we find compute services in cell0\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d"}]}],"author":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:34:33.000000000","tz":0},"committer":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:59:00.000000000","tz":0},"subject":"[WIP] Handle scaling of cputune.shares","message":"[WIP] Handle scaling of cputune.shares\n\nThis adds handling the same way that systemd does to scale\nthe value of cgroups CPUShares to a value that is within the\nallowed range for the CPUWeight.\n\nThis is implemented as a workaround for the libvirt driver\nsince it\u0027s breaking change [1] where it changed the passing\nof the cputune.shares value from CPUShares to CPUWeight where\nthe allowed value range is different.\n\nThis causes a lot of issues for operators where installation\nare heavily utilized with oversubscription and the CPU time\nis favored the larger (the more vcpus) an instance has to\nensure the Linux scheduler (CFS) gives them more CPU time\nbased on them having more vcpus.\n\nNova\u0027s response to this issue was to remove setting the\ndefault cputune.shares value [2] and remove it completely\nfrom both new instances and for instance pre live-miration\nwhich means that all new instances would get a default value\nno matter how many vcpus the instance had.\n\nFor a busy compute node this would mean that the instance with\nmore vcpus would get the same amount of CPU time which would\npretty much behave as if it only had one during heavy\noversubscription.\n\nThis takes a more aggressive approach and signals that libvirt\nbroke applications by not introducing a cputune.cpu_weight and\nencouraging applications to move to that and deprecate or scale\nthe value correctly for applications that were still setting the\ncputune.cpu_shares value. Fortunately Nova handled this swiftly\nbut with impact on current behaviour which means a lot of people\nprobably missed this even affects them.\n\nFor new instances this computes a scaled cputune.cpu_shares value\nand passes that so it works even though libvirt passes it to\nCPUWeight for libvirt version \u003e\u003d 7.2.0 where the change was\nintroduced in commit 9c1693eff427661616ce1bd2795688f87288a412\nseveral years ago. It also upon nova-compute startup loops through\nthe defined domains and updates the cpu_shares value to the\ncorrected scaled value.\n\nThis does not impact the default behaviour changed in [1] and\nis a workaround proposed upon that and the hope is to have it\nbackported all the way to Zed and then doing the same on Yoga\nbut with some minor changes to the behaviour if enabled there.\n\n[1] https://gitlab.com/libvirt/libvirt/-/issues/161\n[2] https://review.opendev.org/c/openstack/nova/+/824048\n\nChange-Id: If2425050cf40f0a14f2cb27ef3d985fa3ab9df35\nPartial-bug: 1978489\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/ee92f6faa865e17cca2930cb0fc3f42a2256034a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/ee92f6faa865e17cca2930cb0fc3f42a2256034a"}]},"branch":"refs/heads/master"},"0550659557e937f5d9811a8e3ad216805638ddcc":{"kind":"REWORK","_number":3,"created":"2023-10-17 13:40:37.000000000","uploader":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"ref":"refs/changes/26/898326/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/26/898326/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/26/898326/3"}}},"commit":{"parents":[{"commit":"9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d","subject":"Merge \"Warn if we find compute services in cell0\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d"}]}],"author":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:34:33.000000000","tz":0},"committer":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-17 13:40:29.000000000","tz":0},"subject":"[WIP] Handle scaling of cputune.shares","message":"[WIP] Handle scaling of cputune.shares\n\nThis adds handling the same way that systemd does to scale\nthe value of cgroups CPUShares to a value that is within the\nallowed range for the CPUWeight.\n\nThis is implemented as a workaround for the libvirt driver\nsince it\u0027s breaking change [1] where it changed the passing\nof the cputune.shares value from CPUShares to CPUWeight where\nthe allowed value range is different.\n\nThis causes a lot of issues for operators where installation\nare heavily utilized with oversubscription and the CPU time\nis favored the larger (the more vcpus) an instance has to\nensure the Linux scheduler (CFS) gives them more CPU time\nbased on them having more vcpus.\n\nNova\u0027s response to this issue was to remove setting the\ndefault cputune.shares value [2] and remove it completely\nfrom both new instances and for instance pre live-miration\nwhich means that all new instances would get a default value\nno matter how many vcpus the instance had.\n\nFor a busy compute node this would mean that the instance with\nmore vcpus would get the same amount of CPU time which would\npretty much behave as if it only had one during heavy\noversubscription.\n\nThis takes a more aggressive approach and signals that libvirt\nbroke applications by not introducing a cputune.cpu_weight and\nencouraging applications to move to that and deprecate or scale\nthe value correctly for applications that were still setting the\ncputune.cpu_shares value. Fortunately Nova handled this swiftly\nbut with impact on current behaviour which means a lot of people\nprobably missed this even affects them.\n\nFor new instances this computes a scaled cputune.cpu_shares value\nand passes that so it works even though libvirt passes it to\nCPUWeight for libvirt version \u003e\u003d 7.2.0 where the change was\nintroduced in commit 9c1693eff427661616ce1bd2795688f87288a412\nseveral years ago. It also upon nova-compute startup loops through\nthe defined domains and updates the cpu_shares value to the\ncorrected scaled value.\n\nThis does not impact the default behaviour changed in [1] and\nis a workaround proposed upon that and the hope is to have it\nbackported all the way to Zed and then doing the same on Yoga\nbut with some minor changes to the behaviour if enabled there.\n\n[1] https://gitlab.com/libvirt/libvirt/-/issues/161\n[2] https://review.opendev.org/c/openstack/nova/+/824048\n\nChange-Id: If2425050cf40f0a14f2cb27ef3d985fa3ab9df35\nPartial-bug: 1978489\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/0550659557e937f5d9811a8e3ad216805638ddcc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/0550659557e937f5d9811a8e3ad216805638ddcc"}]},"branch":"refs/heads/master"},"e43d5ebac3e7ad1ebcd34caf02607b5354d8c680":{"kind":"REWORK","_number":4,"created":"2023-10-17 14:00:58.000000000","uploader":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"ref":"refs/changes/26/898326/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/26/898326/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/26/898326/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/26/898326/4"}}},"commit":{"parents":[{"commit":"9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d","subject":"Merge \"Warn if we find compute services in cell0\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/9dceb735f6926c71a8c2e2c6ef8b5e0a1363041d"}]}],"author":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-16 14:34:33.000000000","tz":0},"committer":{"name":"Tobias Urdin","email":"tobias.urdin@binero.se","date":"2023-10-17 14:00:43.000000000","tz":0},"subject":"[WIP] Handle scaling of cputune.shares","message":"[WIP] Handle scaling of cputune.shares\n\nThis adds handling the same way that systemd does to scale\nthe value of cgroups CPUShares to a value that is within the\nallowed range for the CPUWeight.\n\nThis is implemented as a workaround for the libvirt driver\nsince it\u0027s breaking change [1] where it changed the passing\nof the cputune.shares value from CPUShares to CPUWeight where\nthe allowed value range is different.\n\nThis causes a lot of issues for operators where installation\nare heavily utilized with oversubscription and the CPU time\nis favored the larger (the more vcpus) an instance has to\nensure the Linux scheduler (CFS) gives them more CPU time\nbased on them having more vcpus.\n\nNova\u0027s response to this issue was to remove setting the\ndefault cputune.shares value [2] and remove it completely\nfrom both new instances and for instance pre live-miration\nwhich means that all new instances would get a default value\nno matter how many vcpus the instance had.\n\nFor a busy compute node this would mean that the instance with\nmore vcpus would get the same amount of CPU time which would\npretty much behave as if it only had one during heavy\noversubscription.\n\nThis takes a more aggressive approach and signals that libvirt\nbroke applications by not introducing a cputune.cpu_weight and\nencouraging applications to move to that and deprecate or scale\nthe value correctly for applications that were still setting the\ncputune.cpu_shares value. Fortunately Nova handled this swiftly\nbut with impact on current behaviour which means a lot of people\nprobably missed this even affects them.\n\nFor new instances this computes a scaled cputune.cpu_shares value\nand passes that so it works even though libvirt passes it to\nCPUWeight for libvirt version \u003e\u003d 7.2.0 where the change was\nintroduced in commit 9c1693eff427661616ce1bd2795688f87288a412\nseveral years ago. It also upon nova-compute startup loops through\nthe defined domains and updates the cpu_shares value to the\ncorrected scaled value.\n\nThis does not impact the default behaviour changed in [1] and\nis a workaround proposed upon that and the hope is to have it\nbackported all the way to Zed and then doing the same on Yoga\nbut with some minor changes to the behaviour if enabled there.\n\n[1] https://gitlab.com/libvirt/libvirt/-/issues/161\n[2] https://review.opendev.org/c/openstack/nova/+/824048\n\nChange-Id: If2425050cf40f0a14f2cb27ef3d985fa3ab9df35\nPartial-bug: 1978489\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/e43d5ebac3e7ad1ebcd34caf02607b5354d8c680"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/e43d5ebac3e7ad1ebcd34caf02607b5354d8c680"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"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":{}}},{"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":{}}},{"name":"Review-Priority","description":"Review Priority","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"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":{}}}]}
