)]}'
{"doc/source/devref/usage.rst":[{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"da37d5d346a1cc1135819d3ea585558f7e44a490","unresolved":false,"context_lines":[{"line_number":118,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"},{"line_number":119,"context_line":"| vnic_vf_capacity \u003d None          | SRIOV | (Float) Value between 0.0000 and 1.0000 indicating the |"},{"line_number":120,"context_line":"|                                  |       | minimum guaranteed capacity of the VFs backing the     |"},{"line_number":121,"context_line":"|                                  |       | SR-IOV vNIC.  Must be a multiple of each physical      |"},{"line_number":122,"context_line":"|                                  |       | port\u0027s minimum capacity granularity, or the binding    |"},{"line_number":123,"context_line":"|                                  |       | will fail.  If unspecified, the platform defaults      |"},{"line_number":124,"context_line":"|                                  |       | the capacity for each VF to its backing physical       |"},{"line_number":125,"context_line":"|                                  |       | port\u0027s minimum capacity granularity.                   |"},{"line_number":126,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa7ab95a_cf26fb67","line":123,"range":{"start_line":121,"start_character":59,"end_line":123,"end_character":57},"updated":"2016-08-26 13:59:08.000000000","message":"I would have assumed we\u0027d round to the right level.\n\nAlso, how can a user figure out what their granularities are on the system?  I think we need to at least tell them how to find this out if we\u0027re going to have a statement of failure here.\n\nWe should probably state that this is recommended to be left at the minimum value, unless there will be very few VMs on the system.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"e65c0298ab6929a859b19fa713dcd694f01945b1","unresolved":false,"context_lines":[{"line_number":118,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"},{"line_number":119,"context_line":"| vnic_vf_capacity \u003d None          | SRIOV | (Float) Value between 0.0000 and 1.0000 indicating the |"},{"line_number":120,"context_line":"|                                  |       | minimum guaranteed capacity of the VFs backing the     |"},{"line_number":121,"context_line":"|                                  |       | SR-IOV vNIC.  Must be a multiple of each physical      |"},{"line_number":122,"context_line":"|                                  |       | port\u0027s minimum capacity granularity, or the binding    |"},{"line_number":123,"context_line":"|                                  |       | will fail.  If unspecified, the platform defaults      |"},{"line_number":124,"context_line":"|                                  |       | the capacity for each VF to its backing physical       |"},{"line_number":125,"context_line":"|                                  |       | port\u0027s minimum capacity granularity.                   |"},{"line_number":126,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa7ab95a_d2994270","line":123,"range":{"start_line":121,"start_character":59,"end_line":123,"end_character":57},"in_reply_to":"fa7ab95a_cf26fb67","updated":"2016-08-26 14:34:28.000000000","message":"Rounding is not yet implemented.  Should we wait until is before documenting it?\n\nAs for \"recommended\", the considerations are WAY more complicated than the number of VMs on the system.  I don\u0027t think this level of detail is appropriate for the networking-powervm usage devref - and I wouldn\u0027t want to cram it into a table cell even if it was.  If we\u0027re not going to simply assume that the user either knows what they\u0027re doing or leaves the default alone, we should link to a separate document (likely one not tied to networking-powervm) that goes into the esoterica of SR-IOV tunables as implemented by the platform.  Perhaps seroyer or kriskend or csg can point us to some general public docs.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"d30221b3f49191246c9eb1ff0c6203309826e57a","unresolved":false,"context_lines":[{"line_number":118,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"},{"line_number":119,"context_line":"| vnic_vf_capacity \u003d None          | SRIOV | (Float) Value between 0.0000 and 1.0000 indicating the |"},{"line_number":120,"context_line":"|                                  |       | minimum guaranteed capacity of the VFs backing the     |"},{"line_number":121,"context_line":"|                                  |       | SR-IOV vNIC.  Must be a multiple of each physical      |"},{"line_number":122,"context_line":"|                                  |       | port\u0027s minimum capacity granularity, or the binding    |"},{"line_number":123,"context_line":"|                                  |       | will fail.  If unspecified, the platform defaults      |"},{"line_number":124,"context_line":"|                                  |       | the capacity for each VF to its backing physical       |"},{"line_number":125,"context_line":"|                                  |       | port\u0027s minimum capacity granularity.                   |"},{"line_number":126,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa7ab95a_e1e2ee02","line":123,"range":{"start_line":121,"start_character":59,"end_line":123,"end_character":57},"in_reply_to":"fa7ab95a_d2994270","updated":"2016-08-26 14:59:49.000000000","message":"Possibly. I think what we probably want to do is include an over-arching SR-IOV doc in the networking-powervm project docs.  That doc could go into this detail.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"288edc2c667bc4c6fa7a9b891ed440feeaffe674","unresolved":false,"context_lines":[{"line_number":118,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"},{"line_number":119,"context_line":"| vnic_vf_capacity \u003d None          | SRIOV | (Float) Value between 0.0000 and 1.0000 indicating the |"},{"line_number":120,"context_line":"|                                  |       | minimum guaranteed capacity of the VFs backing the     |"},{"line_number":121,"context_line":"|                                  |       | SR-IOV vNIC.  Must be a multiple of each physical      |"},{"line_number":122,"context_line":"|                                  |       | port\u0027s minimum capacity granularity, or the binding    |"},{"line_number":123,"context_line":"|                                  |       | will fail.  If unspecified, the platform defaults      |"},{"line_number":124,"context_line":"|                                  |       | the capacity for each VF to its backing physical       |"},{"line_number":125,"context_line":"|                                  |       | port\u0027s minimum capacity granularity.                   |"},{"line_number":126,"context_line":"+----------------------------------+-------+--------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa7ab95a_5ab8d2e5","line":123,"range":{"start_line":121,"start_character":59,"end_line":123,"end_character":57},"in_reply_to":"fa7ab95a_e1e2ee02","updated":"2016-08-26 20:59:30.000000000","message":"Added a link to a section in a redpaper.  It\u0027s not a huge amount of detail, but it\u0027s what we got.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"}],"networking_powervm/plugins/ibm/agent/powervm/agent_base.py":[{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"da37d5d346a1cc1135819d3ea585558f7e44a490","unresolved":false,"context_lines":[{"line_number":66,"context_line":"               help\u003d_(\u0027Redundancy level for SR-IOV backed vNIC attachments. \u0027"},{"line_number":67,"context_line":"                      \u0027Minimum value is 1.\u0027)),"},{"line_number":68,"context_line":"    cfg.FloatOpt(\u0027vnic_vf_capacity\u0027,"},{"line_number":69,"context_line":"                 help\u003d_(\"Float to 4dp between 0.0000 and 1.0000 indicating \""},{"line_number":70,"context_line":"                        \"the minimum guaranteed capacity of the VFs backing \""},{"line_number":71,"context_line":"                        \"an SR-IOV vNIC.  Must be a multiple of each physical \""},{"line_number":72,"context_line":"                        \"port\u0027s minimum capacity granularity.\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_6fefafe8","line":69,"range":{"start_line":69,"start_character":34,"end_line":69,"end_character":63},"updated":"2016-08-26 13:59:08.000000000","message":"We only go to 2 dp now.  Seems like we could increase the dp later as needed?","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"e65c0298ab6929a859b19fa713dcd694f01945b1","unresolved":false,"context_lines":[{"line_number":66,"context_line":"               help\u003d_(\u0027Redundancy level for SR-IOV backed vNIC attachments. \u0027"},{"line_number":67,"context_line":"                      \u0027Minimum value is 1.\u0027)),"},{"line_number":68,"context_line":"    cfg.FloatOpt(\u0027vnic_vf_capacity\u0027,"},{"line_number":69,"context_line":"                 help\u003d_(\"Float to 4dp between 0.0000 and 1.0000 indicating \""},{"line_number":70,"context_line":"                        \"the minimum guaranteed capacity of the VFs backing \""},{"line_number":71,"context_line":"                        \"an SR-IOV vNIC.  Must be a multiple of each physical \""},{"line_number":72,"context_line":"                        \"port\u0027s minimum capacity granularity.\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_af7e17e2","line":69,"range":{"start_line":69,"start_character":34,"end_line":69,"end_character":63},"in_reply_to":"fa7ab95a_6fefafe8","updated":"2016-08-26 14:34:28.000000000","message":"The 2dp is when it\u0027s represented as a percentage (e.g. 2.00% \u003d\u003e 0.0200).  There are no cards manufactured today that *use* the decimal places, but I don\u0027t think that\u0027s a reason to restrict it in the documentation, do you?","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"288edc2c667bc4c6fa7a9b891ed440feeaffe674","unresolved":false,"context_lines":[{"line_number":66,"context_line":"               help\u003d_(\u0027Redundancy level for SR-IOV backed vNIC attachments. \u0027"},{"line_number":67,"context_line":"                      \u0027Minimum value is 1.\u0027)),"},{"line_number":68,"context_line":"    cfg.FloatOpt(\u0027vnic_vf_capacity\u0027,"},{"line_number":69,"context_line":"                 help\u003d_(\"Float to 4dp between 0.0000 and 1.0000 indicating \""},{"line_number":70,"context_line":"                        \"the minimum guaranteed capacity of the VFs backing \""},{"line_number":71,"context_line":"                        \"an SR-IOV vNIC.  Must be a multiple of each physical \""},{"line_number":72,"context_line":"                        \"port\u0027s minimum capacity granularity.\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_dac4e260","line":69,"range":{"start_line":69,"start_character":34,"end_line":69,"end_character":63},"in_reply_to":"fa7ab95a_a1946637","updated":"2016-08-26 20:59:30.000000000","message":"Done","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"d30221b3f49191246c9eb1ff0c6203309826e57a","unresolved":false,"context_lines":[{"line_number":66,"context_line":"               help\u003d_(\u0027Redundancy level for SR-IOV backed vNIC attachments. \u0027"},{"line_number":67,"context_line":"                      \u0027Minimum value is 1.\u0027)),"},{"line_number":68,"context_line":"    cfg.FloatOpt(\u0027vnic_vf_capacity\u0027,"},{"line_number":69,"context_line":"                 help\u003d_(\"Float to 4dp between 0.0000 and 1.0000 indicating \""},{"line_number":70,"context_line":"                        \"the minimum guaranteed capacity of the VFs backing \""},{"line_number":71,"context_line":"                        \"an SR-IOV vNIC.  Must be a multiple of each physical \""},{"line_number":72,"context_line":"                        \"port\u0027s minimum capacity granularity.\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_a1946637","line":69,"range":{"start_line":69,"start_character":34,"end_line":69,"end_character":63},"in_reply_to":"fa7ab95a_af7e17e2","updated":"2016-08-26 14:59:49.000000000","message":"Maybe just change it to \u0027Float up to 4dp\u0027.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"}],"networking_powervm/plugins/ml2/drivers/mech_pvm_sriov.py":[{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"da37d5d346a1cc1135819d3ea585558f7e44a490","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        try:"},{"line_number":81,"context_line":"            vif_details[\u0027capacity\u0027] \u003d float(cap)"},{"line_number":82,"context_line":"        except (TypeError, ValueError):"},{"line_number":83,"context_line":"            # cap may be None or \u0027None\u0027 at this point, depending on the source."},{"line_number":84,"context_line":"            vif_details[\u0027capacity\u0027] \u003d None"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        return vif_details"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_af945737","line":84,"range":{"start_line":83,"start_character":0,"end_line":84,"end_character":42},"updated":"2016-08-26 13:59:08.000000000","message":"I thought you said that we\u0027d make it the default minimum?  Should we fail the finding here?","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"e65c0298ab6929a859b19fa713dcd694f01945b1","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        try:"},{"line_number":81,"context_line":"            vif_details[\u0027capacity\u0027] \u003d float(cap)"},{"line_number":82,"context_line":"        except (TypeError, ValueError):"},{"line_number":83,"context_line":"            # cap may be None or \u0027None\u0027 at this point, depending on the source."},{"line_number":84,"context_line":"            vif_details[\u0027capacity\u0027] \u003d None"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        return vif_details"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_b2ccbe36","line":84,"range":{"start_line":83,"start_character":0,"end_line":84,"end_character":42},"in_reply_to":"fa7ab95a_af945737","updated":"2016-08-26 14:34:28.000000000","message":"Setting it to None allows the *platform* to default it.  (This is actually the ideal situation, because *each* VF will be defaulted to the minimum capacity granularity for its own backing port, even if they\u0027re different.)  At this level, we don\u0027t want to get in the business of discovering the min granularity for the ports and calculating a default capacity based on the lowest common factor.  Particularly since we don\u0027t know (until the plug method) what subset of available ports will actually be used.","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"},{"author":{"_account_id":8190,"name":"Drew Thorstensen (thorst)","email":"thorst@us.ibm.com","username":"thorst"},"change_message_id":"d30221b3f49191246c9eb1ff0c6203309826e57a","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        try:"},{"line_number":81,"context_line":"            vif_details[\u0027capacity\u0027] \u003d float(cap)"},{"line_number":82,"context_line":"        except (TypeError, ValueError):"},{"line_number":83,"context_line":"            # cap may be None or \u0027None\u0027 at this point, depending on the source."},{"line_number":84,"context_line":"            vif_details[\u0027capacity\u0027] \u003d None"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"        return vif_details"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_a130e657","line":84,"range":{"start_line":83,"start_character":0,"end_line":84,"end_character":42},"in_reply_to":"fa7ab95a_b2ccbe36","updated":"2016-08-26 14:59:49.000000000","message":"Right...I generally think most people will just want the minimum.  The main advantage here is that memory copy access and then load balancing when contentious.\n\nBut good deal.  None means that Nova will handle the default minimum (which means Nova will just pass None to pypowervm).","commit_id":"15408d8b898af37eae6aec033f36d6957a7dc963"}]}
