)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"de7ee99b12b62b65951a78f4330120de078347eb","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dmitrii Sutiagin \u003cdsutyagin@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-08-14 14:27:24 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement disabling KSM via flavor\u0027s extra specs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I4fd46c266910db08e9f71d52505d12f7f044bc61"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3f79a3b5_d3bd52b7","line":7,"range":{"start_line":7,"start_character":20,"end_line":7,"end_character":23},"updated":"2018-08-15 13:46:01.000000000","message":"What\u0027s KSM?\n\n(Cause before I read through the patch, I thought it was keystonemiddleware :)\n\nAlso prefer if you tag this header with \u0027libvirt:\u0027","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":15140,"name":"Dmitry Sutyagin","email":"dsutyagin@mirantis.com","username":"dsutyagin"},"change_message_id":"f016ad93ba20db64947bee71930cdb36e234b1f1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dmitrii Sutiagin \u003cdsutyagin@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-08-14 14:27:24 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement disabling KSM via flavor\u0027s extra specs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I4fd46c266910db08e9f71d52505d12f7f044bc61"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3f79a3b5_faecdabb","line":7,"range":{"start_line":7,"start_character":20,"end_line":7,"end_character":23},"in_reply_to":"3f79a3b5_d3bd52b7","updated":"2018-08-15 17:48:14.000000000","message":"Done","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"de7ee99b12b62b65951a78f4330120de078347eb","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2018-08-14 14:27:24 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement disabling KSM via flavor\u0027s extra specs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I4fd46c266910db08e9f71d52505d12f7f044bc61"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3f79a3b5_73febe6b","line":8,"updated":"2018-08-15 13:46:01.000000000","message":"Need some more words here. Why are we doing this? The doc change indicates we\u0027re addressing performance? Freeze issues in Windows VMs? Is there a bug report and/or other links you could provide?","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":15140,"name":"Dmitry Sutyagin","email":"dsutyagin@mirantis.com","username":"dsutyagin"},"change_message_id":"f016ad93ba20db64947bee71930cdb36e234b1f1","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2018-08-14 14:27:24 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement disabling KSM via flavor\u0027s extra specs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I4fd46c266910db08e9f71d52505d12f7f044bc61"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3f79a3b5_ba1982d7","line":8,"in_reply_to":"3f79a3b5_73febe6b","updated":"2018-08-15 17:48:14.000000000","message":"We got a support case at Mirantis and the solution was to disable KSM for qemu. A different approach was used (disabling via /etc/default/qemu-kvm: KSM_ENABLED\u003d0) because nova does not have this functionality, but a per-vm / per-flavor approach is better, more flexible, hence this feature commit. Performance comes from \"realtime\" flag\u0027s description, as realtime flag disables KSM as well. It\u0027s also known that KSM increases RAM operation overhead, by design, so disabling it removes such overhead, increasing RAM performance.","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"2b4837db661eb5b7dbbb47421c33bc83f0b53809","unresolved":false,"context_lines":[{"line_number":9,"context_line":"KSM stands for Kernel same-page merging, relevant to linux and qemu."},{"line_number":10,"context_line":"It is usually enabled by default in qemu, but may cause issues with specific"},{"line_number":11,"context_line":"workloads (for example freezing), so tenant admin should have an option"},{"line_number":12,"context_line":"to disable it."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I4fd46c266910db08e9f71d52505d12f7f044bc61"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_6139fdef","line":12,"updated":"2018-08-15 22:20:45.000000000","message":"Nice, thanks for this.","commit_id":"1f720b6ac1b0b0d9f853764f848d3dfae1aa41cb"}],"doc/source/user/flavors.rst":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"de7ee99b12b62b65951a78f4330120de078347eb","unresolved":false,"context_lines":[{"line_number":544,"context_line":""},{"line_number":545,"context_line":"Disable KSM"},{"line_number":546,"context_line":"  For the libvirt driver, you can request KSM to be disabled. This will add"},{"line_number":547,"context_line":"  \"\u003cnosharepages/\u003e\" into VM XML, in turn adding \"-mem-merge\u003doff\" to qemu"},{"line_number":548,"context_line":"  command line. Improves memory performance and helps resolve reported freezing"},{"line_number":549,"context_line":"  for Windows VMs."},{"line_number":550,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_33fcc66e","line":547,"range":{"start_line":547,"start_character":20,"end_line":547,"end_character":24},"updated":"2018-08-15 13:46:01.000000000","message":"into the","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"de7ee99b12b62b65951a78f4330120de078347eb","unresolved":false,"context_lines":[{"line_number":544,"context_line":""},{"line_number":545,"context_line":"Disable KSM"},{"line_number":546,"context_line":"  For the libvirt driver, you can request KSM to be disabled. This will add"},{"line_number":547,"context_line":"  \"\u003cnosharepages/\u003e\" into VM XML, in turn adding \"-mem-merge\u003doff\" to qemu"},{"line_number":548,"context_line":"  command line. Improves memory performance and helps resolve reported freezing"},{"line_number":549,"context_line":"  for Windows VMs."},{"line_number":550,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_b32d36ff","line":547,"range":{"start_line":547,"start_character":65,"end_line":547,"end_character":67},"updated":"2018-08-15 13:46:01.000000000","message":"to the","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":15140,"name":"Dmitry Sutyagin","email":"dsutyagin@mirantis.com","username":"dsutyagin"},"change_message_id":"f016ad93ba20db64947bee71930cdb36e234b1f1","unresolved":false,"context_lines":[{"line_number":544,"context_line":""},{"line_number":545,"context_line":"Disable KSM"},{"line_number":546,"context_line":"  For the libvirt driver, you can request KSM to be disabled. This will add"},{"line_number":547,"context_line":"  \"\u003cnosharepages/\u003e\" into VM XML, in turn adding \"-mem-merge\u003doff\" to qemu"},{"line_number":548,"context_line":"  command line. Improves memory performance and helps resolve reported freezing"},{"line_number":549,"context_line":"  for Windows VMs."},{"line_number":550,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_3af7b28d","line":547,"range":{"start_line":547,"start_character":20,"end_line":547,"end_character":24},"in_reply_to":"3f79a3b5_33fcc66e","updated":"2018-08-15 17:48:14.000000000","message":"Done","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":15140,"name":"Dmitry Sutyagin","email":"dsutyagin@mirantis.com","username":"dsutyagin"},"change_message_id":"f016ad93ba20db64947bee71930cdb36e234b1f1","unresolved":false,"context_lines":[{"line_number":544,"context_line":""},{"line_number":545,"context_line":"Disable KSM"},{"line_number":546,"context_line":"  For the libvirt driver, you can request KSM to be disabled. This will add"},{"line_number":547,"context_line":"  \"\u003cnosharepages/\u003e\" into VM XML, in turn adding \"-mem-merge\u003doff\" to qemu"},{"line_number":548,"context_line":"  command line. Improves memory performance and helps resolve reported freezing"},{"line_number":549,"context_line":"  for Windows VMs."},{"line_number":550,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f79a3b5_daf1de96","line":547,"range":{"start_line":547,"start_character":65,"end_line":547,"end_character":67},"in_reply_to":"3f79a3b5_b32d36ff","updated":"2018-08-15 17:48:14.000000000","message":"Done","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"}],"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"de7ee99b12b62b65951a78f4330120de078347eb","unresolved":false,"context_lines":[{"line_number":2535,"context_line":"        self.assertTrue(membacking.locked)"},{"line_number":2536,"context_line":"        self.assertFalse(membacking.sharedpages)"},{"line_number":2537,"context_line":""},{"line_number":2538,"context_line":"    def test_get_guest_memory_backing_config_ksm_disabled(self):"},{"line_number":2539,"context_line":"        flavor \u003d {\"extra_specs\": {"},{"line_number":2540,"context_line":"            \"hw:ksm_disabled\": \"yes\","},{"line_number":2541,"context_line":"        }}"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_13498ab5","line":2538,"updated":"2018-08-15 13:46:01.000000000","message":"do we need to validate the resulting XML and/or qemu command line?","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"},{"author":{"_account_id":15140,"name":"Dmitry Sutyagin","email":"dsutyagin@mirantis.com","username":"dsutyagin"},"change_message_id":"f016ad93ba20db64947bee71930cdb36e234b1f1","unresolved":false,"context_lines":[{"line_number":2535,"context_line":"        self.assertTrue(membacking.locked)"},{"line_number":2536,"context_line":"        self.assertFalse(membacking.sharedpages)"},{"line_number":2537,"context_line":""},{"line_number":2538,"context_line":"    def test_get_guest_memory_backing_config_ksm_disabled(self):"},{"line_number":2539,"context_line":"        flavor \u003d {\"extra_specs\": {"},{"line_number":2540,"context_line":"            \"hw:ksm_disabled\": \"yes\","},{"line_number":2541,"context_line":"        }}"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_dad8fe1e","line":2538,"in_reply_to":"3f79a3b5_13498ab5","updated":"2018-08-15 17:48:14.000000000","message":"I rely on the previous test case being reasonable, which seems to assume that membacking.sharedpages translates to correct XML via libvirt\u0027s driver. So I would say no, as long as the previous test is also correct.","commit_id":"2c9b9f4d38f594fc3c34ced9ccc78c196d268f22"}]}
