)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"3f87b664b00cc0b3b8f09cb4e0bb25bc9c580042","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"a09cd734_8f28d185","updated":"2023-06-07 09:44:18.000000000","message":"Looks good. I will wait for Dan\u0027s vote before upgrading to +2","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"41ccb64b3e918e892caf66ab877944d26ba63cc8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"98dac77c_3d2b48f0","updated":"2023-06-06 15:26:56.000000000","message":"What is here is fine, but maybe something to think about on the return type.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0ed9f92e5069e79cb7b60724c048ca038c7c094e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"39d6032a_7d61efd8","updated":"2023-06-07 08:52:18.000000000","message":"recheck test_stamp_pattern failed to manipulate volumes in the guest\n\n```\ntempest.lib.exceptions.TimeoutException: Request timed out\nDetails: Command: \u0027set -eu -o pipefail; PATH\u003d$PATH:/sbin:/usr/sbin; sudo mke2fs -t ext4 /dev/vdb\u0027 executed on host \u0027172.24.5.237\u0027.\n```\n\n\n```\n[   10.845575] virtio_blk virtio2: [vda] 2097152 512-byte logical blocks (1.07 GB/1.00 GiB)\n[   10.887195] GPT:Primary header thinks Alt. header is not at the end of the disk.\n[   10.887993] GPT:229375 !\u003d 2097151\n[   10.888477] GPT:Alternate GPT header not at the end of the disk.\n[   10.889020] GPT:229375 !\u003d 2097151\n[   10.889368] GPT: Use GNU Parted to correct GPT errors.\n[   11.602868] virtio_gpu virtio0: [drm] drm_plane_enable_fb_damage_clips() not called\n```","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"a50415949b7ed304e709044daf3931bc1dcd0c9d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"39792f1a_c951b242","updated":"2023-06-07 14:14:28.000000000","message":"Sorry, I thought the indent thing was still pending from reading just the email notifications.","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f8348032ccf122758f828e92bf57d22f2bd01b06","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"00b323c2_8e494fc8","updated":"2023-06-27 04:30:35.000000000","message":"recheck ceph job workaround has been merged so it should pass now","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"02f7a93b6a4993a20f5ab07cbe037c5c2d761624","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"165ceb3a_86c6e780","updated":"2023-07-20 14:19:13.000000000","message":"recheck nova-next ssh timeout","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"354369be2d429b352dd6f13cc640d9fb05245757","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"136bdc96_0beac3c5","updated":"2023-10-06 18:39:58.000000000","message":"recheck results gone but gate is much more stable now","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"403d549ad1bc141c58477be2c5fcfec0abca56be","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"997c1bb3_081bc8f8","updated":"2023-10-09 14:24:52.000000000","message":"recheck several failures, but at least one was a guest kernel crash. None should be related to the change.","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"2cae2defd0ed6e4dcc358a0584a709d360b13d89","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"db50ff98_b6c3877d","updated":"2023-07-24 09:15:56.000000000","message":"recheck tempest.lib.exceptions.InvalidParam: Invalid Parameter passed: When validation.connect_method equals floating, validation_resources cannot be None\n\nThis has now been fixed nova-lvm","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"30834631a05d39d37960d0be6b51efe9d31b334d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9325b877_fb118a4a","updated":"2023-07-30 06:29:23.000000000","message":"recheck timeout","commit_id":"2c4421568ea62e66257b55c08092de3e0303fb0a"}],"nova/tests/functional/libvirt/test_power_manage.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"330d4085b5159840d770ea70d5a15e275dd87d5d","unresolved":true,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"class PowerManagementTestsGovernorNotSupported(PowerManagementTestsBase):"},{"line_number":225,"context_line":"    \"\"\"Test suite for speific governor usage (same 10-core host)\"\"\""},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def setUp(self):"},{"line_number":228,"context_line":"        super(PowerManagementTestsGovernorNotSupported, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"8db1fa70_c1de16bf","line":225,"updated":"2023-06-07 09:04:34.000000000","message":"nic: specific","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ce93db9dc1a175e5b13bd72a9a09485127da62b0","unresolved":false,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"class PowerManagementTestsGovernorNotSupported(PowerManagementTestsBase):"},{"line_number":225,"context_line":"    \"\"\"Test suite for speific governor usage (same 10-core host)\"\"\""},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"    def setUp(self):"},{"line_number":228,"context_line":"        super(PowerManagementTestsGovernorNotSupported, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"bbc769ec_fb96ad25","line":225,"in_reply_to":"8db1fa70_c1de16bf","updated":"2023-06-07 09:49:53.000000000","message":"Done","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"330d4085b5159840d770ea70d5a15e275dd87d5d","unresolved":true,"context_lines":[{"line_number":238,"context_line":"        self.flags(cpu_power_management_strategy\u003d\u0027cpu_state\u0027, group\u003d\u0027libvirt\u0027)"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"        self.flags(allow_resize_to_same_host\u003dTrue)"},{"line_number":241,"context_line":"        self.host_info \u003d fakelibvirt.HostInfo(cpu_nodes\u003d1, cpu_sockets\u003d1,"},{"line_number":242,"context_line":"                                         cpu_cores\u003d5, cpu_threads\u003d2)"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    def test_enabling_governor_strategy_fails(self):"},{"line_number":245,"context_line":"        self.flags(cpu_power_management_strategy\u003d\u0027governor\u0027, group\u003d\u0027libvirt\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"158db1fe_e2a756d5","line":242,"range":{"start_line":241,"start_character":0,"end_line":242,"end_character":68},"updated":"2023-06-07 09:04:34.000000000","message":"nit: strange hanging indent","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ce93db9dc1a175e5b13bd72a9a09485127da62b0","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        self.flags(cpu_power_management_strategy\u003d\u0027cpu_state\u0027, group\u003d\u0027libvirt\u0027)"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"        self.flags(allow_resize_to_same_host\u003dTrue)"},{"line_number":241,"context_line":"        self.host_info \u003d fakelibvirt.HostInfo(cpu_nodes\u003d1, cpu_sockets\u003d1,"},{"line_number":242,"context_line":"                                         cpu_cores\u003d5, cpu_threads\u003d2)"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    def test_enabling_governor_strategy_fails(self):"},{"line_number":245,"context_line":"        self.flags(cpu_power_management_strategy\u003d\u0027governor\u0027, group\u003d\u0027libvirt\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"b93a2de9_6af6e83a","line":242,"range":{"start_line":241,"start_character":0,"end_line":242,"end_character":68},"in_reply_to":"158db1fe_e2a756d5","updated":"2023-06-07 09:49:53.000000000","message":"Done","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"}],"nova/virt/libvirt/cpu/api.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"330d4085b5159840d770ea70d5a15e275dd87d5d","unresolved":true,"context_lines":[{"line_number":62,"context_line":"    @property"},{"line_number":63,"context_line":"    def governor(self) -\u003e ty.Optional[str]:"},{"line_number":64,"context_line":"        try:"},{"line_number":65,"context_line":"            return core.get_governor(self.ident)"},{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"}],"source_content_type":"text/x-python","patch_set":3,"id":"bc1e0adc_052d98db","line":65,"updated":"2023-06-07 09:04:34.000000000","message":"The get_governor that raises actually called from two places. The other place is `nova.virt.libvirt.cpu.core.set_governor` where this exception is not handled.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ce93db9dc1a175e5b13bd72a9a09485127da62b0","unresolved":true,"context_lines":[{"line_number":62,"context_line":"    @property"},{"line_number":63,"context_line":"    def governor(self) -\u003e ty.Optional[str]:"},{"line_number":64,"context_line":"        try:"},{"line_number":65,"context_line":"            return core.get_governor(self.ident)"},{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"}],"source_content_type":"text/x-python","patch_set":3,"id":"77d3105b_d00ad67c","line":65,"in_reply_to":"bc1e0adc_052d98db","updated":"2023-06-07 09:49:53.000000000","message":"Correct, and we intentionally want to explode with FileNotFound if some client wants to set the governor on a platform that doesn\u0027t support it.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"988f69e60446df0fe52c3d1d3e2afd6f386083a0","unresolved":false,"context_lines":[{"line_number":62,"context_line":"    @property"},{"line_number":63,"context_line":"    def governor(self) -\u003e ty.Optional[str]:"},{"line_number":64,"context_line":"        try:"},{"line_number":65,"context_line":"            return core.get_governor(self.ident)"},{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"}],"source_content_type":"text/x-python","patch_set":3,"id":"eb838f02_3d2a60b6","line":65,"in_reply_to":"bc1e0adc_052d98db","updated":"2023-06-07 09:43:51.000000000","message":"I discussed with Sylvain over IRC. It is intentional to let set_governor raise. That is called during init_host via power_down_all_dedicated_cpus so that will prevent nova-compute startup failure if governor is requested in the config but unavailable on the hypervisor.\n\nIn the other hand governor property is used only in validating the actual governors across the pcpus to detect divergent hypervisor config. So here it is OK to return None if no governor is available.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"41ccb64b3e918e892caf66ab877944d26ba63cc8","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"e48c72a2_86c59169","line":69,"updated":"2023-06-06 15:26:56.000000000","message":"Wouldn\u0027t it be better to just return a string of \"none\" here? I think whoever is calling this is mostly using it to see \"is this the governor (string) that I want to be set right now?\". Comparing their string to None might be fine, but it just seems like \u0027none\u0027 or \u0027\u0027 would be a more consistent interface for this.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ce93db9dc1a175e5b13bd72a9a09485127da62b0","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"b8d1d94d_5b893c0c","line":69,"in_reply_to":"00bbadd8_de3da7df","updated":"2023-06-07 09:49:53.000000000","message":"\u003e Hm. @Sylvain, where does nova code check this None return value?\n\nWe have an UT that covers this \nhttps://review.opendev.org/c/openstack/nova/+/885352/3/nova/tests/unit/virt/libvirt/cpu/test_api.py#64\n\nand we also have a functest that checks that governors can\u0027t be set if it\u0027s supported by the platform :\nhttps://review.opendev.org/c/openstack/nova/+/885352/3/nova/tests/functional/libvirt/test_power_manage.py#244\n\n\u003e Wouldn\u0027t it be better to just return a string of \"none\" here?\n\nGood question, I personnally think that None is a better understanding of the fact that the OS platform doesn\u0027t support it, while \u0027none\u0027 could tell \u0027the platform supports the fact that you don\u0027t want to use governors\u0027","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"988f69e60446df0fe52c3d1d3e2afd6f386083a0","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"f9c33dcb_5273806e","line":69,"in_reply_to":"00bbadd8_de3da7df","updated":"2023-06-07 09:43:51.000000000","message":"Sylvain answered my question.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"7951a50d5cbc46026a038f93b5f1fd1420c4a62d","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"6834346b_68507c0b","line":69,"in_reply_to":"13c79af7_67d8332d","updated":"2023-06-07 13:24:41.000000000","message":"Well the empty string would be a reasonable \"can\u0027t be a governor\" string too. But yeah, it\u0027s fine it just feels like this should always be a string, in case someone did core.governor.lower() expecting it to always be a string since they\u0027ve never thought about a system without a governor (like sylvain on this until he tried to demo it :))","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"462a9ebb13f8e18ed62bb0d2f020689ed38d84d1","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"a51fb193_e08fe0de","line":69,"in_reply_to":"6834346b_68507c0b","updated":"2023-06-07 13:39:30.000000000","message":"i would be ok with empty string i just dont really like a sitring containing none","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"af8b83a2e8f81413ecb1379bb532f823dd670191","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"a759d742_adf70313","line":69,"in_reply_to":"a51fb193_e08fe0de","updated":"2023-06-07 13:41:47.000000000","message":"i still prefer python none but i would prefer anythign that can be directly converted too bool via an \"if\" or \"if governer is not None\"\n\n\ni did not want use to see soemthing like if governer !\u003d \"none\":","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"01dc8eee384359630bb543fc799dfbb67cfb9f48","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"54589c8d_458032ca","line":69,"in_reply_to":"a759d742_adf70313","updated":"2023-06-07 13:48:49.000000000","message":"That\u0027s the thing, I think this is going to be used to do \"if governor !\u003d the_thing_want\" not \"if governor \u003d\u003d \u0027none\u0027\".\n\nAnyway, it\u0027s a small thing, no big deal.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4415de7373c94fb8616d9fabc698295c9e2dac3a","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"13c79af7_67d8332d","line":69,"in_reply_to":"b8d1d94d_5b893c0c","updated":"2023-06-07 11:03:57.000000000","message":"i agree with using a value outside the valid set i.e. the None object rather then a string for signalling that the govoners are not supported.\n\nwhile its unlikely that a govonor called \"none\" will be added i think its still cleaner to not use a stirng here.","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"330d4085b5159840d770ea70d5a15e275dd87d5d","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        # NOTE(sbauza): cpufreq/scaling_governor is not enabled for some OS"},{"line_number":67,"context_line":"        # platforms."},{"line_number":68,"context_line":"        except exception.FileNotFound:"},{"line_number":69,"context_line":"            return None"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def set_high_governor(self) -\u003e None:"},{"line_number":72,"context_line":"        core.set_governor(self.ident, CONF.libvirt.cpu_power_governor_high)"}],"source_content_type":"text/x-python","patch_set":3,"id":"00bbadd8_de3da7df","line":69,"in_reply_to":"e48c72a2_86c59169","updated":"2023-06-07 09:04:34.000000000","message":"Hm. @Sylvain, where does nova code check this None return value?","commit_id":"5661a550f01c21e354bfc49e446b4164092a16cc"}]}
