)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d9fdaf12c545f99c05ff683016e695666467f3ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ead5f7ca_d090d91d","updated":"2025-01-30 19:42:02.000000000","message":"these are correctly placed in teh compute namespace to indicate they are capabilities of the virtualisation software. i.e. feature the hypervisor can emulate rather then feature of the underlying hardware.\n\nthey follow the same nameing schema as the traits for the vif adn graphics models\n\nhttps://github.com/openstack/os-traits/blob/master/os_traits/compute/graphics.py\nthat we have today\nhttps://github.com/openstack/os-traits/blob/master/os_traits/compute/net.py\n\nthey are alos related to an approved spec/feature planned for this cycle.\n\nso this all looks good to me.","commit_id":"8ccd036f1cea78b15fa17611e2769e5846390118"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"2fccec4d1bef8ded055ffe2f91b246e93cf97401","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c50c4d1d_4debefcf","updated":"2025-01-31 01:36:59.000000000","message":"+1 while other provide input on None\n\ni am still happy with the current propsoed triats","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7b26790e0c83048d98f13106649362e40153c93d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"086fdfe7_b7dcc90a","updated":"2025-01-30 20:22:16.000000000","message":"A couple of questions inline with the main one being regarding whether we should have MODEL_NONE as an option for USB.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"0b901a327a3990582c8a1dad64288a512a9ba5e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a1cc9e0a_23be29d0","updated":"2025-04-03 15:11:25.000000000","message":"Looks OK to me, thank you","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec8a200d86ba4b54b8c3bd82ed1e1154da33280a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f46dc5c0_ceeb48f7","updated":"2025-04-03 13:51:19.000000000","message":"Will defer +A to melwitt","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"f0cc49fe8a50dedc3114fc77df8814e92b8f8715","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3c0b9254_cc5a0e7f","updated":"2025-04-01 14:12:12.000000000","message":"looks reasonable. Holding +A for @melwittt@gmail.com to check back","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"0b901a327a3990582c8a1dad64288a512a9ba5e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"51326e3e_b8a69b0d","in_reply_to":"3c0b9254_cc5a0e7f","updated":"2025-04-03 15:11:25.000000000","message":"Sorry for the delayed response, I had read this and then forgot 😑","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"}],"os_traits/compute/sound.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7b26790e0c83048d98f13106649362e40153c93d","unresolved":true,"context_lines":[{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"TRAITS \u003d ["},{"line_number":16,"context_line":"    # Traits corresponding to the allowed values of \"hw_sound_model\""},{"line_number":17,"context_line":"    # image metadata property. These are used by the nova libvirt driver and"},{"line_number":18,"context_line":"    # are listed at https://libvirt.org/formatdomain.html#sound-devices"},{"line_number":19,"context_line":"    \u0027MODEL_SB16\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"ad8cac76_1c769983","line":16,"range":{"start_line":16,"start_character":53,"end_line":16,"end_character":67},"updated":"2025-01-30 20:22:16.000000000","message":"I was going to ask \"why aren\u0027t these proposed under hw/\" but then saw this is consistent with compute/graphics.py.\n\nNot sure what is the criteria for what goes under hw/ then.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"01c79c4156331eb7abfd268f97abbca8782bfa59","unresolved":true,"context_lines":[{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"TRAITS \u003d ["},{"line_number":16,"context_line":"    # Traits corresponding to the allowed values of \"hw_sound_model\""},{"line_number":17,"context_line":"    # image metadata property. These are used by the nova libvirt driver and"},{"line_number":18,"context_line":"    # are listed at https://libvirt.org/formatdomain.html#sound-devices"},{"line_number":19,"context_line":"    \u0027MODEL_SB16\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"a1adee28_2cee7fb3","line":16,"range":{"start_line":16,"start_character":53,"end_line":16,"end_character":67},"in_reply_to":"44f7d908_429628dc","updated":"2025-01-31 01:35:45.000000000","message":"no this is the correct place.\n\nCOMPUTE_ traits are for capablities of the hypervior/emulator\n\nHW_ traits are for capablity of the physical hardware.\n\nfor image properteis we use hw_ to denote changes to the hardware presented to the guest, that is decoupled from the convetion we have for traits.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"3ae0fcdacc039af7456d17627bea82a225cf43f5","unresolved":true,"context_lines":[{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"TRAITS \u003d ["},{"line_number":16,"context_line":"    # Traits corresponding to the allowed values of \"hw_sound_model\""},{"line_number":17,"context_line":"    # image metadata property. These are used by the nova libvirt driver and"},{"line_number":18,"context_line":"    # are listed at https://libvirt.org/formatdomain.html#sound-devices"},{"line_number":19,"context_line":"    \u0027MODEL_SB16\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"44f7d908_429628dc","line":16,"range":{"start_line":16,"start_character":53,"end_line":16,"end_character":67},"in_reply_to":"ad8cac76_1c769983","updated":"2025-01-30 23:04:14.000000000","message":"I just cargo culted the existing scheme. I\u0027m happy to move them, but assumed this was the policy.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7b26790e0c83048d98f13106649362e40153c93d","unresolved":true,"context_lines":[{"line_number":22,"context_line":"    \u0027MODEL_AC97\u0027,"},{"line_number":23,"context_line":"    \u0027MODEL_ICH6\u0027,"},{"line_number":24,"context_line":"    \u0027MODEL_ICH9\u0027,"},{"line_number":25,"context_line":"    \u0027MODEL_USB\u0027,"},{"line_number":26,"context_line":"    \u0027MODEL_VIRTIO\u0027"},{"line_number":27,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"8f53e04c_40ac0d3f","line":25,"updated":"2025-01-30 20:22:16.000000000","message":"Is `ich7` (from https://libvirt.org/formatdomain.html#sound-devices) left out of this list intentionally? I\u0027m guessing so, because it is \"bhyve only\" which is apparently the \"BSD hypervisor\" (https://bhyve.org).","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"3ae0fcdacc039af7456d17627bea82a225cf43f5","unresolved":true,"context_lines":[{"line_number":22,"context_line":"    \u0027MODEL_AC97\u0027,"},{"line_number":23,"context_line":"    \u0027MODEL_ICH6\u0027,"},{"line_number":24,"context_line":"    \u0027MODEL_ICH9\u0027,"},{"line_number":25,"context_line":"    \u0027MODEL_USB\u0027,"},{"line_number":26,"context_line":"    \u0027MODEL_VIRTIO\u0027"},{"line_number":27,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"4ff7b83c_b0c88c8f","line":25,"in_reply_to":"8f53e04c_40ac0d3f","updated":"2025-01-30 23:04:14.000000000","message":"Correct. libvirt support for ich7 is bhyve only, which is BSD\u0027s equivalent to KVM.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"}],"os_traits/compute/usb.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7b26790e0c83048d98f13106649362e40153c93d","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    # for performance and support reasons. Options are documented at"},{"line_number":20,"context_line":"    # https://libvirt.org/formatdomain.html#controllers"},{"line_number":21,"context_line":"    \u0027MODEL_QEMU_XHCI\u0027,"},{"line_number":22,"context_line":"    \u0027MODEL_NEC_XHCI\u0027"},{"line_number":23,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"05d3e76f_3190b3a5","line":22,"updated":"2025-01-30 20:22:16.000000000","message":"The libvirt doc also mentions that `model\u003d\u0027none\u0027` can be specified to explicity disable USB for the guest. Is that something we represent with traits or no?\n\nI notice it is part of the list for graphics:\n\nhttps://github.com/openstack/os-traits/blob/1b608ff60a9e6fbdc05453605d19e770c6e087ba/os_traits/compute/graphics.py#L22","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"01c79c4156331eb7abfd268f97abbca8782bfa59","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    # for performance and support reasons. Options are documented at"},{"line_number":20,"context_line":"    # https://libvirt.org/formatdomain.html#controllers"},{"line_number":21,"context_line":"    \u0027MODEL_QEMU_XHCI\u0027,"},{"line_number":22,"context_line":"    \u0027MODEL_NEC_XHCI\u0027"},{"line_number":23,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"d1bc4c99_1b0a4a62","line":22,"in_reply_to":"00044fd4_406e025c","updated":"2025-01-31 01:35:45.000000000","message":"we cant remove traits once we add them. so unless your adding supprot os that requesting model None ensure that tere are no usb contoler i think we shoudl defer NONE until we need it.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"3ae0fcdacc039af7456d17627bea82a225cf43f5","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    # for performance and support reasons. Options are documented at"},{"line_number":20,"context_line":"    # https://libvirt.org/formatdomain.html#controllers"},{"line_number":21,"context_line":"    \u0027MODEL_QEMU_XHCI\u0027,"},{"line_number":22,"context_line":"    \u0027MODEL_NEC_XHCI\u0027"},{"line_number":23,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"00044fd4_406e025c","line":22,"in_reply_to":"05d3e76f_3190b3a5","updated":"2025-01-30 23:04:14.000000000","message":"So, to my understanding traits are mostly meant to cover things which _might_not_ be present on all compute nodes? Given all the versions of libvirt we support allow for turning off the usb bus it therefore probably doesn\u0027t need to be a trait?\n\n(I think this argument could apply to some of the models of sound card too though, so I guess I am open to advice here).","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec8a200d86ba4b54b8c3bd82ed1e1154da33280a","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    # for performance and support reasons. Options are documented at"},{"line_number":20,"context_line":"    # https://libvirt.org/formatdomain.html#controllers"},{"line_number":21,"context_line":"    \u0027MODEL_QEMU_XHCI\u0027,"},{"line_number":22,"context_line":"    \u0027MODEL_NEC_XHCI\u0027"},{"line_number":23,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"55a30a77_1eec7931","line":22,"in_reply_to":"d1bc4c99_1b0a4a62","updated":"2025-04-03 13:51:19.000000000","message":"Also, it\u0027s kinda weird to advertise \"this compute node can ... NOT configure USB for you\". I would expect that\u0027s probably a relatively universal thing (especially for USB), but it also seems like an odd thing to advertise on a compute node. I suppose if we merge a hypervisor driver that doesn\u0027t support not giving USB to a guest, and we want people to be able to request that, *and* that hypervisor could be deployed alongside others that do... then we could add that trait. It would feel a bit strange for that to enter into the scheduling attribute domain (which is what traits are supposed to be), but I say cross that bridge when we come to it.","commit_id":"06435824dcd645bf6136453d491f4746e78c3f00"}]}
